2025-11-19 1:17 AM - edited 2025-11-19 1:19 AM
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.0Then, 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 ?