From 2406e26ab4674debba4e4223cabb78935bb8b440 Mon Sep 17 00:00:00 2001 From: Paul Riseborough Date: Mon, 16 Mar 2015 14:30:16 -0700 Subject: [PATCH] Copter : Save EKF learned compass offsets on disarm Requires compass learning to be enabled in the compass parameters Copter: fix compass offsets patch --- ArduCopter/motors.pde | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ArduCopter/motors.pde b/ArduCopter/motors.pde index d47269250d..23f7fd8081 100644 --- a/ArduCopter/motors.pde +++ b/ArduCopter/motors.pde @@ -655,9 +655,10 @@ static void init_disarm_motors() motors.armed(false); - // save offsets if automatic offset learning is on - if (compass.learn_offsets_enabled()) { - compass.save_offsets(); + // save compass offsets learned by the EKF + Vector3f magOffsets; + if (ahrs.getMagOffsets(magOffsets)) { + compass.set_and_save_offsets(0,magOffsets); } #if AUTOTUNE_ENABLED == ENABLED