UART Overrun (ORE) Error in STM32CubeMX-Generated Code for STM32H573RIT6.
Hello STM Community,
I'm encountering persistent UART Overrun (ORE) errors on the STM32H573RIT6 when using code generated from a fresh STM32CubeMX project (.ioc file).
Setup and Reproduction:
Created new STM32CubeMX project for STM32H573RIT6
Generated code and tested UART reception with:
HAL_UART_Receive_IT()
HAL_UARTEx_ReceiveToIdle_IT()
Result: Continuous ORE errors in both interrupt and IDLE modes
Key Observations:
Issue persists even at:
Reduced system clock frequencies
Lower baud rates
With non-blocking ISR implementation
DMA Mode Works Perfectly:
HAL_UART_Receive_DMA()
HAL_UARTEx_ReceiveToIdle_DMA()
No ORE errors observed
Comparative Testing:
Regenerated multiple fresh CubeMX projects for STM32H573RIT6 → ORE persists
Used older .ioc file with UART configuration → No ORE
Created new CubeMX project for NUCLEO-G071RB → UART interrupt/IDLE works perfectly, no ORE
Question:
Could this indicate a CubeMX configuration issue specific to STM32H573RIT6 UART peripheral initialization?
Any insights from ST engineers or experienced developers would be greatly appreciated.
Thank you,
