diff --git a/radio/src/pulses/pulses.cpp b/radio/src/pulses/pulses.cpp index 5c7fdc51e..7ac4a69e8 100755 --- a/radio/src/pulses/pulses.cpp +++ b/radio/src/pulses/pulses.cpp @@ -268,12 +268,12 @@ void enablePulsesExternalModule(uint8_t protocol) #if defined(PXX2) && defined(EXTMODULE_USART) case PROTOCOL_CHANNELS_PXX2_HIGHSPEED: extmoduleInvertedSerialStart(PXX2_HIGHSPEED_BAUDRATE); - mixerSchedulerSetPeriod(EXTERNAL_MODULE, PXX2_PERIOD); + mixerSchedulerSetPeriod(EXTERNAL_MODULE, PXX2_NO_HEARTBEAT_PERIOD); break; case PROTOCOL_CHANNELS_PXX2_LOWSPEED: extmoduleInvertedSerialStart(PXX2_LOWSPEED_BAUDRATE); - mixerSchedulerSetPeriod(EXTERNAL_MODULE, PXX2_PERIOD); + mixerSchedulerSetPeriod(EXTERNAL_MODULE, PXX2_NO_HEARTBEAT_PERIOD); break; #endif @@ -347,7 +347,7 @@ bool setupPulsesExternalModule(uint8_t protocol) case PROTOCOL_CHANNELS_PXX2_LOWSPEED: extmodulePulsesData.pxx2.setupFrame(EXTERNAL_MODULE); #if defined(PCBSKY9X) - sheduleNextMixerCalculation(EXTERNAL_MODULE, PXX2_PERIOD); + sheduleNextMixerCalculation(EXTERNAL_MODULE, PXX2_NO_HEARTBEAT_PERIOD); #endif return true; #endif @@ -487,9 +487,9 @@ static void enablePulsesInternalModule(uint8_t protocol) #if defined(INTMODULE_HEARTBEAT) // use backup trigger (1 ms later) init_intmodule_heartbeat(); - mixerSchedulerSetPeriod(INTERNAL_MODULE, PXX2_HEARTBEAT_PERIOD); + mixerSchedulerSetPeriod(INTERNAL_MODULE, PXX2_MAX_HEARTBEAT_PERIOD); #else - mixerSchedulerSetPeriod(INTERNAL_MODULE, PXX2_PERIOD); + mixerSchedulerSetPeriod(INTERNAL_MODULE, PXX2_NO_HEARTBEAT_PERIOD); #endif break; #endif @@ -547,9 +547,9 @@ bool setupPulsesInternalModule(uint8_t protocol) else { #if defined(INTMODULE_HEARTBEAT) mixerSchedulerResetTimer(); - mixerSchedulerSetPeriod(INTERNAL_MODULE, PXX2_HEARTBEAT_PERIOD); + mixerSchedulerSetPeriod(INTERNAL_MODULE, PXX2_MAX_HEARTBEAT_PERIOD); #else - mixerSchedulerSetPeriod(INTERNAL_MODULE, PXX2_PERIOD); + mixerSchedulerSetPeriod(INTERNAL_MODULE, PXX2_NO_HEARTBEAT_PERIOD); #endif } return result; diff --git a/radio/src/pulses/pxx.h b/radio/src/pulses/pxx.h index 8ea42b08e..90956fe35 100644 --- a/radio/src/pulses/pxx.h +++ b/radio/src/pulses/pxx.h @@ -29,8 +29,8 @@ #define PXX2_LOWSPEED_BAUDRATE 230400 #define PXX2_HIGHSPEED_BAUDRATE 450000 -#define PXX2_PERIOD 4000/*us*/ -#define PXX2_HEARTBEAT_PERIOD 8000/*us 7ms frame rate + 1ms heartbeat backup*/ +#define PXX2_NO_HEARTBEAT_PERIOD 4000/*us*/ +#define PXX2_MAX_HEARTBEAT_PERIOD (7000 + 1000)/*us 7ms frame rate + 1ms heartbeat backup*/ #define PXX2_TOOLS_PERIOD 1000/*us*/ #define PXX2_FRAME_MAXLENGTH 64 diff --git a/radio/src/targets/common/arm/stm32/intmodule_serial_driver.cpp b/radio/src/targets/common/arm/stm32/intmodule_serial_driver.cpp index a9ee219f2..68b2c47e5 100755 --- a/radio/src/targets/common/arm/stm32/intmodule_serial_driver.cpp +++ b/radio/src/targets/common/arm/stm32/intmodule_serial_driver.cpp @@ -141,7 +141,7 @@ void intmoduleSendBuffer(const uint8_t * data, uint8_t size) #if defined(INTMODULE_DMA_STREAM) if (!DMA_GetITStatus(INTMODULE_DMA_STREAM, INTMODULE_DMA_FLAG_TC)) - return;; + return; DMA_InitTypeDef DMA_InitStructure; DMA_DeInit(INTMODULE_DMA_STREAM);