diff --git a/src/main/drivers/pwm_output_stm32f3xx.c b/src/main/drivers/pwm_output_stm32f3xx.c index 8579088d8e..f8bcfe74a2 100644 --- a/src/main/drivers/pwm_output_stm32f3xx.c +++ b/src/main/drivers/pwm_output_stm32f3xx.c @@ -58,8 +58,6 @@ void pwmWriteDigital(uint8_t index, uint16_t value) { motorDmaOutput_t * const motor = &dmaMotors[index]; - motor->value = value; - motor->dmaBuffer[0] = (value & 0x400) ? MOTOR_BIT_1 : MOTOR_BIT_0; motor->dmaBuffer[1] = (value & 0x200) ? MOTOR_BIT_1 : MOTOR_BIT_0; motor->dmaBuffer[2] = (value & 0x100) ? MOTOR_BIT_1 : MOTOR_BIT_0; diff --git a/src/main/drivers/pwm_output_stm32f4xx.c b/src/main/drivers/pwm_output_stm32f4xx.c index f2a3744825..af2f3672a4 100644 --- a/src/main/drivers/pwm_output_stm32f4xx.c +++ b/src/main/drivers/pwm_output_stm32f4xx.c @@ -58,8 +58,6 @@ void pwmWriteDigital(uint8_t index, uint16_t value) { motorDmaOutput_t * const motor = &dmaMotors[index]; - motor->value = value; - motor->dmaBuffer[0] = (value & 0x400) ? MOTOR_BIT_1 : MOTOR_BIT_0; motor->dmaBuffer[1] = (value & 0x200) ? MOTOR_BIT_1 : MOTOR_BIT_0; motor->dmaBuffer[2] = (value & 0x100) ? MOTOR_BIT_1 : MOTOR_BIT_0; diff --git a/src/main/drivers/pwm_output_stm32f7xx.c b/src/main/drivers/pwm_output_stm32f7xx.c index 67c0de1948..5ff6c4fc9b 100644 --- a/src/main/drivers/pwm_output_stm32f7xx.c +++ b/src/main/drivers/pwm_output_stm32f7xx.c @@ -58,8 +58,6 @@ void pwmWriteDigital(uint8_t index, uint16_t value) { motorDmaOutput_t * const motor = &dmaMotors[index]; - motor->value = value; - motor->dmaBuffer[0] = (value & 0x400) ? MOTOR_BIT_1 : MOTOR_BIT_0; motor->dmaBuffer[1] = (value & 0x200) ? MOTOR_BIT_1 : MOTOR_BIT_0; motor->dmaBuffer[2] = (value & 0x100) ? MOTOR_BIT_1 : MOTOR_BIT_0; diff --git a/src/main/fc/fc_msp.c b/src/main/fc/fc_msp.c index 34781bb6df..53a13e03e3 100755 --- a/src/main/fc/fc_msp.c +++ b/src/main/fc/fc_msp.c @@ -649,7 +649,7 @@ static bool mspFcProcessOutCommand(uint8_t cmdMSP, sbuf_t *dst, mspPostProcessFn #endif case MSP_MOTOR: for (unsigned i = 0; i < 8; i++) { - sbufWriteU16(dst, i < MAX_SUPPORTED_MOTORS ? motor[i] : 0); + sbufWriteU16(dst, i < MAX_SUPPORTED_MOTORS ? constrain(motor[i], 1, 2047) : 0); // TODO - Fix 0 handling in the configurator. This is just a workaround } break; case MSP_RC: