ESP32那些事兒 九 功能開發之OTA功能

2021-08-20 18:18:01 字數 633 閱讀 3782

1、公升級策略

從前面對bootloader的分析中,我們知道esp32的ota公升級基本上也是可靠的,可靠的意思是即使公升級失敗,寫入image不完整,裝置還是可以用的。

對於ota公升級,大家印象比較深刻的就是android手機的公升級,android手機的公升級確實是比較完善和健壯的,對於iot裝置來說,也沒有差分image的機制,所以只要簡單有效即可。

後來我們確定的方案就是後台靜默強制公升級,裝置連上網後,只有檢查有新版本,就會在後台強制公升級,對使用者來講是無感的。

那這時候就會有另外乙個問題,通常這種裝置和使用者的互動非常有限,既沒有與介面,又沒有按鍵聲音這些複雜的提醒等操作,那如何知道乙個裝置是什麼版本,裝置公升級是否成功呢?我們的解決方法是在伺服器端記錄。

2、同時在檢查新版本的請求中,帶上目前版本號,伺服器記住裝置的mac位址和目前的版本,那我們就知道那些版本有那些裝置公升級成功了,同時也知道最新的版本有哪些裝置公升級成功了。

ok,實驗證明整體策略簡單有效!我寫的比較簡略,大家也可以一起**。

2、版本比對

為了節省資源,可以在系統每一次重啟,並且成功聯網後,檢查是否有新版本。

公升級寫入檔案esp32有一些自己的api,可以幫助我們簡化一些邏輯。

ESP32模組比較

esp32系列無線ic是樂鑫espressif出品的價效比高的藍芽wifi雙模ic。官網 最詳細的手冊文件為 esp32 technical reference manual cn.pdf 將官方和一些其他方的模組列表比較,包括資源,也把晶元放進去。esp32單核晶元用的少沒有列出。可以看出,安信可...

ESP32 學習記錄

首次接觸freertos和espressif的產品,例如我,那還是要先來個整體印象,然後再逐個深化。做專案的都知道,老闆們是不允許我們四平八穩的研究完然後再開始專案。那也不妨礙咱們要有自己的節奏,既要平衡專案的進度,也要按照事情的規律來做事情 這就需要快速的準備一些預備知識,磨刀不誤砍柴功,倉促上陣...

esp32啟動流程

步驟 1 固化在esp32 rom 中的 boot1 從 flash 0x1000位址處 載入boot2 至ram iram dram 中。2 boot2從 flash 中載入partitions.csv 和 image.bin 至記憶體中,image.bin 中包含了 ram 段和通過 flash...