aboutsummaryrefslogtreecommitdiff
path: root/src/modules/sensors/sensors.cpp
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2014-02-01 18:59:26 +0100
committerLorenz Meier <lm@inf.ethz.ch>2014-02-01 18:59:26 +0100
commit14bbecfd7a0c7a1e07ffd776aa2aec9ea1af2ce0 (patch)
tree7ada3c6af5c5f9f34eaf61f05287d780a1f002a7 /src/modules/sensors/sensors.cpp
parent22efca262d83ed1b1c5ecb701772ffd192f92777 (diff)
downloadpx4-firmware-14bbecfd7a0c7a1e07ffd776aa2aec9ea1af2ce0.tar.gz
px4-firmware-14bbecfd7a0c7a1e07ffd776aa2aec9ea1af2ce0.tar.bz2
px4-firmware-14bbecfd7a0c7a1e07ffd776aa2aec9ea1af2ce0.zip
Hotfix: Check all channel mappings for valid ranges
Diffstat (limited to 'src/modules/sensors/sensors.cpp')
-rw-r--r--src/modules/sensors/sensors.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/modules/sensors/sensors.cpp b/src/modules/sensors/sensors.cpp
index df6cbb7b2..f98c79cd2 100644
--- a/src/modules/sensors/sensors.cpp
+++ b/src/modules/sensors/sensors.cpp
@@ -1406,16 +1406,24 @@ Sensors::rc_poll()
}
/* mode switch input */
- manual_control.mode_switch = limit_minus_one_to_one(_rc.chan[_rc.function[MODE]].scaled);
+ if (_rc.function[MODE] >= 0) {
+ manual_control.mode_switch = limit_minus_one_to_one(_rc.chan[_rc.function[MODE]].scaled);
+ }
/* land switch input */
- manual_control.return_switch = limit_minus_one_to_one(_rc.chan[_rc.function[RETURN]].scaled);
+ if (_rc.function[MODE] >= 0) {
+ manual_control.return_switch = limit_minus_one_to_one(_rc.chan[_rc.function[RETURN]].scaled);
+ }
/* assisted switch input */
- manual_control.assisted_switch = limit_minus_one_to_one(_rc.chan[_rc.function[ASSISTED]].scaled);
+ if (_rc.function[MODE] >= 0) {
+ manual_control.assisted_switch = limit_minus_one_to_one(_rc.chan[_rc.function[ASSISTED]].scaled);
+ }
/* mission switch input */
- manual_control.mission_switch = limit_minus_one_to_one(_rc.chan[_rc.function[MISSION]].scaled);
+ if (_rc.function[MODE] >= 0) {
+ manual_control.mission_switch = limit_minus_one_to_one(_rc.chan[_rc.function[MISSION]].scaled);
+ }
/* flaps */
if (_rc.function[FLAPS] >= 0) {