?最近有客戶反饋在鄉(xiāng)村里頻繁出現(xiàn)掉線的情況。
趕緊排查原因!
通過換貨、換SIM卡對(duì)比排查測試,發(fā)現(xiàn)只有去年采購的那批模塊在客戶環(huán)境附近會(huì)出現(xiàn)掉線的情況,而今年采購的模塊批次就不會(huì)掉線。。。
繼續(xù)追究原因,聯(lián)系對(duì)應(yīng)的銷售工作人員,了解到差異就是模塊內(nèi)的固件版本不同。
去年采購的那批模塊版本是:
今年采購的那批模塊版本是:
AirM2M_780E_LTE_AT_V1162
看來是高版本對(duì)網(wǎng)絡(luò)做了優(yōu)化,但在這個(gè)地區(qū)出貨的也有150多臺(tái)設(shè)備了,不可能每個(gè)都單獨(dú)回收回來給模塊用USB燒錄成高版本固件。
所以,不如直接通過FOTA遠(yuǎn)程批量升級(jí)。
一、第一次嘗試升級(jí),出現(xiàn)失敗
從合宙DOC社區(qū)上找到了FOTA遠(yuǎn)程升級(jí)的文檔參考,先用手邊的設(shè)備用合宙IoT平臺(tái)做下測試,看能不能升級(jí)。
什么都配置好了,結(jié)果到最后模塊發(fā)AT+UPGRADE觸發(fā)升級(jí)的時(shí)候,卻老是報(bào)錯(cuò):
+UPGRADEIND: -1003
通過升級(jí)日志查詢結(jié)果是“正在生成版本”?
?
在頁面右上角看到有個(gè)紅色問號(hào)“ ?”,是IoT平臺(tái)的幫助中心,往下滑就看到了升級(jí)日志返回結(jié)果的對(duì)應(yīng)描述。
如下圖示:
?
?
正在生成版本,請(qǐng)稍后再次請(qǐng)求—— 看樣子是版本相差太大了,平臺(tái)內(nèi)部還在做差分包, 那我就等一會(huì)兒再請(qǐng)求看看。
二、第二次嘗試升級(jí),再次出現(xiàn)失敗
保險(xiǎn)起見間隔了30分鐘再次請(qǐng)求,以看到已經(jīng)進(jìn)入下載了,但是結(jié)果卻又出現(xiàn)了:
+UPGRADEIND: -1003
這又是什么原因?!!
?
先去IoT平臺(tái)上看一下升級(jí)日志的結(jié)果是什么,查詢看到顯示的是“ 成功 ”,但實(shí)際上并沒有升級(jí)成功啊,反而還報(bào)錯(cuò)了。
?
緊接著找合宙的技術(shù)人員咨詢了解到, 差分包大小是有限制的,不能大于480KB, 否則會(huì)升級(jí)不成功。
至于IoT平臺(tái)上升級(jí)日志顯示“成功”,原因是這個(gè)成功代表的意思不是模塊升級(jí)成功——而是給予模塊的升級(jí)請(qǐng)求,下發(fā)了升級(jí)文件成功了。
經(jīng)過進(jìn)一步確認(rèn),可以通過合宙自己提供的生成差分包工具的網(wǎng)址,把V1138和V1162的dfota.bin文件放上去,制作一個(gè)差分包看看,到底有多大。
?
等了大概3分鐘左右,差分包制作出來了,點(diǎn)擊下載后,文件大小有550KB,那確實(shí)超出了480KB,升級(jí)不了。
?
?
從合宙的技術(shù)那里還得到了一份AT固件各個(gè)版本之間制作差分包的大小,以及是否可以差分升級(jí)的表格,這方便多了啊。
有數(shù)字的代表是在480KB以內(nèi),可以差分升級(jí)的版本;空白的就是不能升級(jí)的。
差分升級(jí)表格如下圖示:
?
那么通過這張圖來看,例如我當(dāng)前的模塊版本是V1138,需要升級(jí)到1162,對(duì)應(yīng)的交叉格并沒有數(shù)字。
而且V1138升級(jí)到1147的差分包就已經(jīng)到480KB的臨界點(diǎn)了,只能先升到V1147,再升到1162。
?
三、事不過三,第三次升級(jí),成功!
那么,先獲取到V1147版本的固件。
然后搜索得到AirM2M_780E_LTE_AT_V1147,
解壓出來找到:
AirM2M_780E_V1147_LTE_AT.dfota.bin文件,
放到IoT平臺(tái)上面。
?
發(fā)送AT指令走下升級(jí)流程:
?
成功從AirM2M_780E_V1138_LTE_AT,
升級(jí)到了 AirM2M_780E_V1147_LTE_AT。
接下來就是按照步驟,
升級(jí)到 AirM2M_780E_V1162_LTE_AT版本。
?
?
編輯
?
四、總結(jié)及建議
從以前的老固件做升級(jí),很重要的一點(diǎn)—— 要考慮到模塊內(nèi)部對(duì)差分升級(jí)所分配的FOTA分區(qū)有多少。 如果差分包超過了分區(qū)(Air780E模塊的FOTA分區(qū)看來就是480KB了),超出肯定是升級(jí)不了的。
緊接著和領(lǐng)導(dǎo)做了匯報(bào),在本地測試了Air780E模組FOTA升級(jí)可以了,流程也寫好了,先找了5臺(tái)在外的設(shè)備遠(yuǎn)程升級(jí),測試一下看升級(jí)后掉線的現(xiàn)象也確實(shí)減少了,那說明固件沒問題。掉線的麻煩事,也完美解決了!
如果你在項(xiàng)目開發(fā)中也遇到類似問題,記得一定一定要先注意差分升級(jí)FOTA分區(qū)大小。
?審核編輯 黃宇
-
遠(yuǎn)程升級(jí)
+關(guān)注
關(guān)注
0文章
21瀏覽量
8211 -
FOTA
+關(guān)注
關(guān)注
0文章
23瀏覽量
7707
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論