diff --git a/radio/src/pulses/pulses.cpp b/radio/src/pulses/pulses.cpp index 801c75098..7d18f0d34 100755 --- a/radio/src/pulses/pulses.cpp +++ b/radio/src/pulses/pulses.cpp @@ -462,6 +462,7 @@ void enablePulsesExternalModule(uint8_t protocol) externalModuleDriver->deinit(externalModuleContext); externalModuleDriver = nullptr; externalModuleContext = nullptr; + EXTERNAL_MODULE_PWR_OFF(); } else { extmoduleStop(); } @@ -740,6 +741,7 @@ void stopPulsesExternalModule() mixerSchedulerSetPeriod(EXTERNAL_MODULE, 0); extmoduleStop(); } + EXTERNAL_MODULE_PWR_OFF(); moduleState[EXTERNAL_MODULE].protocol = PROTOCOL_CHANNELS_NONE; } } diff --git a/radio/src/pulses/pxx2.cpp b/radio/src/pulses/pxx2.cpp index 83a331c19..5ebe964ea 100644 --- a/radio/src/pulses/pxx2.cpp +++ b/radio/src/pulses/pxx2.cpp @@ -750,7 +750,7 @@ static void pxx2DeInitExternal(void* context) (void)context; mixerSchedulerSetPeriod(EXTERNAL_MODULE, 0); - extmoduleStop(); + ExtmoduleSerialDriver.deinit(); } static void pxx2SetupPulsesExternal(void* context, int16_t* channels, uint8_t nChannels)