AliOS Things 3.0 开发:OTA之整包升级使用手册

简介: 本位以物联网平台为例,介绍设备OTA实现

关联文章:AliOS Things 3.0 开发:OTA之压缩升级快速上手

环境准备

获取代码:https://github.com/alibaba/AliOS-Things 分支:rel_3.0.0
选定APP:在AliOS-Things/app/example/中linkkitapp和otaapp都支持OTA功能,本文以linkkitapp为例介绍;
选定board: 在AliOS-Things/board/中有很多板子都支持OTA功能,本文以developerkit为例介绍;
选定云端平台:阿里云有两个平台支持AliOS Things OTA功能:物联网平台智能生活开放平台,本文以物联网平台为例介绍;

使用流程

AliOS Things 支持Windows、Linux、MacOS编译环境,本文以Linux编译环境为例:

  • 选择app和board

输入命令:

# 清除之前配置
$ aos make distclean
# 配置app为linkkitapp,board为developerkit
$ aos make linkkitapp@developerkit -c config
  • 选择OTA组件及功能

输入命令:aos make menuconfig, 如下图:
选择顺序:Middleware  Configuration  --->uAgent Configuration  --->-*- OTA Features  ---> OTA Features


TB1fPHQiKT2gK0jSZFvXXXnFXXa-957-771.png

相关功能介绍如下:

 [ ]     OTA Secure Downloading Mode      # 默认支持http下载,选中此项将支持https下载模式
 [ ]     OTA via uAgent                   # 默认不支持uAgent模式升级,选中支持uAgent方式升级
 [ ]     RSA Verify Support               # 默认不支持安全升级,选中支持安全升级
 (5)     OTA Download Retry Count         # 默认网络异常重试5次,可以根据需要自定义次数
 (20000) OTA Download Timeout(ms)         # OTA下载过程监控时间默认是20s,支持自定义
 (512)   OTA Download Block Size(bytes)   # OTA下载时获取数据buf大小默认是512字节,支持自定义
 (1024)  OTA write flash cache size(bytes)# OTA写flash缓存大小默认是1k,支持自定义
 [ ]     BLE OTA Support                  # BLE OTA功能选项

完成配置后保存退出

  • 编译固件

编译命令:aos make 编译完成后,生成的固件在out/linkkitapp@developerkit/binary目录下,如下图:


TB1IS6SiQL0gK0jSZFAXXcA9pXa-893-240.png

linkkitapp@developerkit.bin烧录到板子上,linkkitapp@developerkit_ota.bin用于上传云端,但上传云端固件的版本号要求高于烧录在板子上的固件版本号,因此需要生成一个高版本的固件;

  • 固件版本号更改及云端操作

更改build/build_rules/aos_target_config.mk文件中的app-1.0.0-为app-2.0.0-编译,如下图:


TB1tnjRiUH1gK0jSZSyXXXtlpXa-929-741.png

复制如上图标记的版本号,登录物联网平台平台,按如下图顺序操作:


TB1q6fNiQL0gK0jSZFAXXcA9pXa-1881-835.png

点击新增固件后,如下图:


TB1eKfUiQL0gK0jSZFxXXXWHVXa-771-808.png

点击确定后,选择验证固件即可开始固件升级;升级结果可以点击“查看”获取详细结果;物联网平台的OTA操作可参考文档阿里云物联网平台固件升级文档 智能生活平台的OTA操作可参考阿里云智能生活开放平台固件升级文档

注:在做OTA之前确保设备端已连接云端


image.png

给AliOS Things一颗STAR(前往GitHub关注我们)

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
7月前
|
传感器 数据采集 安全
AliOS Things组件功能介绍(二)
AliOS Things组件功能介绍(二)
135 0
|
7月前
|
安全 物联网 API
AliOS Things组件功能介绍(三)
AliOS Things组件功能介绍(三)
131 0
|
7月前
|
存储 网络协议 物联网
AliOS Things组件功能介绍(一)
AliOS Things组件功能介绍(一)
161 0
|
7月前
|
物联网 Linux 开发工具
QT移植腾讯云C-SDK结合实现OTA更新
QT移植腾讯云C-SDK结合实现OTA更新
100 0
|
开发框架 安全 AliOS-Things
AliOS-Things 构建系统的介绍|学习笔记
快速学习 AliOS-Things 构建系统的介绍。
361 0
AliOS-Things 构建系统的介绍|学习笔记
|
物联网 Linux
【AliOS Things学习笔记】为你的AliOS Things应用增加自定义cli命令
怎么才能在RTOS系统中,通过 串口shell控制LED的开关。
3583 0
|
物联网 API 调度
AliOS Things 新版文档库上线啦
为了更好的服务开发者,提高开发AliOS Things应用的效率,在2021年4月30日AliOS Things 3.3.0版本开源同时,我们推出了近40万字的AliOS Things新版文档库。新版文档库秉承简单、易懂、方便、提效的原则,提供层次清晰的目录结构、丰富详实的说明内容、简单易用的贡献文档接口以及多个访问入口等新特性。
AliOS Things 新版文档库上线啦
|
IDE 物联网 开发工具
安装IDE并下载AliOS Things代码 引导流程
安装IDE并下载AliOS Things代码 引导流程
安装IDE并下载AliOS Things代码 引导流程
|
监控 NoSQL 安全
开放下载!《AliOS Things快速开发指南》
《AliOS Things快速开发指南》手把手教你从环境准备到线上、线下开发调试,更有两大典型场景实践等你参与。你的物联网开发从这里开始!快来get新技能吧~
30302 0
开放下载!《AliOS Things快速开发指南》
|
NoSQL 物联网
使用线上的开发板做开发调试 |《AliOS Things快速开发指南》
当您手上没有现成可用的开发板时,也可以使用线上的开发板来调试验证您的程序。本文主要介绍线上开发板的使用流程。
使用线上的开发板做开发调试 |《AliOS Things快速开发指南》