This repo demonstrates integrating an Arduino as a companion controller for an ArduPilot-based drone.
- Reads GPS (NMEA) on Arduino
- Monitors failsafe conditions:
- Kill switch input
- Low battery threshold
- Sends MAVLink command to ArduPilot to trigger RTL (Return-To-Launch) when failsafe occurs
ArduPilot handles stabilization and flight control. The Arduino acts as an external watchdog:
- Adds custom safety logic
- Can trigger autonomous behaviors through MAVLink
arduino/companion_gps_failsafe.ino— GPS + failsafe logic + MAVLink commanddocs/wiring.md— wiring overview