Here3 with can bus GPS_TYPE set makes gps2 on uart disappear

If autopilot is booted when GPS_TYPE and GPS_TYPE2 = 1, autopilot does not find Here3 in CAN, but GPS2 with uart works ok.
If now GPS_TYPE is set to 9, both GPS’s start to work ok. This does not help though if autopilot is booted, because after that, only Here3 GPS is operating. In that state after autopilot boot GPS2 cannot be operated by any paramater change. Only way to make it work is to set both GPS_TYPE’s automatic=1, and rebooting.

It looks like after both GPS’s are working ok, the automatic type setting can be made active also for Here3 (gps1). This helps to keep GPS2 reachable after next reboot, but requires always the GPS_TYPE2 parameter temporary change to 9 = can-mode.

Here is link to same problem in Arducopter. Don’t know if it is fixed there or not. Suggested fix using BRD_BOOT_DELAY does not work.
https://discuss.ardupilot.org/t/unable-to-see-gps2-when-primary-gps-is-using-can/65242

The case is different in case of Cube Black and Cube Orange. For black my earlier fixes are valid, but in case of Cube Orange, the SERIAL3_PROTOCOL must be set to any other value than 5 (GPS). I used value 2. Then, additionally you need to set GPS_TYPE = 9 and GPS_TYPE2 = 1. BRD_BOOT_DELAY to 3000. And of course also enable CAN buses.
With these parameter changes, Here3 works with Cube Orange. It seems strange that the 2 Cubes need different fixes to get Here3 work with a serial GNSS connected to GPS2.

1 Like