diff --git a/src/modules/commander/failure_detector/FailureDetector.cpp b/src/modules/commander/failure_detector/FailureDetector.cpp index 610d84395d..49e3482b7d 100644 --- a/src/modules/commander/failure_detector/FailureDetector.cpp +++ b/src/modules/commander/failure_detector/FailureDetector.cpp @@ -77,11 +77,13 @@ FailureDetector::updateAttitudeStatus() const bool roll_status = (max_roll > 0.0f) && (fabsf(roll) > max_roll); const bool pitch_status = (max_pitch > 0.0f) && (fabsf(pitch) > max_pitch); + hrt_abstime time_now = hrt_absolute_time(); + // Update hysteresis _roll_failure_hysteresis.set_hysteresis_time_from(false, (hrt_abstime)(1e6f * _param_fd_fail_r_ttri.get())); _pitch_failure_hysteresis.set_hysteresis_time_from(false, (hrt_abstime)(1e6f * _param_fd_fail_p_ttri.get())); - _roll_failure_hysteresis.set_state_and_update(roll_status); - _pitch_failure_hysteresis.set_state_and_update(pitch_status); + _roll_failure_hysteresis.set_state_and_update(roll_status, time_now); + _pitch_failure_hysteresis.set_state_and_update(pitch_status, time_now); // Update bitmask _status &= ~(FAILURE_ROLL | FAILURE_PITCH); diff --git a/src/modules/commander/failure_detector/FailureDetector.hpp b/src/modules/commander/failure_detector/FailureDetector.hpp index 46bd6e4995..f9cdd4ce12 100644 --- a/src/modules/commander/failure_detector/FailureDetector.hpp +++ b/src/modules/commander/failure_detector/FailureDetector.hpp @@ -46,7 +46,7 @@ #include #include #include -#include +#include // subscriptions #include