aboutsummaryrefslogtreecommitdiff
path: root/src/drivers/airspeed
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2013-08-27 18:07:31 +1000
committerLorenz Meier <lm@inf.ethz.ch>2013-08-27 10:15:34 +0200
commit9c58d2c5c6ef96f9ece7f62d5f02d01d8b1e316e (patch)
tree9d80f4be57a8d8670a04b19b5ce1c4eefc52ae16 /src/drivers/airspeed
parent11257cbade5d89d3d2de8101daec11d32f7f74ce (diff)
downloadpx4-firmware-9c58d2c5c6ef96f9ece7f62d5f02d01d8b1e316e.tar.gz
px4-firmware-9c58d2c5c6ef96f9ece7f62d5f02d01d8b1e316e.tar.bz2
px4-firmware-9c58d2c5c6ef96f9ece7f62d5f02d01d8b1e316e.zip
airspeed: retry initial I2C probe 4 times
this fixes a problem with detecting a MS4525D0 at boot
Diffstat (limited to 'src/drivers/airspeed')
-rw-r--r--src/drivers/airspeed/airspeed.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/drivers/airspeed/airspeed.cpp b/src/drivers/airspeed/airspeed.cpp
index 5a8157deb..277d8249a 100644
--- a/src/drivers/airspeed/airspeed.cpp
+++ b/src/drivers/airspeed/airspeed.cpp
@@ -146,7 +146,14 @@ out:
int
Airspeed::probe()
{
- return measure();
+ /* on initial power up the device needs more than one retry
+ for detection. Once it is running then retries aren't
+ needed
+ */
+ _retries = 4;
+ int ret = measure();
+ _retries = 0;
+ return ret;
}
int