?今天我們學習Air780E快速入門之固件的遠程升級,小伙伴們,學起來吧!
一、生成差分包
合宙的遠程升級支持使用合宙云平臺和自建服務器,此例程使用的是合宙云平臺。
1.1 準備新舊版的core和腳本.
關于需要升級的core(固件),需要注意的點有:
1.1.1 需要 V1103及以上的固件。
1.1.2 需要 LuaTools 2.1.89(LuaTools工具的版本,可以在工具左上角看到) 及以上的升級文件生成。
1.1.3 新版core的版本號必須大于舊版core。
?
1.1.4 新舊版core的支持功能相同,因為功能不同的core 的文件系統地址可能不同,如果升級的話可能導致程序異常。
?
1.1.5 程序中需要保證新舊版本的PROJECT相同,新版本的版本號VERSION大于舊版,PRODUCT_KEY和云平臺保持一致。
?
1.2 使用Luatools生成bin差分包
1.2.1 生成量產文件
在Luatools中選擇新版的core,和更改了version的腳本文件,然后生成量產文件:
?
?
1.2.2 在選擇生成量產文件的目錄中,找到bin文件。
?
1.2.3 生成差分包
首先在Luatools中找到差分工具。
?
然后選擇舊版的core,生成的新版量產文件,最后點擊開始生成差分文件。
?
二、云平臺配置
2.1 云平臺新建項目
2.1.1 進入IoT界面,新建項目
?
?
2.1.2 復制項目key到腳本代碼中
?
然后我們先去準備一個差分包。
2.2 云平臺添加差分包
進入云平臺,選擇本項目的固件列表。
?
?
三、編寫腳本
3.1 等待聯網
3.2 用于fota升級的函數。
--[[ @param1 回調函數
]]
libfota.request(fota_cb)
3.3 fota升級的回調函數, 當回調函數中傳入的值為0時,重啟模塊。
function fota_cb(ret)
if ret == 0 then
rtos.reboot()
end
end
3.4 定時查詢是否有遠程升級
sys.timerLoopStart(libfota.request, 3600000, fota_cb)
四、燒錄代碼到硬件
4.1 正確連接電腦和4G模組電路板
使用帶有數據通信功能的數據線,不要使用僅有充電功能的數據線;
4.2 識別4G模組的boot引腳
在下載之前,要用模組的boot引腳觸發下載, 也就是說,要把4G模組的boot引腳拉到 1.8v,或者直接把boot引腳和VDD_EXT引腳相連。我們要在按下BOOT按鍵時讓模塊開機,就可以進入下載模式了。
具體到 Air780E開發板,
4.2.1 當我們模塊沒開機時,按著BOOT鍵然后長按PWR開機。
4.2.2 當我們模塊開機時,按著BOOT鍵然后點按重啟鍵即可。
4.3 識別電腦的正確端口
判斷是否進入BOOT模式:模塊上電,此時在電腦的設備管理器中,查看串口設備, 會出現一個端口表示進入了boot下載模式,如下圖所示:
?
當設備管理器出現了3個連續數字的com端口,并且每個數字都大于4,這時候, 硬件連接上就緒狀態,恭喜你,可以進行燒錄了!
4.4 新建項目
首先,確保你的 LuaTools 的版本,上大于 2.2.13 版本的。
在 LuaTools 的左上角上有版本顯示的,如圖所示:
?
LuaTools 版本沒問題的話, 就點擊 LuaTOols 右上角的“項目管理測試”按鈕,如下圖所示:
這時會彈出項目管理和燒錄管理的對話框,如下圖:
新建一個項目
注意:這里截圖使用的hello world項目的燒錄教程,燒錄的時候要將腳本換成本次demo的。
?
4.5 開始燒錄
選擇780E板子對應的底層core和剛改的main.lua腳本文件。下載到板子中。
?
?
點擊下載后,我們需要進入boot模式才能正常下載,在(3)(4)小節已經介紹了如何進入boot模式。
?
五、驗證功能
啟設備后會自動升級差分包
?
查看升級日志
?
六、常見問題
- 要升級的core的版本大于舊版本
- 腳本中PROJECT保持一致,VERSION版本號大于舊版
- 升級時的錯誤可以查看升級日志
?
好了,以上就是今天的內容,Air780E快速入門之固件的遠程升級,你學會了嗎?
?審核編輯 黃宇
-
固件
+關注
關注
10文章
550瀏覽量
22971 -
低功耗
+關注
關注
10文章
2362瀏覽量
103595 -
遠程升級
+關注
關注
0文章
21瀏覽量
8200
發布評論請先 登錄
相關推薦
評論