I’m debugging Rover 4.0 + Ardusimple in an attempt to get GPS yaw working. My configuration is Holybro Pixhawk 4 (https://www.getfpv.com/pixhawk-4-autopilot-and-neo-m8n-gps-pm07-combo.html) plus Ardusimple simpleRTK2B+simpleRTK2Blite (https://www.ardusimple.com/simplertk2heading-hookup-guide/). Companion computer is RPi running mavproxy (using the ntrip module) .
On the Pixhawk4:
• USB port connected to the companion computer
• TELEM1 connected to the sik radio
• TELEM2 connected to the ardusimple bottom board’s Pixhawk plug
• “UART & I2C B” connected to the ardusimple top board’s Pixhawk plug
• “GPS MODULE” connected to the gps/compass module that came with the Pixhawk
I followed instructions here to set params https://github.com/ArduPilot/ardupilot/pull/12844#issue-341741515
Mission planner version 1.3.70.7418.14618
Version of ardurover at startup is:
4/30/2020 7:48:24 PM : fmuv5 001C003C 32375118 32363435
4/30/2020 7:48:24 PM : ChibiOS: 0997003f
4/30/2020 7:48:24 PM : ArduRover V4.0.0 (0e52bafa)
On the mission planner screen I see GPS: rtk Float and GPS2: 3D dgps I presume this is because the system is still using the GPS+compass module that came with the pixhawk as GPS2. So as a quick test (see ** below) I unplugged that GPS module from the Pixhawk and restarted with just the 2 Ardusimple GPSs connected in the ports listed above. Upon restart I see “EKF3 waiting for GPS config data” message repeated.
4/30/2020 8:03:21 PM : EKF3 waiting for GPS config data
4/30/2020 8:03:21 PM : EKF3 waiting for GPS config data
4/30/2020 8:03:21 PM : EKF2 IMU1 tilt alignment complete
4/30/2020 8:03:21 PM : EKF2 IMU0 tilt alignment complete
4/30/2020 8:03:15 PM : EKF2 IMU1 initial yaw alignment complete
4/30/2020 8:03:15 PM : EKF2 IMU0 initial yaw alignment complete
4/30/2020 8:03:14 PM : Ready to drive
4/30/2020 8:03:13 PM : Beginning INS calibration. Do not move vehicle
4/30/2020 8:03:13 PM : <startup_ground> Ground start
4/30/2020 8:03:13 PM : Barometer 1 calibration complete
I think the first thing I need to solve is to tell Ardurover to look on Pixhawk port “UART & I2C B” for the second GPS by setting SERIALx_PROTOCOL. This page is helpful to know which ports are which on the Pixhawk 4.
So I tried changing my SERIALn_PROTOCOL to be as follows, thinking that SERIAL3 corresponds to the “GPS Module” plug, and SERIAL4 corresponds to the “UART & I2CB” plug. But I got the same results.
SERIAL0_PROTOCOL=2
SERIAL1_PROTOCOL=1
SERIAL2_PROTOCOL=5
SERIAL3_PROTOCOL=-1
SERIAL4_PROTOCOL=5
SERIAL5_PROTOCOL=-1
SERIAL6_PROTOCOL=-1
SERIAL7_PROTOCOL=2
(** Of course I would rather not have to physically unplug the GPS+Compass module from the Pixhawk4 because it also has a failsafe switch on it which I would like to continue to utilize. )
I would very much appreciate any guidance! Thank you