diff --git a/src/modules/ekf2/EKF2.cpp b/src/modules/ekf2/EKF2.cpp index c0dabf9a38..c2b6d36383 100644 --- a/src/modules/ekf2/EKF2.cpp +++ b/src/modules/ekf2/EKF2.cpp @@ -1413,7 +1413,7 @@ void EKF2::UpdateMagCalibration(const hrt_abstime ×tamp) _ekf.get_filter_fault_status(&fault_status.value); // Check if conditions are OK for learning of magnetometer bias values - if (!_landed && _armed && + if (control_status.flags.in_air && _armed && !fault_status.value && // there are no filter faults control_status.flags.mag_3D) { // the EKF is operating in the correct mode diff --git a/src/modules/ekf2/EKF2.hpp b/src/modules/ekf2/EKF2.hpp index c6a1fe1bc7..0b2e02ce65 100644 --- a/src/modules/ekf2/EKF2.hpp +++ b/src/modules/ekf2/EKF2.hpp @@ -227,7 +227,6 @@ private: bool _distance_sensor_selected{false}; // because we can have several distance sensor instances with different orientations bool _armed{false}; bool _standby{false}; // standby arming state - bool _landed{true}; bool _in_ground_effect{false}; uORB::PublicationMulti _ekf2_timestamps_pub{ORB_ID(ekf2_timestamps)};