cancel
Showing results for 
Search instead for 
Did you mean: 

Official STM32 Bootloader

FMass.1
Associate III

Hi, I need to update the firmware of my MCU from the UART. I mean without physically touching the BOOT pin, but only via serial commands (classic FW update of a product).

I'm not an expert, but I tried searching on the internet and I saw that for these things it is necessary to write a bootloader. It doesn't seem impossible, but for a non-expert it's not exactly simple.

What I wanted to ask is, I think this is a very common need among users, has STM created anything official to support this feature? Is there something already given and official that I can use without necessarily writing my own custom bootloader? Maybe even supported directly in CubeMX.

I've seen that there are dozens of amateur/community bootloaders available, but not knowing how to write it, I can't even evaluate whether it's done well or whether it's suitable for my application, which is why I'm looking for an official STM solution.

4 REPLIES 4
Pavel A.
Evangelist III

The ST OpenBootloader behaves like the built-in STM32 bootloader. You can start from it and modify to your product. Also you can convince someone else to make a perfect bootloader for you.

TDK
Guru

You can jump to the system bootloader in code and use UART to program it through a supported UART interface.

https://www.st.com/resource/en/application_note/an3155-usart-protocol-used-in-the-stm32-bootloader-stmicroelectronics.pdf

https://www.st.com/resource/en/application_note/an2606-stm32-microcontroller-system-memory-boot-mode-stmicroelectronics.pdf

If you feel a post has answered your question, please click "Accept as Solution".
rajatrmetha_dhruva
Associate

Hello @FMass.1 
   Rajat here, May I know which controller are you using?
I have developed Custom boot loader for STM32L452 and I have also demonstrated the Firmware updates, Erase Flash Memory, and Read, and Write protection.
Let me know if you need help
you can connect with me on LinkedIn https://in.linkedin.com/in/metharajat5
or email metharajat5@gmail.com

I have attached a tera term log for the same.

MM..1
Chief III

Primary write your app right way to activate some bootl method. And read AN2606