cancel
Showing results for 
Search instead for 
Did you mean: 

STM32G030 bootloader

KlemenDS
Associate II

HI,

 

I configured boot pins STM32G030 to enter bootloader at startup of system, but now how do I check if the chip is actually in bootlaoder mode?

After setting boot bits, I know that the main application code on flash memory is not loaded at start up (mcu not responding to uart commadns as it does in application code), but when I try to use commands from AN3155:

KlemenDS_0-1724930104807.png

 

I get no response on uart (trying "Get version" and "Get ID" commands), also tried the "Go" command, doesnt work. The system is connected by STM32G03 connected to FT234XD-T(chip on PCB) and then via USB to PC. The UART communication works without problem in application code mode, at 115200 baud.

1 ACCEPTED SOLUTION

Accepted Solutions
TDK
Guru

Usually, you can tell by the nature of the chip not doing what it normally does. Be that blinking an LED or opening an interface, or whatever.

You can also connect with STM32CubeProgrammer and look at PC to see where the chip is at. System memory will be around 0x1FFF0000 while normal flash operation will be in the 0x08000000 range.

The bootloader requires a 0x7F byte before it will enter the UART-specific bootloader. Are you doing this?

TDK_0-1724935637518.png

Are you connected to pins supported by the bootloader per AN2606? Which pins and interface are you connected to?

Are you using a valid baud rate and even parity?

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

View solution in original post

3 REPLIES 3
TDK
Guru

Usually, you can tell by the nature of the chip not doing what it normally does. Be that blinking an LED or opening an interface, or whatever.

You can also connect with STM32CubeProgrammer and look at PC to see where the chip is at. System memory will be around 0x1FFF0000 while normal flash operation will be in the 0x08000000 range.

The bootloader requires a 0x7F byte before it will enter the UART-specific bootloader. Are you doing this?

TDK_0-1724935637518.png

Are you connected to pins supported by the bootloader per AN2606? Which pins and interface are you connected to?

Are you using a valid baud rate and even parity?

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

Hi,

thank you for info. The problem was that I missed that I need to send 0x7F to start it.

Now after 0x7F I get ACK response (0x79), but after any other comamnd, I get NACK (0x1F). So I guess there is problem in how I am sending comamnds to it.

KlemenDS
Associate II