cancel
Showing results for 
Search instead for 
Did you mean: 

How to jump to system bootloader from application code on STM32H573 microcontrollers

pavelkotel
Associate

I need to use embedded STM32H573 bootloader to update customer application using UART1 or uart3.

I try to use AN2606, but no success. May you provide correct code to jump from application to the embedded bootloader for specific processor model: STM32H573, please?

1 ACCEPTED SOLUTION

Accepted Solutions
mƎALLEm
ST Employee

Hello,

You can refer to this knowledge base article: How to jump to system bootloader from application code on STM32 microcontrollers

Hope that helps.

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.

View solution in original post

3 REPLIES 3
gbm
Principal
#include "stm32h5xx.h"
#define BOOT_ADDR 0x0BF97000
#include "cm_boot.h" // https://github.com/gbm-ii/STM32_Inc/blob/main/cm_boot.h

int main(void)
{
		
    app_start(BOOT_ADDR);	// start ST built-in bootloader
}

The code must be compiled with -O1 or above - see the comments in cm_boot.h

My STM32 stuff on github - compact USB device stack and more: https://github.com/gbm-ii/gbmUSBdevice
T_Hamdi
ST Employee

Hello @pavelkotel 

to enter the STM32H573 system bootloader using hardware (as described in AN2606):

  1. Connect the BOOT0 pin to HIGH (1).
  2. Press the RESET button.

This will make the microcontroller start from the system memory bootloader instead of your application.

Then, connect the board to your host using one of the USART interfaces shown in the figure (USART1,USART2 or USART3, depending on your hardware).

you can also use STM32CubeProgrammer and select the appropriate USART interface when connecting to the board for firmware update.

T_Hamdi_0-1766565804469.png

Best regards,

Hamdi

 

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.
Hamdi Teyeb
mƎALLEm
ST Employee

Hello,

You can refer to this knowledge base article: How to jump to system bootloader from application code on STM32 microcontrollers

Hope that helps.

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.