cancel
Showing results for 
Search instead for 
Did you mean: 

Get Version bootloader command ignored on STM32WB09KE

Davide Dalfra
Associate III

Hello,

 

I'm encountering the same issue, and i started debugging the embedded bootloader protocol manually. 
Or i'm starting getting crazy, but what specified in AN3155 is not respecting what i'm having on the serial port.
I'm using NUCLEO-WB09KE(MB2032B) mounted on MB1801D.

When moving JP1[MB2032B] to BOOT mode, SWD is not available.I'm only be able to get on bootloader mode (not with CubeProg) but as below.

Problem 1 - GetVersionComand (documentation mismatch)

I sucessfully entered in BL (Ack = 0x79), however GetVersion command is totally ignored. 
I then tested with another command to see if the communication with embedded BL works.
Something worked but not as expected.
DavideDalfra_0-1746622886252.png

 

DavideDalfra_1-1746623030630.png

Command 0x02+0xFD should reply with ACK(0x79) + N=NumberOfByte + PID. I did not see 0x79 as ACK nor the number of bytes i should get: i just got 0xD0 and 0x94.
I can't find what is the DEV_ID of STM32WB09KEx, so i can't verify if what'i'm having is really the DEV_ID or something else. Anyway the ACK is still missing.

What's happening there? I get into this because seems the SWD port is disabled due to low-power firmware pre-loaded on the board, so i tried to erase the firmware by accessing the rommed BL. As i was not able to get trough STM32PROG i decided to go "manual way".

Unfortunately after a mass erase i can't access anyway.
As i found mismatch command & replies referred to Uart BL specs, i have doubt i really erased the flash.

Anyone have some direction to point me out?


 

Thanks

Davide




3 REPLIES 3
TDK
Guru

Even parity?

STM32CubeProgrammer can access the bootloader over UART, I'd try that.

TDK_0-1746630341766.png

 

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

Yes even parity and with STM32CubeProgrammer first.
I go "manual" because i was getting peanuts from Cube so i wanted to understand.

By enablihng Verbosity level 3 on STM32CubeProgrammer i'm getting the same results (ack missing).

DavideDalfra_0-1746684011712.png

07:59:37:428 : UR connection mode is defined with the HWrst reset mode
  07:59:37:431 : RTS low
  07:59:37:431 : DTR low
  07:59:37:438 : Serial Port COM3 is successfully opened.
  07:59:37:438 : Port configuration: parity = even, baudrate = 115200, data-bit = 8,                     stop-bit = 1.0, flow-control = off
  07:59:37:438 : No Init bits value is : 0 
  07:59:37:438 : Sending init command: 
  07:59:37:438 : byte 0x7F sent successfully to target
  07:59:37:439 : Wait ends after 1 loop, dataready = 1, delay = 0
  07:59:37:439 : Received response from target: 0x79
  07:59:37:448 : Activating device: OK
  07:59:37:448 : Board       : --
  07:59:37:448 : Sending GetID command and its XOR:
  07:59:37:449 : byte 0x02 sent successfully to target
  07:59:37:449 : byte 0xFD sent successfully to target
  07:59:37:452 : Wait ends after 1 loop, dataready = 1, delay = 0
  07:59:37:452 : Received response from target: 0xd0
  07:59:37:452 : Error: GETID command not acknowledged!
  07:59:37:552 : Reemission of GetID command
  07:59:37:552 : Sending GetID command and its XOR:
  07:59:37:553 : byte 0x02 sent successfully to target
  07:59:37:553 : byte 0xFD sent successfully to target
  07:59:37:553 : Received response from target: 0x94
  07:59:37:553 : Error: GETID command not acknowledged!
  07:59:37:652 : Reemission of GetID command
  07:59:37:652 : Sending GetID command and its XOR:
  07:59:37:652 : byte 0x02 sent successfully to target
  07:59:37:652 : byte 0xFD sent successfully to target
  07:59:37:653 : Received response from target: 0xd0
  07:59:37:653 : Error: GETID command not acknowledged!
  07:59:37:838 : Chip ID: 0x0 
  07:59:37:839 :  UART PORT CLOSE 
  07:59:37:840 : Disconnected from device.
  07:59:37:840 : RTS low
  07:59:37:840 : DTR low
  07:59:37:845 : Serial Port COM3 is successfully opened.
  07:59:37:845 : Port configuration: parity = even, baudrate = 115200, data-bit = 8,                     stop-bit = 1.0, flow-control = off
  07:59:37:845 : No Init bits value is : 0 
  07:59:37:845 : Sending init command: 
  07:59:37:846 : byte 0x7F sent successfully to target
  07:59:41:845 : Wait ends after 2 loop, dataready = 0, delay = 4000
  07:59:41:845 : Timeout error occured while waiting for acknowledgement.
  07:59:41:845 : No response from target received
  07:59:41:845 : Retrying UART init connection...
  07:59:41:846 : byte 0x7F sent successfully to target
  07:59:41:847 : Wait ends after 1 loop, dataready = 1, delay = 0
  07:59:41:847 : Received response from target: 0x1f
  07:59:41:847 : Activating device: OK
  07:59:41:847 : Board       : --
  07:59:41:847 : Sending GetID command and its XOR:
  07:59:41:847 : byte 0x02 sent successfully to target
  07:59:41:848 : byte 0xFD sent successfully to target
  07:59:41:848 : Wait ends after 1 loop, dataready = 1, delay = 0
  07:59:41:848 : Received response from target: 0xd0
  07:59:41:848 : Error: GETID command not acknowledged!
  07:59:41:955 : Reemission of GetID command
  07:59:41:955 : Sending GetID command and its XOR:
  07:59:41:955 : byte 0x02 sent successfully to target
  07:59:41:956 : byte 0xFD sent successfully to target
  07:59:41:956 : Wait ends after 1 loop, dataready = 1, delay = 0
  07:59:41:956 : Received response from target: 0xd0
  07:59:41:956 : Error: GETID command not acknowledged!
  07:59:42:055 : Reemission of GetID command
  07:59:42:055 : Sending GetID command and its XOR:
  07:59:42:057 : byte 0x02 sent successfully to target
  07:59:42:057 : byte 0xFD sent successfully to target
  07:59:42:057 : Wait ends after 1 loop, dataready = 1, delay = 0
  07:59:42:057 : Received response from target: 0xd0
  07:59:42:057 : Error: GETID command not acknowledged!
  07:59:42:156 : Chip ID: 0x0 
  07:59:42:157 :  UART PORT CLOSE 

 

Regards

Davide

 

 

 

Since this error is different from the post you originally replied to, I've moved it here. I've asked someone to take a look.

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