aboutsummaryrefslogtreecommitdiff
path: root/src/drivers
diff options
context:
space:
mode:
authorJean Cyr <jcyr@dillobits.com>2013-07-07 09:12:42 -0400
committerJean Cyr <jcyr@dillobits.com>2013-07-07 09:12:42 -0400
commit7a6a786708814c3ddfa2973189a7334144e4e741 (patch)
tree193f00244606d748967c47998aa58624bf4e1036 /src/drivers
parent3f9f2018e20f4be23e7d62571ec0a3678d960108 (diff)
parent7cf121472e7ba3d83084083792b0f159f238a8ef (diff)
downloadpx4-firmware-7a6a786708814c3ddfa2973189a7334144e4e741.tar.gz
px4-firmware-7a6a786708814c3ddfa2973189a7334144e4e741.tar.bz2
px4-firmware-7a6a786708814c3ddfa2973189a7334144e4e741.zip
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'src/drivers')
-rw-r--r--src/drivers/ets_airspeed/ets_airspeed.cpp5
-rw-r--r--src/drivers/hott_telemetry/messages.c2
2 files changed, 4 insertions, 3 deletions
diff --git a/src/drivers/ets_airspeed/ets_airspeed.cpp b/src/drivers/ets_airspeed/ets_airspeed.cpp
index c39da98d7..b34d3fa5d 100644
--- a/src/drivers/ets_airspeed/ets_airspeed.cpp
+++ b/src/drivers/ets_airspeed/ets_airspeed.cpp
@@ -84,8 +84,9 @@
/**
* The Eagle Tree Airspeed V3 cannot provide accurate reading below speeds of 15km/h.
+ * You can set this value to 12 if you want a zero reading below 15km/h.
*/
-#define MIN_ACCURATE_DIFF_PRES_PA 12
+#define MIN_ACCURATE_DIFF_PRES_PA 0
/* Measurement rate is 100Hz */
#define CONVERSION_INTERVAL (1000000 / 100) /* microseconds */
@@ -463,8 +464,8 @@ ETSAirspeed::collect()
uint16_t diff_pres_pa = val[1] << 8 | val[0];
+ // XXX move the parameter read out of the driver.
param_get(param_find("SENS_DPRES_OFF"), &_diff_pres_offset);
-
if (diff_pres_pa < _diff_pres_offset + MIN_ACCURATE_DIFF_PRES_PA) {
diff_pres_pa = 0;
diff --git a/src/drivers/hott_telemetry/messages.c b/src/drivers/hott_telemetry/messages.c
index d2634ef41..0ce56acef 100644
--- a/src/drivers/hott_telemetry/messages.c
+++ b/src/drivers/hott_telemetry/messages.c
@@ -108,7 +108,7 @@ build_eam_response(uint8_t *buffer, size_t *size)
memset(&airspeed, 0, sizeof(airspeed));
orb_copy(ORB_ID(airspeed), airspeed_sub, &airspeed);
- uint16_t speed = (uint16_t)(airspeed.indicated_airspeed_m_s);
+ uint16_t speed = (uint16_t)(airspeed.indicated_airspeed_m_s * 3.6f);
msg.speed_L = (uint8_t)speed & 0xff;
msg.speed_H = (uint8_t)(speed >> 8) & 0xff;