diff --git a/src/modules/commander/Commander.cpp b/src/modules/commander/Commander.cpp index 94792a3338..bf0fae71ed 100644 --- a/src/modules/commander/Commander.cpp +++ b/src/modules/commander/Commander.cpp @@ -2223,14 +2223,14 @@ Commander::run() !_flight_termination_triggered && !status_flags.circuit_breaker_flight_termination_disabled) { - if (status.failure_detector_status != 0) { + if (_failure_detector.is_failure()) { armed.force_failsafe = true; status_changed = true; _flight_termination_triggered = true; - mavlink_log_critical(&mavlink_log_pub, "Attitude failure detected: force failsafe"); + mavlink_log_critical(&mavlink_log_pub, "Critical failure detected: terminate flight"); set_tune_override(TONE_PARACHUTE_RELEASE_TUNE); } } diff --git a/src/modules/commander/failure_detector/FailureDetector.hpp b/src/modules/commander/failure_detector/FailureDetector.hpp index 85f91891fd..0b8cb9c254 100644 --- a/src/modules/commander/failure_detector/FailureDetector.hpp +++ b/src/modules/commander/failure_detector/FailureDetector.hpp @@ -70,7 +70,8 @@ public: bool update(); - uint8_t get_status() const {return _status;} + uint8_t get_status() const { return _status; } + bool is_failure() const { return (_status == FAILURE_NONE) ? false : true; } private: