zigbee3.0 ota 实验
软件:simplicity stdio 、ubuntu18.04
芯片:EFR32MG21A020F768(设备),EFR32MG1P233F256GM48(ncp)
SDK:6.6.3
参考文档:AN728、
服务器:
在simplicity stdio 生成Z3gatewayHost ,然后按默认操作再ubuntu里面编译,编译成功后会有可执行文件,命名为Z3gatewayHost,将后面需要升级的ota文件放到ota-files这个文件夹
ncp:
先生成BootLoader,
步骤:
1.看下图
2.打开hwconf文件,更改usart0 的流控模式为软件流控(Xon-Xoff),然后生成编译,可执行文件命令为EFR32MG1P233F256GM48_bootloader-uart-xmodem-combined.s37
再生成ncp:
1.看图
2. 如下图,声明一点,我这里用的是usart1
3.如下图
4.如下图
生成编译,固件命名为ncp-uart-sw.s37
设备:
生成BootLoader:BootLoader生成跟平时的一样但是里面的改动看图片
下面就是改动后的
生成编译,固件命名为bootloader-storage-internal-single_MG21A.s37
生成应用程序,按照AN728文档的步骤,一步步来,不同的地方如下图
生成编译,固件为SwitchSoc_Endpoint4.s37(version 1);
复制出来,将版本号改为version2 ,重新编译,将它复制到项目ota-files文件下;
将EFR32MG1P233F256GM48_bootloader-uart-xmodem-combined.s37和ncp-uart-sw.s37下载到EFR32MG1P233F256GM48芯片的设备,此设备跟电脑usb连接;
将bootloader-storage-internal-single_MG21A.s37和SwitchSoc_Endpoint4.s37(version 1)下载到EFR32MG21A020F768(设备)上;
在ubuntu上运行Z3GatewayHost, 打开网络,允许设备入网;
设备加网,执行ota命令,进行ota升级,在此过程,设备会发ota升级请求帧给网关,网关查看对比两个固件的版本是否一致,如果网关的固件版本比设备的固件版本高的话,就进行升级,整个过程大概8分钟;
开始:
[2019-09-17 17:01:31.092]# RECV ASCII>
Processing message: len=19 profile=0104 cluster=0019
T00000000:RX len 19, ep 01, clus 0x0019 (Over the Air Bootloading) FC 19 seq 05 cmd 07 payload[02 10 00 00 04 00 00 00 00 00 00 00 00 00 00 00 ]
OTA command from unrecognized server 0x0000. My OTA server: 0xFFFD
Error: failed parsing OTA cmd 0x07
T00000000:TX (resp) Ucast 0x00
TX buffer: [00 05 0B 07 7E ]
[2019-09-17 17:03:42.982]# RECV ASCII>
Processing message: len=6 profile=0000 cluster=8006
Setting OTA Server to 0x0000
[2019-09-17 17:03:45.009]# RECV ASCII>
Bootload state: Get OTA Server EUI
OTA Cluster: setting IEEE address of OTA cluster
Last offset downloaded: 0x00000000
No image found in storage.
Processing message: len=16 profile=0104 cluster=0019
T00000000:RX len 16, ep 01, clus 0x0019 (Over the Air Bootloading) FC 19 seq 06 cmd 02 payload[00 02 10 00 00 04 00 00 00 F6 71 03 00 ]
Query next image response: New image is available for download.
Starting download, Version 0x00000004
Bootload state: Downloading Image
Starting erase from offset 0x0
[2019-09-17 17:03:45.094]# RECV ASCII>
0060000 to 0x000BC000
[2019-09-17 17:03:46.176]# RECV ASCII>
EEPROM Erase complete
Processing message: len=80 profile=0104 cluster=0019
T00000000:RX len 80, ep 01, clus 0x0019 (Over the Air Bootloading) FC 19 seq 07 cmd 05 payload[00 02 10 00 00 04 00 00 00 00 00 00 00 3F 1E F1 EE 0B 00 01 38 00 00 00 02 10 00 00 04 00 00 00 02 00 45 42 4C 20 53 77 69 74 63 68 53 6F 63 5F 45 6E 64 70 6F 69 6E 74 34 00 00 00 00 00 00 00 00 00 F6 71 03 00 00 00 B8 71 03 00 EB ]
Download: 0% complete
[2019-09-17 17:03:46.280]# RECV ASCII>
Processing message: len=80 profile=0104 cluster=0019
T00000000:RX len 80, ep 01, clus 0x0019 (Over the Air Bootloading) FC 19 seq 08 cmd 05 payload[00 02 10 00 00 04 00 00 00 3F 00 00 00 3F 17 A6 03 08 00 00 00 00 00 00 03 00 00 00 00 F4 0A 0A F4 1C 00 00 00 01 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 FD 03 03 FD B0 00 00 00 00 40 00 00 ]
…………
…………
T00000000:RX len 19, ep 01, clus 0x0019 (Over the Air Bootloading) FC 19 seq 07 cmd 07 payload[02 10 00 00 04 00 00 00 00 00 00 00 00 00 00 00 ]
OTA Cluster: wait for 0 s
RXed timeOut 0x00000000 s, MAX timeOut 0x00000DBB s
Adding 3000 ms. delay for immediate upgrade.
Countdown to upgrade: 3000 ms
Bootload state: Co
[2019-09-17 17:10:12.733]# RECV ASCII>
untdown to Upgrade
[2019-09-17 17:10:15.705]# RECV ASCII>
Applying upgrade
Executing bootload callback.
[2019-09-17 17:10:21.266]# RECV ASCII>
Reset info: 0x02 (BTL)
Extended Reset info: 0x0201 (GO )
[2019-09-17 17:10:21.379]# RECV ASCII>
init pass
EEPROM init: 0x00
EMBER_NETWORK_UP 0xB0DC
Bootload state: Random Delay before start
Delaying 55 seconds before starting OTA client
zigbee3.0 ota 实验相关推荐
- EFR32MG21 zigbee 3.0 OTA 升级实验
EFR32MG21 zigbee 3.0 OTA 升级实验 参考文档:AN728 https://www.sekorm.com/doc/1607600.html 芯片:EFR32MG21A010F76 ...
- Linux 0.11 实验环境搭建与调试
缘起 之前我写过一篇博文:Linux 0.11 实验环境搭建 本以为有了这个环境(gcc-3.4 & gdb-6.8),就可以调试无忧了.谁知遇到了以下问题: (1)用 gdb 调试 main ...
- 基于E18-2G4U04B的ZigBee3.0无线数据抓包安装方法
1.Ubiqua的安装说明 第一步 :解压Ubiqua的安装包: 第二步:选中官方安装文件"UbiquaToolbox_1.4.2244.msi"进行安装,安装过程中选择安装盘直接 ...
- 物联网ZigBee3.0协议E18-2G4U04B模块无线数据抓包调试的方法
ZigBee3.0无线抓包简介 ZigBee3.0是ZigBee联盟推出的可以互联互通的标准协议,用之前的Packet Sniffer抓包工具是无法解析ZigBee3.0的数据包,因ZigBee3.0 ...
- 【大数据处理技术】「#0」实验环境准备
文章目录 实验步骤解析 「Mac系统」安装配置Linux虚拟机 虚拟机下载安装 Ubuntu下载安装 设置共享文件夹 安装Hadoop 创建hadoop用户(可忽略,本实验不使用hadoop用户) 更 ...
- zigbee3.0 BDB 介绍(一)
zigbee3.0 BDB 介绍(一) 很多人都听说过zigbee3.0bdb文档,但是,似乎很多人都不怎么关注bdb文档中讲的是什么内容,有什么作用,特别是一些刚入门zigbee不久的朋友,甚至有少 ...
- 第24节 综合网络配置实验(含IP、RIP、VLAN、VTP、HSRP、ACL、NAT等配置完整命令)——基于PacketTracer8.0仿真实验
综合网络配置实验(含IP.RIP.VLAN.VTP.HSRP.ACL.NAT等配置完整命令)--基于PacketTracer8.0仿真实验 1 网络规划 1.1 网络拓扑图 1.2 网络规划 2 实验 ...
- [Ember Zigbee]Zigbee3.0设备自定义ZCL数据包发送数据
针对Simplicity Studio 4,EmberZNet协议栈Zigbee3.0设备入网流程 Platform:Simplicity Studio 4.EmberZNet SDK 6.4.1.0 ...
- zigbee3.0学习笔记@开发指导书@设备地址
#设备 ##协调器 作用:启动网络和管理密钥 1.组建zigbee网络,选择通道和PAN ID 2.创建集中安全网络和授权可信任网络 3.分发密钥,允许设备加入网络 4.路由功能 ##路由 作用: 1 ...
最新文章
- GStreamer 1.18.4稳定的错误修复版本
- quartz 分布式_6大分布式定时任务对比
- ASP.NET 发邮件方法
- Transformer 会接管人工智能?
- 构建一个业务连续的网络
- conda环境里安装pydot
- 战略资产配置matlab,资产组合有效前沿的解和最优解(MATLAB语言)
- php留言簿,PHP 简易留言板
- io里没有driveinfo没有_来福宝宝,愿天堂里没有病痛
- Sublime + Chrome 本地调试 CSS 选择器
- jquery实现查看全部示例
- 又一篇好文:折磨人的商业计划书
- ESP8266使用教程之初识
- layui框架实战案例(9):layPage 静态数据分页组件
- uploader.php,使用uploader上传拍摄的图片php后端代码出错~求助~
- linux系统维护诸多定时器,linux定时器总结
- 如何提高测试的工作效率?都有哪些具体手段?
- 辛苦开发的 App 被山寨?阿里帮你为 APK 上把加固锁
- Unity使用UIWebView导致iOS审核被拒的解决方案
- 百度小程序百度信息流与自然搜索管理
热门文章
- 如何调动员工的积极性
- 安卓手机+python基于abd命令的自动打卡
- Windows7 Embedded Standard x64更新代码80072EFE解决方法
- devexpress html编辑器,图解DevExpress RichEditControl富文本的使用,附源码及官方API
- android画板案例
- (二)使用Keadm进行部署KubeEdge
- 用Android和IOT检测地震波
- 关于Allan方差分析陀螺仪误差的几个摘要
- hdu 4607 Park Visit(树上最长链)
- XP系统的倔强——python3.4+PyCharm+numpy、networkx等的安装