跳到主要内容

固件升级

功能概述

为实现对设备固件版本的维护,上云API 支持用户通过云端对机巢与飞行器进行固件升级。用户可以实施单次升级以及批量升级、升级提示、升级进度的展示等。

为实现固件升级功能,需要用户预先下载所需的固件安装包。用户需要将固件安装包、固件版本等信息自行维护在云端服务器中。设备上报的固件属性信息与云端的固件包信息进行比对,判断是否需要固件升级。在云端下达固件升级命令时,需要在协议中补充升级设备的序列号、固件版本号、固件升级文件的存储地址、以及固件升级的类型等。设备可以通过固件升级进度命令中的percentstep_key参数得到固件升级的进度和当前步骤。具体请按照接口详细实现中的内容在云端 API 进行详细查阅。

注意:

  • 通过固件升级物模型属性上传,firmware_version和最新固件的版本号对比,可以用来判断是否需要普通升级。

交互时序图

接口详细实现

  • 机巢物模型属性

  • 固件升级

    • 固件属性上报
      固件升级功能会上报设备固件版本号 - firmware_version属性字段。firmware_version和最新固件的版本号对比,可以用来判断是否需要普通升级。

    • 固件升级任务下发
      云端下发的固件升级 API 需要完成设备的序列号、固件升级包相关信息以及固件升级类型的填充。

    • 固件升级进度
      设备上报固件升级进度到云端,通过字段的获取,可以在云端可视化界面呈现升级进度、升级进度百分比以及当前升级的步骤等关键信息。通过固件升级进度API的ota_progress字段来判断是否正在升级中。