User Tools

Site Tools


esp32_ota

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
esp32_ota [2024/03/19 18:47]
sausage [The stock firmware]
esp32_ota [2024/03/20 01:50] (current)
sausage [ESP32 OTA and Rollbacks - What happens under the hood?]
Line 5: Line 5:
 Over The Air (OTA) provides a way to send firmware to your ESP32 board in the field without the need for a cable and physical access to the device. Over The Air (OTA) provides a way to send firmware to your ESP32 board in the field without the need for a cable and physical access to the device.
  
-The purpose of this article is manually step through the various stages of the OTA process and illustrate the state of the ESP32 at each stage. ​+The purpose of this article is to manually step through the various stages of the OTA process and illustrate the state of the ESP32 at each stage. ​
  
 Together we will set up a number of firmwares suitable for testing on different partitions in flash memory. Together we will set up a number of firmwares suitable for testing on different partitions in flash memory.
Line 216: Line 216:
   - 4blinks.bin   - 4blinks.bin
  
-Now the ''​idf.py flash''​ command is only able to flash the default project firmware to the ''​factory''​ partition. So we'll need to switch to a different command to flash a named firmware to a particular partition.+Note that the ''​idf.py flash''​ command is only able to flash the default project firmware to the ''​factory''​ partition. So we'll need to switch to a different command to flash a named firmware to a particular partition.
  
 Take another look at our partitions table. Take another look at our partitions table.
Line 470: Line 470:
 All our firmwares failed to run the ''​esp_ota_mark_app_valid_cancel_rollback()''​ to mark the ''​otadata''​ as valid. So in each case, they have become aborted and rolled back to the previously known good firmware. All our firmwares failed to run the ''​esp_ota_mark_app_valid_cancel_rollback()''​ to mark the ''​otadata''​ as valid. So in each case, they have become aborted and rolled back to the previously known good firmware.
  
-The ''​factory''​ firmware isn'​t ​controlled ​by the ''​otadata'',​ the rollback process or OTA at all.+The ''​factory''​ firmware isn'​t ​affected ​by ''​otadata'', ​or the rollback processor OTA at all.
  
 To finish up, let's take a last look at the raw otadata: To finish up, let's take a last look at the raw otadata:
Line 515: Line 515:
  
 ===== Thank yous ===== ===== Thank yous =====
-Many thanks to boarchuz and craig from the [[https://​discord.gg/​wwK29JJV|Espressif MCUs]] discord server for their advice on details in this article.+Many thanks to boarchuz and craig from the [[https://​discord.gg/​wwK29JJV|Espressif MCUs]] discord server for their assistance with this article.
  
esp32_ota.1710874048.txt.gz ยท Last modified: 2024/03/19 18:47 by sausage