EKF: Update declination fusion logic

We do not need to run declination fusion if 3-axis mag fusion is not being used.
This commit is contained in:
Paul Riseborough
2016-02-09 07:44:34 +11:00
parent 47ab5ebcdd
commit 5ea0ef39cd
+3 -3
View File
@@ -111,11 +111,11 @@ void Ekf::controlFusionModes()
}
// if we are using 3-axis magnetometer fusion, but without external aiding, then the declination needs to be fused as an observation to prevent long term heading drift
if (_control_status.flags.mag_3D && _control_status.flags.gps) {
_control_status.flags.mag_dec = false;
if (_control_status.flags.mag_3D && !_control_status.flags.gps) {
_control_status.flags.mag_dec = true;
} else {
_control_status.flags.mag_dec = true;
_control_status.flags.mag_dec = false;
}
}