How to perform OTA operations on ESP32 target with Zephyr 3.5.0 ? #66457
Replies: 2 comments 7 replies
-
ESP32 REV1 is not supported. May or may not be related to your problem, though. |
Beta Was this translation helpful? Give feedback.
-
I have successfully used ESP32-S3 with MCUBoot, where a new FW image is flashed in the secondary partition over a wireless interface, the partition is marked as requested to update in test mode, exactly as you describe you did, and then at next boot the MCUBoot takes care of the swapping. I'm not entirely sure I understand your problem, but if I get it right, you attempted to right a dummy image at the second slot? Perhaps I'm wrong, but I think this will not work. If I remember correctly, a proper image contains certain headers that the MCUBoot checks at boot time, and if not satisfied, the swap process is canceled. I recommend you to try with a proper image. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello community!
I would like to perform OTA on ESP32 with Zephyr.
I have build the hello world example with the following command:
This is generating mcuboot and application. After flashing with
west flash
and starting espressif monitor withwest espressif monitor
I have the following result:Looks not bad until now.
I now wonder how to perform OTA because I don't understand the mcuboot integration. For example after adding mcuboot shell command support I get the following:
I have added few lines of code (
flash_img_init
andflash_img_buffered_write
) to flash fix data (a 16 bytes array with values from 0 to 15) to the second slot and then verified with the shell it was properly done (flash read
at address 0x00110000). This is working.But at the end I added the following in the code, the function succeeds (it returns 0) but there is not effect when the board reboots:
While rebooting the device I would expect to have a failure due to invalid data in the second slot.
It seems that the update slot is not used at all. So my question is: anybody succeeded to do OTA on ESP32, with swap or scratch of the partitions ? What is globally the status of OTA support on Espressif devices ?
#29394 indicates mcuboot is supported. Is it only booting ? @sylvioalves ?
Thanks
Joel
Beta Was this translation helpful? Give feedback.
All reactions