阿里云物联网平台为设备提供OTA升级与管理服务。本文介绍通过配置C Link SDK,帮助设备实现OTA升级功能。
前提条件
- 已获取设备认证信息。
- 已获取C Link SDK。
定制SDK时,在SDK定制页面的高级能力区域,选中OTA。
- 已准备开发环境。
背景信息
- 物联网平台OTA升级功能的更多信息,请参见物联网平台OTA概述。
- OTA升级相关的Alink数据格式,请参见OTA升级。
功能原理
为了实现OTA升级,应用程序与物联网平台的连接协议必须为MQTT,而升级包的下载协议支持HTTPS和MQTT:
- HTTPS
- 支持下载含单个或多个升级文件的OTA升级包。
- 该功能API的详细信息,请参见aiot_ota_api.h。
- 如下功能时序图,以设备的应用程序./demos/fota_posix_demo.c和./demos/fota_multi_file_demo.c为例,介绍应用程序实现该功能的流程。
- MQTT
- 仅支持下载含单个升级文件的OTA升级包。
- 如下功能时序图,以设备的应用程序./demos/mota_basic_demo.c为例,介绍应用程序实现该功能的流程。
使用示例
- OTA功能的参考示例,请参见以下例程:
示例文件 设备连接物联网平台协议 升级包下载协议 升级包含文件个数 相关文档 ./demos/fota_posix_demo.c MQTT HTTPS 1个 示例一:示例代码说明 ./demos/fota_multi_file_demo.c 多个 示例二:示例代码说明 ./demos/mota_basic_demo.c MQTT 1个 示例三:示例代码说明 - OTA功能相关错误码,请参见aiot_ota_api.h中的状态码描述。