From 1f9a3dd1bd958f80ca429fbf4ebc6d4098f59653 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 4 Dec 2017 17:51:52 +1100 Subject: [PATCH] AP_AHRS: improved init attitdue in DCM this tries harder to get a good IMU sample for the initial attitude estimate. I have seen cases of bad IMU data on startup and this makes it much less likely --- libraries/AP_AHRS/AP_AHRS_DCM.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/AP_AHRS/AP_AHRS_DCM.cpp b/libraries/AP_AHRS/AP_AHRS_DCM.cpp index b5f6ecfa82..a8e0a2b05b 100644 --- a/libraries/AP_AHRS/AP_AHRS_DCM.cpp +++ b/libraries/AP_AHRS/AP_AHRS_DCM.cpp @@ -160,7 +160,7 @@ AP_AHRS_DCM::reset(bool recover_eulers) initAccVec = _ins.get_accel(); // the first vector may be invalid as the filter starts up - while (initAccVec.length() <= 5.0f && counter++ < 10) { + while ((initAccVec.length() < 9.0f || initAccVec.length() > 11) && counter++ < 20) { _ins.wait_for_sample(); _ins.update(); initAccVec = _ins.get_accel();