From 04bef5ccf3a82f7eab08380a79c58a2aa53a092b Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 13 Feb 2015 20:50:34 +1100 Subject: [PATCH] AP_InertialSensor: don't skip delay if we are a bit early this produces a bit more even timing --- libraries/AP_InertialSensor/AP_InertialSensor.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/libraries/AP_InertialSensor/AP_InertialSensor.cpp b/libraries/AP_InertialSensor/AP_InertialSensor.cpp index 17155715e1..a844d807b9 100644 --- a/libraries/AP_InertialSensor/AP_InertialSensor.cpp +++ b/libraries/AP_InertialSensor/AP_InertialSensor.cpp @@ -1072,9 +1072,7 @@ void AP_InertialSensor::wait_for_sample(void) if (_next_sample_usec - now <=_sample_period_usec) { // we're ahead on time, schedule next sample at expected period uint32_t wait_usec = _next_sample_usec - now; - if (wait_usec > 200) { - hal.scheduler->delay_microseconds(wait_usec); - } + hal.scheduler->delay_microseconds(wait_usec); _next_sample_usec += _sample_period_usec; } else if (now - _next_sample_usec < _sample_period_usec/8) { // we've overshot, but only by a small amount, keep on