1 登錄並進入開發者中心
5 驗證升級
2 遠程升級OTA入口
6 添加差分包
3 選擇遠端升級類型
7 添加升級設備
4 上傳固件包到平台
8 設備端API的調用
OneNET平台提供固件升級服務,首先需要確保設備端支援OTA服務,然後在OneNET平台上傳新的固件包,設備檢測到升級任務,即可完成線上升級。本部分內容將為您介紹如何設置固件升級和管理固件。
1、 如果您使用設備端SDK,請參考OneNET提供的SDK;
2、 如果使用線上差分進行升級,需要繼承相應的差分還原SDK,詳情請諮詢陳經理(13983745042)。
升級流程圖:
說明:為提供更好的服務,OneNET平台OTA2.0版本改版了原固件升級,新增了產品管理升級包。首次進會將OTA1.0版本新增的升級包預設添加到某個產品下進行關聯。
參數 | 描述 |
---|---|
升級名稱 | 1-20個中文、英文、數字、空格、或半形符號,升級名稱不能重複 |
選擇產品 | 下拉清單選擇需要升級的設備所屬產品,若沒有產品,請在OneNET平台基礎服務中新增一個產品,如圖2所示 |
廠商名稱 | 根據設備所使用模組選擇廠商名稱,如果下拉清單中沒有所需的模組,選擇其他 |
模組型號 | 根據設備所使用模組選擇對應的型號,如果下拉清單中沒有所需的型號,選擇其他 |
目標版本 | 1-20個英文、數字、點號、連接子和底線 |
上傳升級包 | 選擇需要升級的完整包,並上傳,這裡升級包檔案名不支持中文 |
參數 | 描述 |
---|---|
升級包 | 完整包:進行完整包驗證; 差分包:進行差分包驗證,需要提前上傳或者線上生成對應的差分包(詳情見STEP 6) |
選擇設備 | 選擇用於驗證升級的設備(如果點擊“選擇設備”,提示沒有設備,說明目前該產品下還不存在設備,或者存在設備但是並沒有上報過版本號) |
待升級版本 | 如果選擇差分包驗證,這裡選擇差分升級的起始版本(即設備的當前版本號) |
固件上傳至OneNET平台後,需要使用少量設備對固件進行驗證,確保測試設備升級成功後,才能批量升級。
也可以按一下“跳過驗證”按鈕跳過驗證(不建議這樣操作)。
1)首先需要確認該差分包的初始版本和目標版本已存在,如圖8所示的清單中的“目標版本”欄位。
2)若該差分包的初始版本或目標版本不存在,可通過圖8右上角添加升級包按鈕添加版本(一次只能添加一個版本,若要創建初始版本和目標版本,請添加兩次)。
3)若差分包的初始版本和目標版本均已存在,具體操作如下:
參數 | 描述 |
---|---|
升級名稱 | 升級任務名稱,自動填充 |
對應產品 | 自動填充 |
目標版本 | 自動填充 |
製作差分包 | 線上自動差分:如果需要使用OneNET平台的差分能力,需要在設備端繼承平台提供的差分還原SDK; 手動上傳差分包:用戶如果使用自己的差分能力,可以選擇手動上傳差分包。 |
初始版本 | 差分升級的起始版本,也就是當前設備的版本號 |
(2) 在添加待升級設備對話方塊中輸入對應參數值。
參數 | 描述 |
---|---|
初始版本 | 下拉清單選擇需要升級的設備版本範圍 |
升級範圍 | 在選擇了初始版本後,是對版本號下所有設備進行升級,還是選擇部分設備進行升級 |
升級方式 | 整包,差分 |
升級時機 | 立即升級:升級任務立即生效; 定時升級:升級任務在到達指定時間後生效 |
重試策略 | 不重試; 重試:選擇對應的重試次數和重試時間就間隔;這裡只是將策略通知到終端,由終端設備控制 |
信號強度 | 通知到終端,由終端控制 |
剩餘電量 | 通知到終端,由終端控制 |
(3) 新建的待升級設備,如下圖所示:
(1)上報版本
設備上報當前固件版本號,設備在首次進行升級時需要執行此步驟。
示例:
curl -XPOST
-H "Content-Type:application/json"
-H "Authorization:version=2018-10-31&res=products/33704&et=2529385073&method=sha1&sign=RccQWjT1n5OJ2khw3M4aPckkiFs="
-d '{"f_version": "4.0"}'
"http://ota.heclouds.com/ota/device/version?dev_id=32981907"
(2)檢查設備升級任務
示例:
curl -XGET
-H "Content-Type:application/json"
-H "Authorization:version=2018-10-31&res=products/33704&et=2529385073&method=sha1&sign=RccQWjT1n5OJ2khw3M4aPckkiFs="
"http://ota.heclouds.com/ota/south/check?dev_id=32981907&manuf=001&model=00108&type=1&version=4.0&cdn=false"
(3)檢測token有效
該步驟可選。如果上一步成功檢查到升級任務,得到任務和升級包相關資訊,設備拉取升級包時,OneNET平台通過token進行校驗,並且上一步返回的token只有48小時的有效期,所以這裡客戶在使用時最好提前校驗一下token是否有效。
示例:
curl -XGET
-H "Authorization:version=2018-10-31&res=products/33704&et=2529385073&method=sha1&sign=RccQWjT1n5OJ2khw3M4aPckkiFs="
"http://ota.heclouds.com/ota/south/download/ota_MTuflbjJDBclqltMlXX6/check?dev_id=32981907"
(4)下載資源
token檢測成功後,設備即可從平台獲取升級包,完成升級包下載,遠端升級OTA支持分片下載。
示例:
curl -XGET
-H "host:ota.heclouds.com"
-H "Range:50500-50999"
"http://183.230.40.50:80/ota/south/download/ota_KUuCwrPAjYj4tCr6Bcdl"
(5)上報升級狀態
設備上報當前資源下載進度和升級狀態。
示例:
curl -XPOST
-H "Content-Type:application/json"
-H "Authorization:version=2018-10-31&res=products/33704&et=2529385073&method=sha1&sign=RccQWjT1n5OJ2khw3M4aPckkiFs="
-d '{"step":100}'
"http://ota.heclouds.com/ota/south/device/download/ota_MP9qVOT0AtsHhUSNYMy7/progress?dev_id=32981907"