From b70f7f57bada0b1ad4d1d15689b09ef09e0834ba Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sat, 8 Dec 2012 15:18:45 +1100 Subject: [PATCH] AP_Compass: restore low speed change on register read failure --- libraries/AP_Compass/AP_Compass_HMC5843.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libraries/AP_Compass/AP_Compass_HMC5843.cpp b/libraries/AP_Compass/AP_Compass_HMC5843.cpp index d0f8794bb5..6b85f4eb88 100644 --- a/libraries/AP_Compass/AP_Compass_HMC5843.cpp +++ b/libraries/AP_Compass/AP_Compass_HMC5843.cpp @@ -73,6 +73,9 @@ bool AP_Compass_HMC5843::read_raw() uint8_t buff[6]; if (hal.i2c->readRegisters(COMPASS_ADDRESS, 0x03, 6, buff) != 0) { + if (healthy) { + hal.i2c->setHighSpeed(false); + } healthy = false; return false; }