Replies: 2 comments
-
Users found a big bug on MCUboot and Flash Encryption and a solution is under way. Also, upgrading from pre-4.0 releases to 4.x releases is indeed difficult. There were lots of fixes and optimizations. If you are using Flash Encryption, than besides the changes you also get to deal with the bug to be fixed by the PR above. And if you are using a device that was self encrypted, you cannot overwrite the bootloader with normal flash command and cable. It will brick the device. The only alternative I see is by using something similar to the esp-self-reflasher to re-write the current MCUboot with a new one. Be aware that the self reflashing method unfortunately creates a small window (less than 10 seconds) where power cannot be turned off. |
Beta Was this translation helpful? Give feedback.
-
@Qtran1511 Were you able to move on with this? What is the current status? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
I have been working on a product using ESP32 with mcuboot loader - flash encryption, using version 3.6.0. This product has already been launched for a while and a lot of it are already on the field. Now, as part of maintaining and developing process, I wish to migrate from 3.6.0 to 4.1.0 so more features can be added, and some bug can be potentially fixed. The most important thing for this job is to make sure that those devices already deployed out there can be upgraded using mcuboot that was built on v3.6.0. I've played a around with the custom linker script to at least successfully compile the code, but when load it into ESP32, the boot loader doesn't happy with the firmware I have:
This is my flash dts setup to ensure consistency between version:
For the linker script, I took the default.ld from v4.2.0 to add dram1_0 section for noinit data so that I wouldn't run out of memory, tweak a bit as well to match the flash offset with v3.6.0:
I'm seeking some advice here to see if there is any solution or workaround for this. Building a new mcuboot probably a better option but of course cannot overwrite bootloader for those devices on the field.
Beta Was this translation helpful? Give feedback.
All reactions