diff --git a/libraries/AP_NavEKF2/AP_NavEKF2_Measurements.cpp b/libraries/AP_NavEKF2/AP_NavEKF2_Measurements.cpp index b8a2fac16d..608f0ce109 100644 --- a/libraries/AP_NavEKF2/AP_NavEKF2_Measurements.cpp +++ b/libraries/AP_NavEKF2/AP_NavEKF2_Measurements.cpp @@ -578,7 +578,7 @@ void NavEKF2_core::readGpsData() if (gpsGoodToAlign && !have_table_earth_field) { const Compass *compass = _ahrs->get_compass(); - if (compass && compass->have_scale_factor(magSelectIndex)) { + if (compass && compass->have_scale_factor(magSelectIndex) && compass->auto_declination_enabled()) { table_earth_field_ga = AP_Declination::get_earth_field_ga(gpsloc); table_declination = radians(AP_Declination::get_declination(gpsloc.lat*1.0e-7, gpsloc.lng*1.0e-7));