From 749f88b62b57f5e855ac3434351d1abee7317eba Mon Sep 17 00:00:00 2001 From: "murata,katsutoshi" Date: Wed, 27 Mar 2024 08:50:57 +0900 Subject: [PATCH] ekf2: gps control lazily check yaw_failure() only after in_air --- src/modules/ekf2/EKF/gps_control.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/ekf2/EKF/gps_control.cpp b/src/modules/ekf2/EKF/gps_control.cpp index 03cf0a326f..8e5e0bff91 100644 --- a/src/modules/ekf2/EKF/gps_control.cpp +++ b/src/modules/ekf2/EKF/gps_control.cpp @@ -123,8 +123,8 @@ void Ekf::controlGpsFusion(const imuSample &imu_delayed) bool do_vel_pos_reset = shouldResetGpsFusion(); - if (isYawFailure() - && _control_status.flags.in_air + if (_control_status.flags.in_air + && isYawFailure() && isTimedOut(_time_last_hor_vel_fuse, _params.EKFGSF_reset_delay) && (_time_last_hor_vel_fuse > _time_last_on_ground_us)) { do_vel_pos_reset = tryYawEmergencyReset();