HaaS100 OTA使用手册

1、概述

HaaS100是一款针对物联网场景的开发板,除支持前面介绍的功能外,也支持OTA功能。

OTA为云端一体化技术,HaaS 100  OTA 对接的云端为阿里云物联网平台,设备端搭载的是AliOS Things OTA技术。

主要功能列表如下:
1、支持乒乓升级:固件可在两个分区运行,支持固件版本回退,保证设备安全不变砖;
2、支持断点续传:弱网环境下,支持固件从断点处继续下载;
3、支持固件验签:固件可在云端或用本地签名工具进行数字签名(防止固件被篡改,对固件hash值进行非对称加密),设备端可完成对固件验签(用端侧的公钥对已签名的固件进行验签);
4、支持https安全下载方式:除支持http下载外,支持https下载方式;
5、支持MD5/SHA256固件完整性检验:为保证固件完成性,固件下载完成后,都有完整性校验;
6、支持网关子设备升级:当HaaS 100 做网关时,HaaS 100 OTA 除支持网关本身的升级外,也支持其子设备的升级;
升级操作流程如下:
image

下面以ota_demo为例介绍HaaS 100的OTA如何使用;

2、使用流程

HaaS100 搭载的是AliOS Things物联网操作系统,编译环境支持windows、linux和mac.

下面以linux环境为主介绍使用过程:

2.1、选择app和board

输入命令:

# 清除之前配置
$ aos make distclean
# 配置app为ota_demo,board为haas100
$ aos make ota_demo@haas100 -c config

2.2、配置固件版本号

输入命令:aos make menuconfig, 如下图:
选择顺序:Application Configuration -> Firmware Version根据需求修改版本号,如app-2.0.0等
image

2.3、选择OTA组件及功能

完成步骤二,返回主界面:
选择顺序:Middleware  Configuration  --->-*- OTA Features  --->OTA Features Configuration
image

相关功能介绍如下:

 [ ]     Download Config              # 默认采用初始下载参数,选中可配置下载参数
 [ ]     RSA Verify Support           # 默认不支持固件验签(校验固件是否被篡改),选中支持安全验签功能
 [ ]     Https Download Support       # 默认支持http下载,选中此项将支持https下载模式
 (1024) write flash cache size(bytes) # OTA写flash缓存大小默认是1k,支持自定义
 [ ] OTA via uAgent                   # 默认不支持uAgent模式升级,选中支持uAgent方式升级

如上所列的功能选项如果都没选中,OTA采用系统默认参数配置;

2.4、编译本地烧录固件

编译命令:aos make 编译完成后,生成的固件在platform/mcu/haas1000/release/write_flash_gui/ota_bin目录下。

根据前面的烧录文档,先将固件烧录到HaaS 100板子上。

重启板子,打开串口终端,配置串口波特率为:1500000,连接终端,如果第一次使用板子,需要配置设备的4元组。

在终端输入:identity set pk ps dn ds,输入成功后以后不用再输入 ,然后配网:

在终端输入:netmgr -t wifi -c wifi_ssid wifi_password 连网成功后,登录物联网平台可以看到对应的设备在线:


image

3、编译上云固件及云端操作

本地烧录完成后,需要做一个高版本固件上传到云端,通过云端操作完成固件的升级。

所以需要按照步骤2.2,修改固件版本号。

再按照步骤2.4编译固件,生成高版本的固件。

然后登录物联网平台平台,按如下图顺序操作:
image

点击添加固件后,如下图将platform/mcu/haas1000/release/write_flash_gui/ota_bin/ota_bin/ota_rtos_ota.bin上传到云端:
image

点击确定后,选择验证固件即可开始固件升级;升级结果可以点击“查看”获取详细结果;

设备端通过串口打印的日志也能看到升级成功或者失败的log,最明显的标志是升级成功版本号会更新和云端推送的版本号一致,

失败则版本号不变;物联网平台的OTA操作可参考文档阿里云物联网平台固件升级文档

4、开发者技术支持

如需更多技术支持,可加入钉钉开发者群

更多技术与解决方案介绍,请访问阿里云AIoT首页https://iot.aliyun.com/

猜你喜欢

转载自blog.csdn.net/HaaSTech/article/details/111057345