Hi all,
I’m currently building an autonomous surface vehicle using ArduPilot on a Pixhawk 6C, and I’ve run into an issue I can’t seem to solve.
Hardware:
• Pixhawk 6C flight controller
• T200 Thrusters (controlled via PWM outputs)
• BlueRobotics Basic ESCs
• M8N GPS module with built-in compass (I2C + UART)
• QGroundControl as the GCS
• ArduPilot (latest stable firmware) with Boat frame
⸻
What’s Working:
• I have solid GPS lock (fix type 3 with multiple satellites).
• I can upload and launch missions in QGC with no errors.
• The system arms successfully, and I get mission start confirmation.
•I hear the thrusters 5 beeps
⸻
What’s Not Working:
• The T200 thrusters do not respond at all when the mission starts.
• I am getting an AHRS error, and AHRS: DCM active appears on boot (EKF3 initializes after with no issues)
• I suspect a compass/yaw fusion issue might be preventing the autopilot from navigating.
⸻
Compass Situation:
• Originally, I was using the M8N GPS’s compass, which is mounted flat but facing opposite the Pixhawk’s arrow direction.
• I later disconnected the M8N compass entirely (gps still working using uart) and decided to use only the internal compass on the Pixhawk 6C.
• COMPASS_USE = 1, COMPASS_EXTERNAL = 0, and COMPASS_ORIENT = 0.
• EK3_SRC_YAW = 1 is set to use compass heading.
• Compass calibrates fine, but AHRS error remains.
⸻
Additional Notes:
• I’ve tried both with and without pre-arm checks.
• SERVO outputs are configured correctly (throttle right/left on SERVO1 and SERVO2).
• MOT_PWM_TYPE is NORMAL
• Parameters were wiped and reloaded recently to ensure a clean setup.
⸻
I would appreciate any help debugging this. I’m not sure if the issue lies in the compass setup, EKF yaw, AHRS initialization, or something else preventing output to the motors. My current suspicion is that AHRS errors are preventing the autopilot from generating attitude, and therefore motion commands.
Happy to share logs, parameters, or photos if needed. Thanks in advance!
— Abe