2025-12-15 4:49 AM
I have updated the STM32L4 HAL drivers to V1.13.6 / 14-November-2025 (1.18.2), which has broken my implementation of HAL_UARTEx_ReceiveToIdle_DMA.
Is this a fault in the new HAL drivers or does user code need to be updated inside the HAL_UARTEx_RxEventCallback?
2025-12-15 4:58 AM
Code within HAL_UARTEx_ReceiveToIdle_DMA hasn't changed for several years. Probably not the problem.
Debug your code. Hit pause, understand what is breaking and then try to fix that. Don't look for a magic solution.
Do a diff on your code before/after the update to understand the differences. CMSIS and header files need to be in sync with HAL files.
2025-12-15 5:03 AM - edited 2025-12-15 5:08 AM
Diff shows the code around this feature has definitely been updated in hal_uart.c
Release notes:
2025-12-17 6:32 AM
I have found the fault in stm32l4xx_hal_uart.c
Inside the function UART_DMAReceiveCplt, inside the check for HAL_UART_RECEPTION_TOIDLE line 3902, this line of code is missing.
huart->RxXferCount = 0;