阿里云物联网平台设备升级OTA演示

作者:俏巴

概述

OTA(Over-the-Air Technology)即空中下载技术。物联网平台支持通过OTA方式进行设备固件升级。本文以MQTT协议下的固件升级为例,介绍OTA固件升级流程、数据流转使用的Topic和数据格式,并使用MQTT.fx工作作为模拟设备演示整个升级流程。

OTA固件升级流程

1、升级流程图
阿里云物联网平台设备升级OTA演示

2、相关Topic

  • 设备端上报固件版本给物联网平台
/ota/device/inform/${YourProductKey}/${YourDeviceName}
  • 设备端订阅该topic接收物联网平台的固件升级通知
/ota/device/upgrade/${YourProductKey}/${YourDeviceName}
  • 设备端上报固件升级进度
/ota/device/progress/${YourProductKey}/${YourDeviceName}

说明

**- 设备固件版本号只需要在系统启动过程中上报一次即可,不需要周期循环上报。

  • 从物联网平台控制台发起批量升级,设备升级操作记录状态是待升级。
  • 实际升级以物联网平台OTA系统接收到设备上报的升级进度开始。设备升级操作记录状态是升级中。
  • 根据版本号来判断设备端OTA升级是否成功。
  • 设备离线时,不能接收服务端推送的升级消息。
  • 通过MQTT协议接入物联网平台的设备再次上线后,主动通知服务端上线消息。OTA服务端收到设备上线消息,验证该设备是否需要升级。- 如果需要升级,再次推送升级消息给设备, 否则,不推送消息。**
    操作步骤

1、配置MQTT.fx,参考链接;

2、订阅固件升级通知Topic;
阿里云物联网平台设备升级OTA演示

3、管理门户配置批量升级;
阿里云物联网平台设备升级OTA演示

4、设备端获取到订阅信息

阿里云物联网平台设备升级OTA演示

5、设备端汇报升级进度

阿里云物联网平台设备升级OTA演示

_阿里云物联网平台设备升级OTA演示

6、汇报版本号完成固件升级

阿里云物联网平台设备升级OTA演示

阿里云物联网平台设备升级OTA演示

意见或建议

本部分的测试不建议直接使用官方设备端JAVA SDK,SDK默认会做一些固件版本的上报,影响正常测试。建议直接使用开源的MQTT协议的SDK进行Topic的订阅和发布。

参考链接

设备OTA升级

上一篇:基于开源Python MQTT Client连接阿里云IoT


下一篇:玩 High API 系列之:快速实现身份验证