-
Notifications
You must be signed in to change notification settings - Fork 1.1k
OTA Diff Tools User Guide
AliOS Things OTA不仅提供云端一体化的基础的整包升级能力,还能提供更高阶的差分升级能力(对bin文件差分算法压缩率低于35%)。差分升级是将老版本和新版本取差异部分进行增量升级,可以极大的减少下载包的流量,同时能节省存储升级固件的ROM存储空间。
此文档针使用AliOS Things OTA的芯片开发人员,版本基线为github:https://github.com/alibaba/AliOS-Things.git 分支:rel_3.0.0。
1). 准备好老版本old.bin和新版本new.bin文件
2). 下载本地差分命令行工具ota_nbdiff和ota_nbpatch
3). 使用如下命令行工具ota_nbdiff制作生成差分包文件diff.bin,并将如下diff.bin文件上传到阿里云物联网平台,填下的版本号为新固件new.bin的版本号,其他升级流程跟阿里云物联网平台整包升级一致。
##### ota_nbdiff
old.bin new.bin diff.bin
4). 执行如下命令行工具ota_nbpatch将老版本old.bin文件和差分包文件diff.bin还原生成新版本文件new1.bin, 将还原的new1.bin和原始的new.bin文件进行比对一致说明生成差分包正确。
##### ota_nbpatch
old.bin new1.bin diff.bin
1).下载AliOS Things源码后自带差分工具在目录下:build/cmd/linux32 or linux64
##### git clone https://github.com/alibaba/AliOS-Things.git
-b rel_2.1.1
2). 执行如下命令安装 aos-cube 工具(临时测试用,正式版本待发布):
##### sudo pip2 install -i http://10.101.74.181/ --trusted-host 10.101.74.181 -U
aos-cube==0.3.4b3
3). 编译AliOS Things源代码产生老版本old.bin和新版本new.bin文件
##### aos make
linkkitapp@mk3060 –c config
##### aos make
4). 使用如下AliOS Things aos-cube命令行工具制作差分包文件,默认会在当前目录生成diff.bin差分包文件,并将如下diff.bin文件上传到阿里云物联网平台,填下的版本号为新固件new.bin的版本号,其他升级流程跟阿里云物联网平台整包升级一致。
##### aos ota diff old.bin
new.bin
5). 执行如下命令行将差分包文件diff.bin和老版本old.bin文件还原生成新版本文件new1.bin, 将还原的new1.bin和原始的new.bin文件进行比对一致说明生成差分包正确(这里是模拟板子运行,注意还原校验的原始固件不能超过8M)。
##### aos ota patch old.bin
new1.bin diff.bin
使用如下工具命令生成压缩bin文件ota.bin.xz,工具在目录build/cmd/win32 or linux32 or linux64
| Home | Tutorial | Hardware | Porting Guide | Utilities | API Reference | Technical Docs | Certification |
Crafted with ❤️ by AliOS Things Team.