乐鑫技术交流
直播中

好名字

9年用户 866经验值
擅长:可编程逻辑
私信 关注
[问答]

请问ESP32S3的OTA过程是否支持保存烧写进度,掉电重启后从掉电前位置开始烧写?

请问ESP32S3的OTA过程是否支持保存烧写进度,掉电重启后从掉电前位置开始烧写?

例如OTA数据共需要20帧进行传输,传输了10帧数据并通过esp_ota_write()函数烧写成功之后,ESP32重启,重启后能否从第11帧开始传输并继续OTA过程?

回帖(1)

张龙祥

2024-6-5 15:48:11
ESP32S3 的 OTA(Over-The-Air,空中下载升级)功能允许用户通过无线网络远程升级设备的固件。然而,ESP32S3 的 OTA 过程并不支持在掉电重启后从掉电前的位置开始烧写。

当 ESP32S3 执行 OTA 升级时,它会将新的固件数据写入到设备的闪存中。在 OTA 过程中,如果设备掉电重启,烧写进度将不会保存。这意味着在设备重启后,OTA 过程将从头开始,而不是从掉电前的位置继续。

为了解决这个问题,您可以采取以下措施:

1. 增加设备的电源稳定性:确保设备在 OTA 过程中有足够的电源供应,以避免因掉电而导致的升级失败。

2. 使用更可靠的 OTA 传输协议:选择一个更可靠的 OTA 传输协议,以减少在传输过程中出现错误的可能性。

3. 考虑使用其他升级方法:如果 OTA 升级对您的应用至关重要,您可以考虑使用其他升级方法,例如通过 USB 或串口进行固件升级。

总之,ESP32S3 的 OTA 过程在掉电重启后不支持从掉电前的位置继续烧写。为了确保 OTA 升级的成功,您需要采取措施提高设备的电源稳定性和传输协议的可靠性。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分