Matter实战系列-----4.matter设备的OTA

news/2024/7/6 0:37:55

一、生成OTA固件升级压缩包

1.1 修改OTA固件版本号为3

 1.2 编译生成 MatterLightOverThread_V3.ota

将编译得到的MatterLightOverThread.s37固件名称改成MatterLightOverThread_V3.s37,复制到以下Windows文件夹

C:\SiliconLabs\SimplicityStudio\v5\developer\adapter_packs\commander

 转换成.gbl文件

commander gbl create ./MatterLightOverThread_V3.gbl --app ./MatterLightOverThread_V3.s37 --compress lzma

复制MatterLightOverThread_V3.gbl到VM VirtualBox共享文件夹,将.gbl文件导入Ubuntu环境,然后复制到matter文件夹

 将.gbl文件转换成.ota 文件

./src/app/ota_image_tool.py create -v 0xFFF1 -p 0x8005 -vn 3 -vs "0.3" -da sha256 MatterLightOverThread_V3.gbl MatterLightOverThread_V3.ota

二、ubuntu环境下升级matter固件

2.1 编译OTA升级程序

./scripts/examples/gn_build_example.sh ./examples/ota-provider-app/linux ./out/debug chip_config_network_layer_ble=false

 2.2 matter设备配网

# 清除 chip tool 的缓存。清除缓存后,OTA Provider 和 Matter 设备需要重新入网。
sudo rm -r /tmp/chip_*
 
# 创建 Thread 网络
sudo ot-ctl dataset init new
sudo ot-ctl dataset networkkey 00112233445566778899aabbccddeeff
sudo ot-ctl dataset extpanid 1111111122222222
sudo ot-ctl dataset panid 0x1234
sudo ot-ctl dataset channel 15
# 将以上配置提交为活动配置
sudo ot-ctl dataset commit active
# 打开 ipv6 接口
sudo ot-ctl ifconfig up
# 启动 Thread 协议
sudo ot-ctl thread start
# 查看 Thread 网络配置
sudo ot-ctl dataset active -x
# 为设备分配节点 ID 为 1001
sudo ./chip-tool pairing ble-thread 1001 hex:0e08000000000001000035060004001fffe00708fdd0a609c458d59b030f4f70656e5468726561642d3763393004100191ed136516065cfa503db5ed6439320c0402a0f7f8051000112233445566778899aabbccddeeff0208111111112222222201021234000300000f 20202021 3840
在一个新的终端窗口启动 OTA 服务。指向 ota 文件
sudo ./out/debug/chip-ota-provider-app -f MatterLightOverThread_V3.ota

在一个新的终端窗口,为 OTA-Provider 分配一个节点 ID:5678

sudo ./chip-tool pairing onnetwork 5678 20202021
授予网络中所有设备操作 OTA Provider cluster (0x0029)的权限。5678 为 OTA Provider 的 node id,后面的 0 为 endpoint。
sudo ./chip-tool accesscontrol write acl '[{"fabricIndex": 1, "privilege": 5, "authMode": 2, "subjects": [112233], "targets": null}, {"fabricIndex": 1, "privilege": 3, "authMode": 2, "subjects": null, "targets": null}]' 5678 0
通知 Matter 设备升级。5678 为 OTA Provider 的 node id,1001 为 Matter Lighting 的 node id
sudo ./chip-tool otasoftwareupdaterequestor announce-otaprovider 5678 0 0 0 1001 0

可以在其他窗口看到,已经开始OTA升级传输固件包了

 Matter 设备收到 announce-otaprovider 命令后向 OTA Provider 请求并更新固件。

固件升级过程大约要几分钟时间……

http://lihuaxi.xjx100.cn/news/1247053.html

相关文章

IT行业里有个词叫“技术债务”

关于技术债务的文章,尽管实践中会堆积技术债,但这个概念并不在我们的工作中频繁出现。这篇文章就系统性讲讲技术债,让大家避免知其然,不知其所以然。 一、技术债是什么 技术负债(英语:Technical debt&…

windows编译ffmpeg,并开启png的编解码器

废话不多说了,先上下载链接 ffmpeg官方网站:http://ffmpeg.org/download.html ffmpeg源码下载链接:https://ffmpeg.org/releases/ffmpeg-3.4.13.tar.gz 如果需要其他版本,修改版本号即可,适用于3.4全系列,如https:/…

论程序员提问的艺术

最近工作比较忙,加上空闲时间大部分都是在维护开发【云狗AI】,所以也有一段时间没更新视频了,有不懂的,也可以问一下【云狗AI】以后我也会花更多的时间在维护这个项目中。争取给大家带来更好的体验。 主要是因为最近没发现什么特…

银行信用卡流失预测模型_基于ANN神经网络_金融培训_论文科研_毕业设计

业务背景 根据央行公布的数据显示,全国性银行信用卡和借贷合一卡的发卡量增速从2017年同比增速26.35%的高点逐年下降,截至2020年同比增速降至4.26%。银行信用卡发卡增速明显放缓的背景下,预防老客户流失的问题变得愈发重要。 假设一家消费信…

html好看的登录页面1(十三种风格登录页面源码)

文章目录 1.登录风格效果说明1.1 背景凹起风登录界面1.2 弹出风登录界面1.3 科技时尚风登录界面1.4 蓝色一夏风登录界面1.5 模糊背景左右风登录界面1.6 上中下介绍风登录界面1.7 深沉科技风登陆界面1.8 舒适简洁风登录界面1.9 网站风登录界面1.10 小框清爽风登录界面1.11 夜色风…

Selenium基本用法

Selenium 提供了 8 种定位单个节点的方法,如下所示: 定位节点方法 方法 说明 find_element_by_id() 通过 id 属性值定位 find_element_by_name() 通过 name 属性值定位 find_element_by_class_name() 通过 class 属性值定位 find_element_by_tag_name()…

问卷调查工具专业排行榜

调查问卷是传播学领域的常用方法,是同时从大量人群中收集信息的最有效工具之一。它们被用于从学术研究到市场研究的各种环境中。问卷调查的一个关键优势是能够从不同的人群中快速收集大量数据。然而,创建、分发和分析调查问卷可能是一项既耗时又复杂的任…

Vue打包资源按时间戳方式

问题: 由于默认的Vue打包是基于资源文件的hash模式,但是由于浏览器缓存,在实际发版过程中会出现引用老版本的问题。 解决: 修改Vue资源打包,在资源文件后加上打包时间戳,以保证每次发版后,所有…