物联网平台提供OTA升级与管理服务,使用该服务首先要确保设备端支持OTA服务,然后在物联网平台控制台的OTA升级页面,上传新的升级包并指定需要升级的设备。物联网平台会将OTA升级消息推送给设备,设备即可下载OTA升级包,并进行OTA升级。本文主要介绍OTA升级的使用限制和操作流程。

前提条件

使用OTA升级功能前,请确保设备端已完成OTA升级服务开发。

OTA升级说明

表 1. 设备说明
功能项 限制说明
支持的协议 仅支持通过MQTT协议接入物联网平台的设备使用OTA升级功能。
转移设备的OTA升级 公共实例的设备转移场景中,仅支持转移设备的接收方,对转移设备进行OTA升级。
  • 必须由转移设备的发起方,完成升级包的添加和验证。
  • 转移设备的接收方只能查看升级包,以及对转移设备发起OTA升级批次。
  • 仅支持发起升级方式静态升级的批量升级任务。

关于如何进行设备转移,请参见转移设备

分发设备的OTA升级 设备分发到目标实例后,可正常进行OTA升级。
表 2. 升级包说明
功能项 限制说明
升级包 一个阿里云账号下最多可有500个升级包。
文件大小不能超过2,000 MB,且仅支持.bin.tar.gz.zip.gzip.apk.tar.gz格式的文件。
表 3. 升级批次说明
功能项 使用与限制
基于版本升级 限制说明:
  • 静态升级:使用同一个升级包,对不同待升级版本,可分别发起一个或多个静态批次升级。
  • 动态升级:
    • 使用同一个升级包,对同一个待升级版本只能发起一个动态升级批次。
    • 一个设备在一个基于版本的动态升级批次下,最多可匹配升级10次。
    • 使用不同升级包,可对同一个待升级版本发起多个动态升级批次,但仅支持匹配最近发起的一个动态升级批次。
使用说明:一个设备下发起模块升级,设备同一时间只能处于一个正在进行的升级批次中(设备处于待推送、已推送或升级中状态),否则会出现升级冲突。
基于静态分组升级 限制说明:当前日本(东京)和美国(弗吉尼亚)地域下,不支持静态分组升级功能。
使用说明:删除静态分组或移出分组中设备,不影响已存在的OTA升级任务。

设备静态分组的创建和使用说明,请参见创建静态分组

基于动态分组升级 限制说明:
  • 当前仅华东2(上海)地域下,企业版实例和新版公共实例,支持动态分组设备OTA升级。

    公共实例说明,请参见公共实例,设备动态分组的创建和使用说明,请参见创建动态分组

  • 最多可使用5个不同的升级包,对同一动态分组发起升级批次。其中,升级包所属产品可以相同,也可以不同。
  • 使用同一升级包,只能发起一个动态升级批次。对基于版本和动态分组的动态升级批次,发起任一个新的动态升级批次前,必须先取消已存在的动态升级批次。
    说明
    • 若动态分组通过设备OTA模块数据搜索设备,则ota_module.nameota_module.version必须同时使用。
    • 若动态分组不通过OTA模块数据搜索设备,则无需填写ota_module.nameota_module.version
  • 删除动态分组,不影响已存在的OTA升级任务。
使用说明:
  • 创建完动态分组,符合条件的存量设备越多,初始化存量设备的时间越长,最多需要30分钟,建议等待一段时间再发起动态分组的OTA升级。
    说明 发起升级批次后,在物联网平台控制台对应实例下的监控运维 > OTA升级页面,找到对应升级包,进入升级包详情页面,其中目标设备总数,不会立刻与动态分组详情设备总数一致,最终会保持一致,请耐心等待。
  • 设备匹配到动态分组后,仅当匹配上OTA升级条件时,才能被触发升级。例如差分包升级,当设备版本不符合差分包源版本时,不会触发OTA升级。
  • 当设备已在动态分组中时:
    • 若设备行为(上报版本或物模型属性等)再次匹配动态分组条件,不会再次触发OTA升级。
    • 若设备行为先不匹配,然后又匹配动态分组条件,即设备先被移出再被添加到动态分组,此时若设备之前对应的OTA升级任务状态是升级失败,会触发设备重新进行OTA升级。
  • 设备行为匹配到一个动态分组对应的多个升级批次时,物联网平台优先匹配最新发起的动态升级批次,下发给该设备。
    说明 建议多个动态分组不要配置重复或相近的规则,避免设备一次行为同时加入多个动态分组,使设备无法匹配到最新发起的动态批次。

OTA升级流程

  1. 设备端开发OTA升级功能:配置设备远程OTA升级能力。
  2. 添加升级包:为产品添加OTA模块和升级包。
  3. (可选)验证升级包:完成升级包验证,确认验证成功。
    说明
    • 如果升级包中升级包是否需要平台验证选择了,跳过此步骤。
    • 测试设备全部升级成功后,升级包状态显示为已验证,才能进行下一步批量升级。
  4. 发起升级批次任务:物联网平台向设备批量下发升级相关信息(升级包URL、版本、大小等)。
    说明 发起批次任务时,可选择云端主动推送升级为:
    • :物联网平台主动将OTA升级相关信息,推送给在线设备。
    • :物联网平台不会主动推送OTA升级相关信息,设备必须主动向物联网平台发起请求,才能获取已发起的OTA升级相关信息。

      设备端主动检测升级的方法,请参见设备端OTA升级数据格式说明的步骤4。

  5. 设备端OTA升级:设备端获取物联网平台发起的OTA升级相关信息,使用升级包URL下载升级包,完成OTA升级。
    说明 升级包URL有效期为24小时,请及时下载,并完成设备OTA升级。若未在24小时内完成升级包下载,设备端可主动获取升级信息重新下载,请参见下述“设备端不立即下载升级包”场景。

    支持升级场景如下:

    • 设备端立即下载升级包,完成OTA升级。设备端下载升级的方法,请参见数据格式说明的步骤5。
    • 设备端不立即下载升级包,在设备业务空闲时,主动向物联网平台获取已发起的升级相关信息,进行OTA升级。设备端主动检测升级的方法,请参见数据格式说明的步骤4。
  6. 查看升级情况:查看目标设备升级状态、升级包信息等。
  7. 查看升级包版本和成功率:查看升级后的版本分布和成功率分布统计,分析OTA升级失败原因,进而提升设备升级成功率。

相关文档