Anything I need to know? If I set failsafe to happen when connection to GS is lost, will it work? How should I test it?
If you’re using the RC system in openhd, Ardupilot will treat it as a radio failsafe rather than a GCS failsafe if the control is interrupted. There’s a special case in the Ardupilot code for it.
To test it, move some switches around and make sure the flight controller is responding, then disconnect the transmitter USB cable from the ground station. It should quickly notice and show a radio failsafe (if you’re using QOpenHD you’ll see a message in the lower left corner, in Mission Planner it should show a red warning in the HUD, same for the older OSD in openhd).
Just to document our conversation from chat: the radio failsafe does not trigger when the link fails or the joystick is removed, in testing. GS failsafe does trigger when communication with the ground pi is lost. GS failsafe is the way to go
Thanks for looking into it
For anyone reading along, the OpenHD RC system sends Mavlink RC_OVERRIDE messages to the flight controller.
The Ardupilot code has several conflicting comments about what happens when RC_OVERRIDE message stop, but it treats them as heartbeats as far as failsafe is concerned, so if RC_OVERRIDE messages stop it is as if the ground station heartbeats stopped, which triggers GCS failsafe.