diff options
author | Lorenz Meier <lm@inf.ethz.ch> | 2014-04-05 11:14:19 +0200 |
---|---|---|
committer | Lorenz Meier <lm@inf.ethz.ch> | 2014-04-05 11:14:19 +0200 |
commit | 1eb0b194093c91a42d4c0b022f10cf7163548acb (patch) | |
tree | bc411755556dd5c6c0a27023cac927161be3989e /src | |
parent | 1d0b2b4aa821ede26b0b2fd5ad91382cbbd2e8ee (diff) | |
parent | 3e4841b6fe2d8d6d06b167be49cbe76ab7e04a46 (diff) | |
download | px4-firmware-1eb0b194093c91a42d4c0b022f10cf7163548acb.tar.gz px4-firmware-1eb0b194093c91a42d4c0b022f10cf7163548acb.tar.bz2 px4-firmware-1eb0b194093c91a42d4c0b022f10cf7163548acb.zip |
Merged minimal S.BUS failsafe changes
Diffstat (limited to 'src')
-rw-r--r-- | src/drivers/px4io/px4io.cpp | 1 | ||||
-rw-r--r-- | src/modules/px4iofirmware/controls.c | 10 |
2 files changed, 7 insertions, 4 deletions
diff --git a/src/drivers/px4io/px4io.cpp b/src/drivers/px4io/px4io.cpp index f6125d273..2cc302631 100644 --- a/src/drivers/px4io/px4io.cpp +++ b/src/drivers/px4io/px4io.cpp @@ -1499,6 +1499,7 @@ PX4IO::io_publish_raw_rc() /* we have never seen valid RC signals, abort */ return OK; } + } /* lazily advertise on first publication */ diff --git a/src/modules/px4iofirmware/controls.c b/src/modules/px4iofirmware/controls.c index 356fe44cd..56c5aa005 100644 --- a/src/modules/px4iofirmware/controls.c +++ b/src/modules/px4iofirmware/controls.c @@ -251,8 +251,9 @@ controls_tick() { } /* invert channel if requested */ - if (conf[PX4IO_P_RC_CONFIG_OPTIONS] & PX4IO_P_RC_CONFIG_OPTIONS_REVERSE) + if (conf[PX4IO_P_RC_CONFIG_OPTIONS] & PX4IO_P_RC_CONFIG_OPTIONS_REVERSE) { scaled = -scaled; + } /* and update the scaled/mapped version */ unsigned mapped = conf[PX4IO_P_RC_CONFIG_ASSIGNMENT]; @@ -283,8 +284,9 @@ controls_tick() { /* set un-assigned controls to zero */ for (unsigned i = 0; i < PX4IO_CONTROL_CHANNELS; i++) { - if (!(assigned_channels & (1 << i))) + if (!(assigned_channels & (1 << i))) { r_rc_values[i] = 0; + } } /* set RC OK flag, as we got an update */ @@ -377,10 +379,10 @@ controls_tick() { mixer_tick(); } else { - r_status_flags &= ~PX4IO_P_STATUS_FLAGS_OVERRIDE; + r_status_flags &= ~(PX4IO_P_STATUS_FLAGS_OVERRIDE); } } else { - r_status_flags &= ~PX4IO_P_STATUS_FLAGS_OVERRIDE; + r_status_flags &= ~(PX4IO_P_STATUS_FLAGS_OVERRIDE); } } |