cancel
Showing results for 
Search instead for 
Did you mean: 

stm32h563 OEMiROT_Appli_TrustZone failed to update the firmware with the bootloader

ecrin4130
Visitor

Hello,

I am trying to get the OEMiROT example projects running on STM32H563 from "STM32CubeH5\Projects\NUCLEO-H563ZI\Applications\ROT" and this page : https://wiki.st.com/stm32mcu/wiki/Security:How_to_start_with_OEMiRoT_on_STM32H573_and_563%E2%80%93TrustZone_enabled

 

Provisioning works well, unfortunately, I'm blocked on the firmware update step through the internal bootloader. 

After the message 'Start download with STM32CubeProgrammer through supported interfaces (USART/SPI/I2C/USB)', when I connect CubeProgrammer with uart connection, the bootloader seems to work correctly as I received:

Chip ID:0x484
Bootloader protocol version : 4.0

Then, CubeProgrammer freezes for 2 mins and the device is disconnected with this message log:

 

09:54:32 : Error: RDP is set to level 1 or target is held under reset, try using Read UnProtect (-rdu) command in order to remove the Read Out Protection.
09:54:32 : UPLOADING OPTION BYTES DATA ...
09:54:32 :   Bank          : 0x00
09:54:32 :   Address       : 0x40022050 
09:54:32 :   Size          : 176 Bytes
09:54:32 : Timeout error occured while waiting for acknowledgement.
09:54:32 : Error: READ command not acknowledged at address: 0x40022050
09:54:32 : Error: Uploading Option Bytes bank: 0 failed
09:54:32 : Error: Initializing the Option Bytes failed
09:54:33 : Timeout error occured while waiting for acknowledgement.
09:54:33 : Error: GETID command not acknowledged!
09:54:33 : Reemission of GetID command
09:54:33 : Timeout error occured while waiting for acknowledgement.
09:54:33 : Error: GETID command not acknowledged!
09:54:33 : Reemission of GetID command
09:54:33 : Timeout error occured while waiting for acknowledgement.
09:54:33 : Error: GETID command not acknowledged!
09:54:33 : Timeout error occured while waiting for acknowledgement.
09:54:33 : Error: GETID command not acknowledged!
09:54:33 : Reemission of GetID command
09:54:33 : Timeout error occured while waiting for acknowledgement.
09:54:33 : Error: GETID command not acknowledged!
09:54:33 : Reemission of GetID command
09:54:33 : Timeout error occured while waiting for acknowledgement.
09:54:33 : Error: GETID command not acknowledged!
09:54:33 : Warning: Connection to device 0x484 is lost
09:54:33 : Disconnected from device.
09:54:33 : Disconnected from device.

 

I think CubeProgrammer tries to read the option bytes and memory but the bootloader can't as Tz is enabled. 

I have also tried to update with DFU but the enumation failed and the driver is not loaded. 

 

How can I solve this issue ? Do I have to program a custom script to send the firmware to the bootloader without using CubeProgrammer ?

 

 

0 REPLIES 0