diff --git a/libraries/AP_NavEKF/AP_NavEKF.cpp b/libraries/AP_NavEKF/AP_NavEKF.cpp index 931d20a17c939ef7e94596341c7c7fa2c0d089a6..88c56e3645907e2274d77799cf7abc89bfc75276 100644 --- a/libraries/AP_NavEKF/AP_NavEKF.cpp +++ b/libraries/AP_NavEKF/AP_NavEKF.cpp @@ -608,6 +608,9 @@ void NavEKF::UpdateFilter() ResetPosition(); ResetHeight(); StoreStatesReset(); + // clear the magnetometer failed status as the failure may have been + // caused by external field disturbances associated with pre-flight activities + magFailed = false; calcQuatAndFieldStates(_ahrs->roll, _ahrs->pitch); prevStaticMode = staticMode; }