What could cause USB to not work on a 2.4.8?

Story time: I keep getting “Bad Battery” errors on my Data tab on mission planner. I think it’s supposed to say, “low battery” because the battery is in fact fine and how would it know if I had high internal resistance anyway since the FC doesn’t connect to balance ports. But I digress.

Since it’s also bugging me to update to 4.5.7 I figure maybe the flashing message will go away if I put the latest firmware on it. This is where the problems start. This board is connected to the PC via a telemetry radio. It works fine and that’s how I am able to see error messages and change parameters and stuff. Speaking of:

coolparams.param (17.3 KB)

I tried to install firmware for Pixhawk 1, pixhawk 1m, pixhawk 1 bdshot, etc. I went down the list and I kept getting the same response. Mission Planner searched the com ports for 30 seconds and reported no response for each one. I figured maybe I was using one of those “power only” USB cords so I swapped to one that I know is for data, because it connects my Insta360 camera to the PC without problems. So the cord is good.

Frustrated, I tried seeing if I could even connect (forget about flashing firmware for a moment), via USB instead of the telemetry port. I cannot. The serial port dropdown in the top right corner of Mission Planner sees the Flight Controller on com5, but it doesn’t connect. I press the connect button, but it doesn’t connect.

The USB port on the computer connects fine when there’s a telemetry radio plugged into it. The USB cord I’m using works fine when there’s a camera plugged into it. The Flight Controller boots up when plugged in via USB. The Flight Controller connects fine via telemetry radio. This behaviour is identical on my Windows PC and my Ubuntu laptop. So I don’t think it’s a hardware or driver issue.

So I’m guessing I changed a setting I shouldn’t have that disables USB connections. But Serial0 has only 2 options, mavlink2 and mavlink1. Mavlink2 is the default and I haven’t changed it. That would have been too easy I guess.

I assume the Telem radio is on Serial 2, so you can set SERIAL2_PROTOCOL,2
Everything else looks OK in that regard.
In MissionPlanner ensure the connection speed is set to 115 for USB or 57 for telem radio.

You could do the driver clean (Control-F “driver clean”), reboot and driver package install to see if that helps.

https://firmware.ardupilot.org/Tools/MissionPlanner/driver.msi

For the bad battery message, first tell what battery you have - 3 cell LiPo 2200mAh ?
ensure the voltage is correctly calibrated.
Does the HUD voltage exactly match the measured battery voltage?
Do you see anything strange in the HUD like a negative current reading?