cancel
Showing results for 
Search instead for 
Did you mean: 

Open Bootloader via UART: CubeProgrammer sends too many Get ID commands

Phumphathai
Associate

STM32CubeProgrammer v2.21.0

 

I implement Open Bootloader middleware to communicate USART protocol over USB CDC on Mbed OS 6

 

I found when I open STM32CubeProgrammer and click Erasing & Programming tab first time, program will freeze. But after first time does not freeze.

 

After Click Erasing & Programming tab. Program send Get ID for 100 packets per sec

 

Graph with 1 Sec interval, Get ID packets (I only filter 0x02)

Phumphathai_0-1748573533174.png

 

Graph with 100ms interval, Get ID packets

Phumphathai_1-1748573674722.png

 

Before Click, 2 Get ID per 1 sec

Phumphathai_2-1748573837243.png

 

After Click, 513 Get ID packets with no delay

Phumphathai_3-1748573903151.png

 

I also try with FTDI and result is mostly same

 

Graph with 100ms interval, Get ID packets 6-7 packet per 100ms

Phumphathai_4-1748575696110.png

 

And also 513 packets

Phumphathai_5-1748575962286.png

 

I also found when before and after buck send. Program change baud rate to 9600 and switch back to 115200 (I use 115200)

2 REPLIES 2
Maryem
ST Employee

Hello @Phumphathai and welcome to the Community,

 

Thank you for sharing your detailed observations and findings.

To better understand and assist with this issue, could you please let us know which STM32 device you are using? Additionally, it would be very helpful if you could provide the STM32CubeProgrammer logs for further analysis.

Also, just to clarify, the latest official version of STM32CubeProgrammer is v2.19.0.

 

Maryem.


In order 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.
Phumphathai
Associate

Hello

 

I use both L476VG and U585VI with custom board.

With L476VG I have found problem with both System Bootloader and Open Bootloader.

With U585VI I only test and found same problem with System Bootloader. (I did not have Wireshark capture so I not sure how may packet)

 

I use STM32CubeProgrammer v2.21.0

Screenshot 2025-05-30 221334.png.

 

I try to set log Verbosity level to level 3. But program freeze more than 30 minutes. So, I kill program.

With Verbosity level 1 and 2. I think don't have any useful log.

 

I also try with SWD with STLINK-V3MODS

Version: V3J16M8B5S1 

Type: STM8/STM32 Debug+2VCP+Bridge

MCU: L476VG

I don't know how to decode USB package. So, I filter using `f2:0c:fe:6f:ff:1f:01:00:00:00:00:00:00:00:00:00` This look like send every 1 sec. And behavior look like UART have 513 packets after click Erasing & Programming tab

Phumphathai_1-1748622815323.png

 

Board: WeAct Studio STM32H743VIT6-0.96

With SWD I use `f2:0c:fe:e7:f1:1f:01:00:00:00:00:00:00:00:00:00` to filter. I think program only send 17 packets.

Phumphathai_2-1748624145331.png

With USB DFU System bootloader. Normal send 2 packages per sec. After click I think 18 packets.

Phumphathai_3-1748624608611.png

 

Thank you