diff --git a/src/main/drivers/pwm_mapping.c b/src/main/drivers/pwm_mapping.c index 06cdf5ea279..15bc4787761 100644 --- a/src/main/drivers/pwm_mapping.c +++ b/src/main/drivers/pwm_mapping.c @@ -97,6 +97,15 @@ static bool checkPwmTimerConflicts(const timerHardware_t *timHw) { serialPortPins_t uartPins; +#if defined(USE_UART1) + // MSP is UART1's default next to the VCP and has always given these pins up to the outputs + const serialPortConfig_t *uart1Config = serialFindPortConfiguration(SERIAL_PORT_USART1); + uartGetPortPins(UARTDEV_1, &uartPins); + if (uart1Config && (uart1Config->functionMask & ~FUNCTION_MSP) && (timHw->tag == uartPins.txPin || timHw->tag == uartPins.rxPin)) { + return true; + } +#endif + #if defined(USE_UART2) uartGetPortPins(UARTDEV_2, &uartPins); if (doesConfigurationUsePort(SERIAL_PORT_USART2) && (timHw->tag == uartPins.txPin || timHw->tag == uartPins.rxPin)) {