全部產品
Search
文件中心

IoT Platform:裝置OTA升級失敗問題

更新時間:Jun 30, 2024

本文介紹裝置OTA升級失敗的原因分析和解決方案。

裝置升級逾時

問題描述

在物聯網平台控制台的監控營運>OTA升級頁面,發起升級批次任務時,設定了裝置升級逾時時間。當裝置第一次上報升級進度時就會觸發計時,超出裝置升級逾時時間,裝置未完成升級,物聯網平台判斷裝置OTA升級失敗。

可能原因

  • 裝置所屬網路環境不穩定,下載OTA升級包時間超過裝置升級逾時時間

  • 裝置第一次下載OTA升級包失敗或升級失敗,裝置重啟後擷取物聯網平台推送的升級任務,重新開始下載OTA升級包並升級,最終升級成功時間長度超過裝置升級逾時時間

解決方案

設定較長的裝置升級逾時時間(例如1小時以上),或不設定裝置升級逾時時間,提升裝置OTA升級成功率。

說明

僅動態升級的批次任務中,支援修改裝置升級逾時時間,且可修改多次,修改後的裝置升級逾時時間僅對增量裝置的升級任務生效。

裝置上報錯誤版本

問題描述

在物聯網平台控制台的監控營運>OTA升級頁面,發起升級批次任務時,設定了待升級版本號碼。當裝置開始下載升級包或開始升級,上報升級進度後,裝置離線再上線且上報的版本,既不是源版本,也不是目標版本,物聯網平台判斷裝置OTA升級失敗。

可能原因

裝置進行OTA升級(例如從源版本1.0升級到目標版本1.1)時,在裝置連網狀態下,同時進行了本地韌體更新(目標版本為1.1.1),裝置本地韌體更新完成會上報韌體版本1.1.1,與物聯網平台發起升級的版本不一致(既不是1.0也不是1.1)。

解決方案

裝置有本地韌體更新的操作時,需要先將裝置斷網,完成本地韌體更新,然後再上線並上報版本。裝置上線和上報版本的時間間隔需要控制在2秒內完成。

您可在物聯網平台控制台的監控營運>OTA升級頁面,發起升級批次任務時,設定升級重試上限次數,例如5次。當裝置上報錯誤版本後,物聯網平台根據設定的升級重試上限次數,允許裝置再次升級,直至升級重試次數用完。此方法可提升裝置OTA升級成功率。

裝置上報錯誤進度

問題描述

裝置升級過程中通過升級進度的Topic,向物聯網平台上報進度-1(升級失敗)、-2(下載失敗)、-3(校正失敗)或-4(燒寫失敗),物聯網平台判斷裝置OTA升級失敗。

可能原因

裝置在升級過程中,可能會出現多種升級異常。因此,裝置端會上報已定義的錯誤進度值(-1、-2、-3、-4)和自訂描述,用於裝置OTA升級後的失敗原因分析。

上述-1、-2、-3、-4的描述是物聯網平台定義的預設值,支援修改。即裝置端可上報符合裝置升級實際情況的錯誤描述資訊。

解決方案

在物聯網平台控制台的監控營運>OTA升級頁面,發起升級批次任務時,設定升級重試上限次數,例如5次。

當裝置上報錯誤進度後,物聯網平台根據設定的升級重試上限次數,允許裝置再次升級,直至升級重試次數用完。此方法可提升裝置OTA升級成功率。

裝置升級衝突

問題描述

同一時間,一個裝置只能處於一個升級批次任務中。此時,對該裝置再次發起新的升級批次任務,導致裝置OTA升級的新任務與原任務出現升級衝突,物聯網平台判斷裝置OTA升級的新任務升級失敗。

可能原因

對進行中OTA升級的裝置,再次發起升級批次任務時,選中了是否覆蓋裝置之前的升級任務

解決方案

  • 在物聯網平台控制台的監控營運>OTA升級頁面,發起升級批次任務時,設定是否覆蓋裝置之前的升級任務

  • 在物聯網平台控制台,OTA升級的批次詳情頁面,取消待推送、已推送、升級中的任務後,再對該裝置發起新的批次升級任務。

重要

升級中的裝置OTA升級任務,不支援被覆蓋,僅支援取消。