2025-11-27 8:17 AM
Hello,
I am working on a custom mixed communication implementation using USART in single-wire half-duplex mode with TX-only operation, level inversion, and interrupt-driven transmission on an STM32G0B0 (RETx package).
During testing, I observed the following behavior:
When the USART is configured in CubeMX as Single Wire (Half-Duplex) with TX inversion enabled and the line is internally pulled up, no data is transmitted.
However, when using asynchronous mode with the same inversion settings, transmission works normally.
My questions are:
Is this behavior expected when using USART Half-Duplex mode with level inversion and a pull-up on the line?
Has anyone experienced this behavior on the STM32G0 USART peripheral?
I plan to use USART3, USART4, USART5, and USART6 simultaneously under an RTOS environment, all configured the same way (single-wire, inverted signal, interrupt driven). Under these conditions, should I expect similar transmission issues on all USART instances?
All selected pins support signal inversion and single-wire mode according to CubeMX and the reference manual.
Any clarification or experience regarding this behavior would be appreciated.
Thank you.
2025-11-27 8:26 AM
Is RXINV also set? This needs to match TXINV since you are using half-duplex.
If data is inverted, idle state is now low, not high, so the pin should be pulled down.