软件: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 实验相关推荐

  1. EFR32MG21 zigbee 3.0 OTA 升级实验

    EFR32MG21 zigbee 3.0 OTA 升级实验 参考文档:AN728 https://www.sekorm.com/doc/1607600.html 芯片:EFR32MG21A010F76 ...

  2. Linux 0.11 实验环境搭建与调试

    缘起 之前我写过一篇博文:Linux 0.11 实验环境搭建 本以为有了这个环境(gcc-3.4 & gdb-6.8),就可以调试无忧了.谁知遇到了以下问题: (1)用 gdb 调试 main ...

  3. 基于E18-2G4U04B的ZigBee3.0无线数据抓包安装方法

    1.Ubiqua的安装说明 第一步 :解压Ubiqua的安装包: 第二步:选中官方安装文件"UbiquaToolbox_1.4.2244.msi"进行安装,安装过程中选择安装盘直接 ...

  4. 物联网ZigBee3.0协议E18-2G4U04B模块无线数据抓包调试的方法

    ZigBee3.0无线抓包简介 ZigBee3.0是ZigBee联盟推出的可以互联互通的标准协议,用之前的Packet Sniffer抓包工具是无法解析ZigBee3.0的数据包,因ZigBee3.0 ...

  5. 【大数据处理技术】「#0」实验环境准备

    文章目录 实验步骤解析 「Mac系统」安装配置Linux虚拟机 虚拟机下载安装 Ubuntu下载安装 设置共享文件夹 安装Hadoop 创建hadoop用户(可忽略,本实验不使用hadoop用户) 更 ...

  6. zigbee3.0 BDB 介绍(一)

    zigbee3.0 BDB 介绍(一) 很多人都听说过zigbee3.0bdb文档,但是,似乎很多人都不怎么关注bdb文档中讲的是什么内容,有什么作用,特别是一些刚入门zigbee不久的朋友,甚至有少 ...

  7. 第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 实验 ...

  8. [Ember Zigbee]Zigbee3.0设备自定义ZCL数据包发送数据

    针对Simplicity Studio 4,EmberZNet协议栈Zigbee3.0设备入网流程 Platform:Simplicity Studio 4.EmberZNet SDK 6.4.1.0 ...

  9. zigbee3.0学习笔记@开发指导书@设备地址

    #设备 ##协调器 作用:启动网络和管理密钥 1.组建zigbee网络,选择通道和PAN ID 2.创建集中安全网络和授权可信任网络 3.分发密钥,允许设备加入网络 4.路由功能 ##路由 作用: 1 ...

最新文章

  1. GStreamer 1.18.4稳定的错误修复版本
  2. quartz 分布式_6大分布式定时任务对比
  3. ASP.NET 发邮件方法
  4. Transformer 会接管人工智能?
  5. 构建一个业务连续的网络
  6. conda环境里安装pydot
  7. 战略资产配置matlab,资产组合有效前沿的解和最优解(MATLAB语言)
  8. php留言簿,PHP 简易留言板
  9. io里没有driveinfo没有_来福宝宝,愿天堂里没有病痛
  10. Sublime + Chrome 本地调试 CSS 选择器
  11. jquery实现查看全部示例
  12. 又一篇好文:折磨人的商业计划书
  13. ESP8266使用教程之初识
  14. layui框架实战案例(9):layPage 静态数据分页组件
  15. uploader.php,使用uploader上传拍摄的图片php后端代码出错~求助~
  16. linux系统维护诸多定时器,linux定时器总结
  17. 如何提高测试的工作效率?都有哪些具体手段?
  18. 辛苦开发的 App 被山寨?阿里帮你为 APK 上把加固锁
  19. Unity使用UIWebView导致iOS审核被拒的解决方案
  20. 百度小程序百度信息流与自然搜索管理

热门文章

  1. 如何调动员工的积极性
  2. 安卓手机+python基于abd命令的自动打卡
  3. Windows7 Embedded Standard x64更新代码80072EFE解决方法
  4. devexpress html编辑器,图解DevExpress RichEditControl富文本的使用,附源码及官方API
  5. android画板案例
  6. (二)使用Keadm进行部署KubeEdge
  7. 用Android和IOT检测地震波
  8. 关于Allan方差分析陀螺仪误差的几个摘要
  9. hdu 4607 Park Visit(树上最长链)
  10. XP系统的倔强——python3.4+PyCharm+numpy、networkx等的安装