From 1c9dfb9b8acd7f8632c420561a883bcb1a359814 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 4 Nov 2013 13:57:06 +1100 Subject: [PATCH] AP_AHRS: prevent GPS yaw resets on compass errors when we switch from compass heading to GPS heading we don't want to trigger a sudden GPS yaw reset --- libraries/AP_AHRS/AP_AHRS_DCM.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libraries/AP_AHRS/AP_AHRS_DCM.cpp b/libraries/AP_AHRS/AP_AHRS_DCM.cpp index a48e33c686..4e8f6ec0af 100644 --- a/libraries/AP_AHRS/AP_AHRS_DCM.cpp +++ b/libraries/AP_AHRS/AP_AHRS_DCM.cpp @@ -351,6 +351,11 @@ AP_AHRS_DCM::drift_correction_yaw(void) } new_value = true; yaw_error = yaw_error_compass(); + + // also update the _gps_last_update, so if we later + // disable the compass due to significant yaw error we + // don't suddenly change yaw with a reset + _gps_last_update = _gps->last_fix_time; } } else if (_flags.fly_forward && have_gps()) { /*