From e745ea254aa02cc4e7614626a987c2287e8712c6 Mon Sep 17 00:00:00 2001 From: Peter Feerick Date: Wed, 14 Jul 2021 15:46:59 +1000 Subject: [PATCH] Clear module flags and failsafeChecked on enable Clearing the MPM capability flags and failsafeChecked resolves the issue with false failsafe not set warnings. Needs further testing to see if it causes any other issues. --- radio/src/pulses/pulses.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/radio/src/pulses/pulses.cpp b/radio/src/pulses/pulses.cpp index 779771c04..1d0b75045 100755 --- a/radio/src/pulses/pulses.cpp +++ b/radio/src/pulses/pulses.cpp @@ -285,6 +285,12 @@ void enablePulsesExternalModule(uint8_t protocol) extmoduleSerialStart(); mixerSchedulerSetPeriod(EXTERNAL_MODULE, MULTIMODULE_PERIOD); #endif + for (int i = 0; i < NUM_MODULES; i++) { + if (isModuleMultimodule(i)) { + getMultiModuleStatus(i).failsafeChecked = false; + getMultiModuleStatus(i).flags = 0; + } + } break; #endif @@ -491,6 +497,12 @@ static void enablePulsesInternalModule(uint8_t protocol) intmodulePulsesData.multi.initFrame(); intmoduleSerialStart(MULTIMODULE_BAUDRATE, true, USART_Parity_Even, USART_StopBits_2, USART_WordLength_9b); mixerSchedulerSetPeriod(INTERNAL_MODULE, MULTIMODULE_PERIOD); + for (int i = 0; i < NUM_MODULES; i++) { + if (isModuleMultimodule(i)) { + getMultiModuleStatus(i).failsafeChecked = false; + getMultiModuleStatus(i).flags = 0; + } + } break; #endif