diff --git a/src/main/config/config.c b/src/main/config/config.c index 1b5114dbae..e7f2068228 100644 --- a/src/main/config/config.c +++ b/src/main/config/config.c @@ -581,6 +581,10 @@ static void validateAndFixConfig(void) validateAndFixRatesSettings(); // constrain the various rates settings to limits imposed by the rates type #if defined(USE_RX_MSP_OVERRIDE) + if (!rxConfig()->msp_override_channels_mask) { + removeModeActivationCondition(BOXMSPOVERRIDE); + } + for (int i = 0; i < MAX_MODE_ACTIVATION_CONDITION_COUNT; i++) { const modeActivationCondition_t *mac = modeActivationConditions(i); if (mac->modeId == BOXMSPOVERRIDE && ((1 << (mac->auxChannelIndex) & (rxConfig()->msp_override_channels_mask)))) { diff --git a/src/main/msp/msp_box.c b/src/main/msp/msp_box.c index a4fd934a7d..7471d99c7e 100644 --- a/src/main/msp/msp_box.c +++ b/src/main/msp/msp_box.c @@ -333,6 +333,12 @@ void initActiveBoxIds(void) BME(BOXLAUNCHCONTROL); #endif +#if defined(USE_RX_MSP_OVERRIDE) + if (rxConfig()->msp_override_channels_mask) { + BME(BOXMSPOVERRIDE); + } +#endif + BME(BOXSTICKCOMMANDDISABLE); #undef BME