CAN GPS only detected if hot plugged

I’m using a Pixhawk Orange and Here3 CAN GPS. I followed the setup instructions for the Here3. The strange part is that the Here3 is not detected by the Pixhawk, unless I plug it in after the Pixhawk has booted up.

If I plug it in after powering up the Pixhawk, I quickly get a really good GPS lock and I am able to complete compass calibration and see the external compass source. If I power up the Pixhawk with the Here3 already plugged in, I get a primary compass not found error and no GPS lock. I can then unplug and replug the Here3, while keeping the Pixhawk powered, and everything works as normal.

Some additional details:

  • I have noticed that when the GPS is plugged in before power up, the blue LEDs flash a few times and turn off, before flashing a few times and turning off permanently. If I plug it in after the Pixhawk has powered up, it only flashes once.
  • I have tried powering the Pixhawk via battery, USB, and a combination of both at the same time.
  • Plugging the same GPS into an Arducopter flashed Cube Black works first time, every time.

Pixhawk Cube Orange with ADS-B Carrier board with FW 1.11.2
Here3 CAN GPS with most recent FW (1.6x from memory)

Any ideas on how to diagnose/fix this?

This will probably help you: https://discuss.cubepilot.org/t/here3-gps-needs-to-be-unplugged-and-re-pluggged-everytime-i-power-on-quadcopter-with-herelink-px4-orange-cube/5547

We worked around it by placing a wait command somewhere in the startup script.