Open dmagree opened 2 years ago
I have encountered just the same problem today using plane 4.5.3 I would suggest to reconsider this issue, it is easy change ArduPlane/system.cpp L355
} else if (g.gcs_heartbeat_fs_enabled == GCS_FAILSAFE_HB_AUTO && (control_mode == &mode_auto **|| control_mode == &mode_guided)** && gcs_last_seen_ms != 0 && (tnow - gcs_last_seen_ms) > g.fs_timeout_long*1000) { failsafe_long_on_event(FAILSAFE_GCS, ModeReason::GCS_FAILSAFE);
Should also consider another more sophisticated approach such as choosing the modes that would trigger FS, as mentioned above
There is currently no way to enable the GCS failsafe only for autonomous and GCS controlled modes, specifically AUTO, GUIDED, and LOITER. There is an option to enable for AUTO only (GCS_FS_ENABL = 3), but if an operator is primarily controlling via mouse clicks in guided and loses contact the vehicle would not return. Alternatively, turning on in all cases could interfere with an RC recovery in the case of inconsistent comms. This behavior is available in Copter via the FS_OPTIONS parameter
I would suggest we expand the GCS_FS_ENABL = 3 to include other modes, or further untangle the RC and GCS failsafes.
Platform [ ] All [ ] AntennaTracker [ ] Copter [ x] Plane [ ] Rover [ ] Submarine