From de511497ffa77dee35dd3d18ff14d1fadba451fe Mon Sep 17 00:00:00 2001 From: Peter Barker Date: Wed, 25 Mar 2026 17:17:00 +1100 Subject: [PATCH] RC_Channel: understand ignore-receiver when reading rc inputs previously this option only gated whether we read data from the HAL into our radio_in state. but that would mean read_input would still return true, even if we didn't actually read data from the receiver into the radio state. And that means everything in (e.g. Copter::read_radio thinks we have good channel data when we absolutely do not, meaning has_valid_input is true. Which is bad. --- libraries/RC_Channel/RC_Channels.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/RC_Channel/RC_Channels.cpp b/libraries/RC_Channel/RC_Channels.cpp index 82bb5de3c4e..212fb2b233c 100644 --- a/libraries/RC_Channel/RC_Channels.cpp +++ b/libraries/RC_Channel/RC_Channels.cpp @@ -86,7 +86,8 @@ uint8_t RC_Channels::get_radio_in(uint16_t *chans, const uint8_t num_channels) // update all the input channels bool RC_Channels::read_input(void) { - if (hal.rcin->new_input()) { + if (hal.rcin->new_input() && + !rc().option_is_enabled(RC_Channels::Option::IGNORE_RECEIVER)) { _has_had_rc_receiver = true; } else if (!has_new_overrides) { return false;