diff --git a/sw/airborne/subsystems/radio_control/sbus.c b/sw/airborne/subsystems/radio_control/sbus.c index 37717d8ff2..945270cdd3 100644 --- a/sw/airborne/subsystems/radio_control/sbus.c +++ b/sw/airborne/subsystems/radio_control/sbus.c @@ -76,7 +76,7 @@ void radio_control_impl_event(void (* _received_frame_handler)(void)) if (sbus.frame_available) { //With Sbus one can still have a receiver sent valid frames generated by the //failsafe mode of the receiver, having frames in this case does not guarantee having RC link - if (sbus.rc_lost) { + if (sbus.rc_lost || sbus.rc_failsafe) { radio_control.status = RC_REALLY_LOST; if (radio_control.radio_ok_cpt > 0) { radio_control.radio_ok_cpt--; diff --git a/sw/airborne/subsystems/radio_control/sbus_common.c b/sw/airborne/subsystems/radio_control/sbus_common.c index 43e44f9690..8277ef0637 100644 --- a/sw/airborne/subsystems/radio_control/sbus_common.c +++ b/sw/airborne/subsystems/radio_control/sbus_common.c @@ -44,7 +44,7 @@ #define SBUS_BIT_PER_BYTE 8 #define SBUS_FLAGS_BYTE 22 #define SBUS_FRAME_LOST_BIT 2 -#define SBUS_RC_FAILSAFE_BIT 4 +#define SBUS_RC_FAILSAFE_BIT 3 #define SBUS_RC_LOST_BIT 5 #define SBUS_STATUS_UNINIT 0