QGC and PX4 will not acknowledge each other

Hello,

Recently we bought several PX4 Black Cubes for a Generic Quadrotor X and they will not connect to Q-Ground Control right out of the box. We haven’t changed any settings because we can’t even access them. Has PX4 moved away from supporting Q-Ground Control? We cannot connect by USB or telemetry with and without external power source. We swapped out the SD card with a known working quad of the same frame and system and no luck. We’ve gone to the deepest level of the code and nothing, we originally thought it was simply missing the boot loader. We managed to upload a “custom firmware” of the px4_fmu-v3_default.px4 using Mission Planner and now we can connect to QGC like normal but cannot change firmware. When plugged in to upgrade firmware it says:


Found device: PX4 FMU V2
Error: Sync: Send command: Invalid sync response: 0xfe 0x29
Upgrade cancelled

Then it acts as if its connecting and goes to the summary screen and connects. like normal without firmware change.

Also, it will not calibrate the compass. It is a Black Cube Here 2 combination and when calibrating the compass it errors saying:


[cal] Skipped scale calibration, sensor 0
[cal] Skipped scale calibration, sensor 2
[cal] Skipped scale calibration, sensor 3
Mag1 (ID 3081) no matching uORB devid
[cal] calibration failed: mag

Hopefully its a simple fix and I’m just ignorant. Any suggestions please let me know!

-Simeon

No!

Does this even happen if you start the firmware upgrade first, and then plug in the Pixhawk? This is to make sure it’s in bootloader mode (orange LED blinking quickly).

Thanks for getting back to me Julian

Here is what’s going simultaneously on on both sides of the Cube’s lights as I plug it in to upgrade firmware.

On the side of the Cube with the MicroUSB port:

  1. Solid orange left of MicroUSB port and quickly flashing orange right of MicroUSB port (simultaneously).
  2. Solid orange left of MicroUSB port and slower flashing orange right of MircoUSB port (simultaneously).

On the side of the Cube opposite of the MicroUSB port:

  1. Flashing green until it cancels the update.
  2. Solid Green

Any ideas on what it’s trying to tell me?

That’s probably the bootloader and would be correct.

Are you flashing through a virtual machine?
Have you tried another USB port, or maybe not using a USB hub?
Have you tried another USB cable?

We have tried using another cable for USB as well as connecting via telemetry, the USB port on the carrier board, and another method using the SBUS or CONs pins. We have tried flashing through QGC on both a Windows 10 only and Linux only computer as well as Mission Planner on a Windows 10 only computer. After working on it all yesterday we have reached a point where we can get them to connect and arm on 12/14 Cubes sometimes on one Windows 10 only computer with QGC and Mission Planner. However, we need the cubes to be reliable.

Ok, so 2 have presumably a hardware problem and therefore can’t be flashed?

They are flashed but will not connect. Given our use for the PX4’s though we need them to be reliable in connecting every time and weed out the unknown issues we are having. They’re still unreliable in their connecting and we don’t know why. Soon we will be making a trip out to test fly them and see if they can even fly.

Thank you for your patience with me on this, I’m very much out of my field of expertise here lol.

I am of not much help here but just thought to share my experience. I had such connection problem with the https://docs.px4.io/en/flight_controller/pixhawk4.html if you are using the same. Holybro tech support doesnt even respond. I had tried practically everything with no luck. A new board eventually worked and since some time I do not have this issue, since I connect to the usb pins of he pixhawk board (not micro usb) and an internal usb port of my nuc.

I recently connected it through micro usb and again had the same issue. I also tried to install an old firmware and got into this issue so eventually had to revert back to the latest firmware.

Apparently something has got to do with either a hardware problem in all these designs or some cache clearing of qgc before or after upgrade (could not figure out). It also happens sometimes when you upgrade qgc. Never had any issues with telemetry though.

Indrajeet, We’ve had zero luck with tech support anywhere as well. We would transition to the USB pins but we still have the same issue. We are also using HolyBro when we use telemetry, but that’s not the main source of the issues. We have tried using the latest from PX4 and Ardupilot and it didn’t fix the connection issue. I appreciate any input you have though!

@Simeon are any of the params different on the ones that don’t connect? Have you tried to check the output on the console using a Dronecode probe?

@Simeon, I am sorry I dont have much. So far I have relied on my luck with this. It looks like unreliable hardware. And you are right, I too had less luck with tech supports, Holybro being worst.

We may have solved the problem! plugging the PX4 in while holding down the little safety switch apparently puts the Cube in boot loader mode. My co-worker found this while looking for ways to fix an issue with linking the RC receiver to the remote control. He held the button down while he plugged it in to QGC in the firmware window and it let him change the firmware like normal with no issues whatsoever. The thing powers up, arms, and throttled.

As far as I know holding down the safety button at power-on puts the IO part in bootloader mode. That could explain your problem if the IO update was consistently failing.

Could you explain more fully how you got it to work? I currently have four brand new Cube’s in our lab that are not working! All four came from the same Amazon listing. I’ve tried to hold the safety switch down as the Cube plugs in to QGroundControl, but I cannot get a connection. The only way I can get QGroundControl to connect to any of these is by manually connecting to the COM port, which isn’t allowed for firmware upgrades.

For anyone that is having this issue, I’ve found a solution. Many of these Cubes do not come with the proper firmware preinstalled. You have to do the following:

  1. Start with Pixhawk disconnected from PC.
  2. Download your firmware: https://github.com/PX4/Firmware/releases
    (Pixhawk Cube Black should use px4_fmu-v3_default.px4)
  3. Open Mission Planner (QGC doesn’t work for this!)
  4. Click install firmware.
  5. Click “Load custom firmware”, and select the firmware you downloaded. Don’t click “Ok” yet.
  6. Connect Pixhawk Cube Black, and click “Ok”.
  7. Wait for the music, then click “Ok”.

It should load the firmware, and your Cube will now be recognized by QGC by default. It will likely swap around the driver and COM port for the Pixhawk.

1 Like

@Matthew28

Yes, that is what we did and yet it still didn’t always connect every time. We have moved over to the Herelink and are no longer having the issue when connecting.