Showing results for 
Search instead for 
Did you mean: 

UART RX Busy Flag Constantly Set

Associate II

I had a project I was using on the L053 Discovery Board (STM32L053C8T6 micro) that was receiving some data from the UART that was working fine. Built my own board using a different L0 part (STM32L010F4P6). When I try to run this same project, the UART comes back as always busy receiving, even with no data present (RxState == HAL_UART_STATE_BUSY_RX).

I'm using the latest version of the L0 Cube HAL. I see in the past some people were manually clearing the flag using the HAL_UART_RxCpltCallback, but the current versions of the HAL specifically advise against modifying this.

But I don't see where the RXState actually gets set to "Ready". Am I missing something? Do I need to manually service the flags?

ST Employee

Hello @Community member​ ,

I recommend you to follow properly the steps as described in this wiki page: STM32StepByStep:Step3 Introduction to the UART - stm32mcu

Also, If your project is based on a generation of code with STM32CubeMX, this article can help you to migrate your current STM32L053C8T6 example to the STM32L010F4P6.

I hope this help you to solve the issue!

Thank you for your contribution in STCommunity.


To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Found the issue. Can't delete post.

The value of a forum is that its a collection of questions and answers.​

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..