I am working on UAVCAN GPS for drones. It sends uavcan gnss messages (aux and fix) at 5Hz frequency. When I inspect what is going on on the bus with CAN-USB adapter (Zubax Babel), everything seems OK. I can see Cube with ArduCopter and my GPS online and sending messages.
Problem is that I only get “No Fix” and I cant read parameters, sent by GPS, in Mission planner or QGCS .
ArduCopter configuration for UAVCAN GPS is:
- GPS_TYPE = 9 (UAVCAN), GPS_TYPE2 = None
- EK_GPS_TYPE = 0
- CAN_D1_PROTOCOL = 1, CAN_D2_PROTOCOL = 1
- CAN_P1_DRIVER = First driver, CAN_P1_DRIVER = Second driver
When I tried to find out what is wrong, I found out that ArduCopter “ignores” gnss Fix messages and subscribe only to Aux messages. Subscriber for gnss Fix messages was registered successfully but it never jumps to the function handling incoming Fix messages.
At this moment I am not sure if I am missing something in AC configuration or how my GPS should properly send messages or there might be some issue with UAVCAN in ArduCopter.
Thank you for any help or ideas!