aboutsummaryrefslogtreecommitdiff
path: root/apps/sensors
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2012-11-13 10:03:39 +0100
committerLorenz Meier <lm@inf.ethz.ch>2012-11-13 10:03:39 +0100
commit050698bedc9340bfc23ed18dfa84de664747e678 (patch)
tree76c9eeff83abe810221a3fada7ae79dcd4aa25ee /apps/sensors
parenta1059c5657d9d2b83d0ef7fe51b0997bb983d86e (diff)
downloadpx4-firmware-050698bedc9340bfc23ed18dfa84de664747e678.tar.gz
px4-firmware-050698bedc9340bfc23ed18dfa84de664747e678.tar.bz2
px4-firmware-050698bedc9340bfc23ed18dfa84de664747e678.zip
Added missing channel count in px4io driver
Diffstat (limited to 'apps/sensors')
-rw-r--r--apps/sensors/sensors.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/apps/sensors/sensors.cpp b/apps/sensors/sensors.cpp
index 675a8602a..7c1503f0d 100644
--- a/apps/sensors/sensors.cpp
+++ b/apps/sensors/sensors.cpp
@@ -93,6 +93,8 @@
#define BAT_VOL_LOWPASS_2 0.01f
#define VOLTAGE_BATTERY_IGNORE_THRESHOLD_VOLTS 3.5f
+#define PPM_INPUT_TIMEOUT_INTERVAL 50000 /**< 50 ms timeout / 20 Hz */
+
/**
* Sensor app start / stop handling function
*
@@ -865,8 +867,10 @@ Sensors::ppm_poll()
struct rc_input_values raw;
raw.timestamp = ppm_last_valid_decode;
+ /* we are accepting this message */
+ _ppm_last_valid = ppm_last_valid_decode;
- if (ppm_decoded_channels > 1) {
+ if (ppm_decoded_channels > 2 && hrt_absolute_time() - _ppm_last_valid < PPM_INPUT_TIMEOUT_INTERVAL) {
for (int i = 0; i < ppm_decoded_channels; i++) {
raw.values[i] = ppm_buffer[i];