cancel
Showing results for 
Search instead for 
Did you mean: 

MCUBoot on nucleo H563

srberard
Associate
Hello,
I'm working with the nucleo_h563zi board and Zephyr (3.6).  I'm trying to build using MCU Boot and firmware update. I  have been able to successfully build MCUBoot and flash it to the device. That boots but fails with the "Unable to find bootable image" which is expected as there is no application flashed at this point. Next, I am able to build and flash my application to the board.  I'm using the Zephyr Blinky sample as a minimal test.  I've made sure to configure the partitions and MCUBoot options correctly. When I flash it to the board, however, I get the following error:

Memory Programming ...
Opening and parsing file: zephyr.signed.hex
File : zephyr.signed.hex
Size : 20.02 KB
Address : 0x08010000


Erasing memory corresponding to segment 0:
Erasing internal memory sectors [8 10]
Download in Progress:
██████████████████████████████████████████████████ 100%

File download complete
Time elapsed during download operation: 00:00:00.674

RUNNING Program ...
Address: : 0x8000000
Warning: The core is locked up
Start operation achieved successfully

 
As can be seen above, the core locks up.  From that point on the board is unresponsive. Resetting, cycling power, etc. all result is nothing showing up on the console.  All of the board options are stock.  I've not changed any of the option bytes, boot parameters, etc.  I am able to build without MCU Boot and flash to the device; this works without issue.
 
Any ideas as to what is causing this or how to troubleshoot this?
 
Thank you in advance,
Stephen
1 ACCEPTED SOLUTION

Accepted Solutions
srberard
Associate

I managed to sort this out.  As it turns out,  the boards.cmake file (in the Zephyr boards directory for the specific board) includes the --erase option.  This prevents the board from flashing properly when you have multiple flash operations.  Removing this option resolved my issue.  

There is an issue opened in Zephyr tracking this.  See https://github.com/zephyrproject-rtos/zephyr/issues/69582 for more details.

View solution in original post

1 REPLY 1
srberard
Associate

I managed to sort this out.  As it turns out,  the boards.cmake file (in the Zephyr boards directory for the specific board) includes the --erase option.  This prevents the board from flashing properly when you have multiple flash operations.  Removing this option resolved my issue.  

There is an issue opened in Zephyr tracking this.  See https://github.com/zephyrproject-rtos/zephyr/issues/69582 for more details.