HaaS100 OTA使用手册

HaaS 100是一款针对IoT场景的公板,支持OTA功能,OTA为云端一体化技术。HaaS 100 OTA对接的云端为阿里云物联网平台,设备端搭载的是AliOS Things OTA技术。

功能列表

HaaS 100主要功能列表如下:

  • 乒乓升级

    固件可在两个分区运行,支持固件版本回退,保证设备安全。

  • 断点续传

    弱网环境下,支持固件从断点处继续下载。

  • 固件验签

    固件可在云端或用本地签名工具进行数字签名,设备端可完成对固件验签。

  • HTTPS下载方式

    除支持HTTP下载外,还支持HTTPS下载方式。

  • MD5/SHA256固件完整性检验

    为保证固件完成性,固件下载完成后,都有完整性校验。

  • 网关子设备升级

    当HaaS 100做网关时,HaaS 100 OTA除支持网关本身的升级外,也支持其子设备的升级。 升级操作流程如下:

使用流程

HaaS 100搭载的是AliOS Things物联网操作系统,编译环境支持Windows和Linux。下面以ota_demo为例介绍在Linux环境使用HaaS 100 OTA的过程。

  1. 执行以下命令选择app和board。

    # 清除之前配置
    $ aos make distclean
    # 配置app为ota_demo,board为haas100
    $ aos make ota_demo@haas100 -c config
  2. 配置固件版本号。

    1. 输入命令:aos make menuconfig

    2. 选择Application Configuration > Firmware Version

    3. 根据需求修改版本号。image

    4. 返回主界面。

  3. 选择Middleware Configuration > -*- OTA Features > OTA Features Configurationimage

    完成配置后,保存并退出。

    参数说明如下:

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

    编译命令:aos make编译完成后,生成的固件在platform/mcu/haas1000/release/write_flash_gui/ota_bin目录下,根据前面的烧录文档,先将固件烧录到HaaS 100板子上,重启板子,打开串口终端,配置串口波特率为:1500000,连接终端,如果第一次使用板子,需要配置设备的证书信息,在终端输入:identity set pk ps dn ds,然后配网,在终端输入:netmgr connect wifi_ssid wifi_password ,连网成功后,登录物联网平台可以看到对应的设备在线。

  5. 编译上云固件及云端操作。

    说明

    执行本操作时需确保设备已连接至物联网平台。

    本地烧录完成后,需要做一个高版本固件上传到云端,通过云端操作完成固件的升级,所以需要按照步修改固件版本号,再按照步骤4编译固件,生成高版本的固件,然后登录物联网平台,选择监控运维 > OTA 升级 > 添加升级包,上传固件。

    参数选择说明如下:

    参数

    说明

    升级包类型

    选择整包。

    升级包名称

    待升级固件的名称,自定义。

    所属产品

    下拉菜单选择固件所属产品。

    升级包模块

    选择模块,没有子模块选择default。

    升级包版本号

    填入待升级固件的版本号。

    签名算法

    建议选择SHA256。

    选择升级包

    上传待升级的固件。

    升级包是否需要平台验证

    选择是。

    单击确定开始固件升级,升级结果可以单击查看获取升级详详情。