【经验】EmberZnet CLI指令之绑定功能实现过程

2019-06-19 Silicon Labs
EFR32MG13,Silicon Labs EFR32MG13,Silicon Labs EFR32MG13,Silicon Labs EFR32MG13,Silicon Labs

SILICON LABS在ZigBee的开发过程中,绑定不是一个API调用就能完成的功能,需要事先准备绑定的endpoint, cluster和目标地址,为方便zigbee开发者了解到绑定功能,本文特以emberznet中的z3swith 和 z3ligth为例进行说明。同时用到电脑串口工具,空中抓包工具,其使用方法这里不再介绍。


本例在Silicon Labs的开发板SLWS使用Z3Light Z3Switch两个工程可以支持绑定功能,大致的流程如下,将两个设备下载好代码上电,接下来对light输出以下指令。为了方便表示指令,用>表示从电脑向设备发,用<表示设备发给电脑的数据。

LIGHT

> plugin network-creator-security   open-network

SWITCH(在没有入网的情况下,输入)

> plugin network-steering start 0

 

在这个过程中,用Simplicity Studio v4中自带的Network Analyzer抓下数据,看到的数据大致如下:


在本例中, LIGHT设备的地址为0x0000, SWITCH设备的地址为0x7C0A(enddevice)。完成入网后可以看到SWITCH向LIGTH设备发送了一个Node_Desc_Request(), 也即是说SWITCH设备在第一时间便知道了灯的Cluster,但没有进一步的操作。此时按下SWITCH的按键PB0,LIGTH板上的LED0不会受到控制。

 

在连接SWITCH的电脑串口工具上可以收到

 

< Send to bindings: 0x00

事实上空中没有数据包的传输。

 

此时在SWITCH端,用串口工具查看绑定表的内容,

> option binding-table print

< #    type   nwk  loc     rem   clus   node     eui

< 0 of 10 bindings used

绑定表的内容是空的,而SWITCH当中的按键代码,仅有绑定发送控制指令。

代码如下:

emberAfGetCommandApsFrame()->sourceEndpoint = SWITCH_ENDPOINT;

if (lastButton == BUTTON0) {

      emberAfFillCommandOnOffClusterToggle();

    } else if (lastButton == BUTTON1) {

      uint8_t nextLevel = (uint8_t)(0xFF & emberGetPseudoRandomNumber());

      emberAfFillCommandLevelControlClusterMoveToLevel(nextLevel, TRANSITION_TIME_DS,   0, 0);}

status = emberAfSendCommandUnicastToBindings();

emberAfCorePrintln("%p: 0x%X", "Send to bindings", status);

因此按下PB0会显示发送成功,但实际上空中没有数据包。


为了能有效控制,手工增加绑定表条目。串口显示如下:

> option binding-table set 0 0x0006 1   1 {000B57FFFE07AB24}

> option binding-table print

< #    type   nwk  loc     rem   clus   node     eui

< 0: UNICA  0      0x01  0x01  0x0006 0x0000 (>)000B57FFFE07AB24

< 1 of 10 bindings used

这里要解释的是 binding-table set指令各参数的作用。

表一 绑定指令参数解释

参数

0

0x0006

1

1

000B57FFFE07AB24

意义

绑定表的位置

绑定的cluster

Src endpoint

Dest endpoint

LIGHT的EUI地址(64bit)

 

这个过程,我们还可以抓包看到内中交互。通过EUI地址,SWITCH请求了LIGHT的网络地址。该地址为0x0000,这个内容也反击在上面的串口输出当中。


新建绑定表之后,接下来再按下SWITCH的PB0,LIGHT LED0便可以控制了。此时空中的数据包内容如下:



绑定的功能正常使用,本方介绍的是使用CLI指令,在实际产品中请理解表一各字段的内容,本例中各项数据均为作者已知,实际项目中要自行通过zigbee的标准交互拿到全部数据才能完成绑定。

 

 

世强代理的EFR32MG13系列无线通信芯片,可以支持ZigBee, Ble等低功耗协议,内部有Cotex-M4 内核(40MHz), 以及支持多路GPIO,  极低的休眠功耗(2uA), 较小的封装(5mmx5mm),极高的射频发射功率(19.0dBm),配合PI公司电源芯片LNK3202D可以实现单火开关,并且支持多个协议。如果需要观看demo演示或者购买评估套件请联系世强。

 

 

扩展阅读:

EFR32MG13芯片手册             

搭建EFR32 ZigBee开发环境      

PI单火电源方案                        


授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 2

本文由南城月提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。

评论

   |   

提交评论

全部评论(2

  • 乌龟的屁股 Lv3 高级工程师 2020-06-29
    zdo bind 指令和这个option binding-table 指令一起用吗?是这么理解吗? zdo bind 【LIGHT_nodeid】【SWITCH_endpoint】【LIGHT_endpoint】【cluster】 【SWITCH_EUI】【LIGHT_EUI】 请问上面这个指令的各项参数填写的正确吗? 实际上我输入上面的指令返回0x00,但是绑定表里什么也看不到 option binding-table 0 【cluster】1 1 {XXX}? 是这两个指令组合吗 ?提问来源:https://www.sekorm.com/news/30245981.html
    • asd回复: 您好。zdo bind 的各个参数的说明请参考文档 https://docs.silabs.com/zigbee/latest/af/group-zdo 中 描述。当使用 zdo bind 构建完要发送的数据后,需要使用 send 命令发送给目标设备,进而在目标设备中可以使用 option binding-table print 查看到这个绑定数据。这篇文章中构建命令和发送都是使用 API ,而没有使用 CLI 命令,不过作用是相同的。总体的流程是节点A构建(zdo bind)并发送(send)绑定命令给节点B,B端可以查看(option binding-table print)table中的数据

      查看全部1条回复

  • 乌龟的屁股 Lv3. 高级工程师 2020-06-28
    zdo bind 指令和这个option binding-table 指令一起用吗?是这么理解吗? zdo bind 【LIGHT_nodeid】【SWITCH_endpoint】【LIGHT_endpoint】【cluster】 【SWITCH_EUI】【LIGHT_EUI】 请问上面这个指令的各项参数填写的正确吗? 实际上我输入上面的指令返回0x00,但是绑定表里什么也看不到 option binding-table 0 【cluster】1 1 {XXX}? 是这两个指令组合吗 ?
没有更多评论了

相关推荐

【经验】借助wireshark 来调试zigbee网络

在开发zigbee设备的过程,通常要使用zigbee sniffer , 目前可以用的工具比较多,包括TI, Silicon Labs都有自己的工具,不过还有一个开源工具做的非常优秀,特别在此推荐给大家,它可以对数据包进行规则着色,在设计的过程中会更加直观。

设计经验    发布时间 : 2019-03-31

【经验】无线SoC EFR32MG21使用ADC后EM2模式功耗较高问题如何解决?

EFR32MG21是Silicon Labs最新一代支持多协议的无线SoC,最近有用户发现EFR32MG21初始化ADC后,进入EM2模式的电流比较高,无法恢复到正常的EM2电流,本文就将分析问题的原因并给出解决方法。

设计经验    发布时间 : 2020-05-31

开发必备:超全的ZigBee技术规范,参考设计,开发资料,一站式下载集合!

Silicon Labs的EFR32MG系列无线SOC为ZigBee产品开发提供了多种产品组合, EFR32MG13系列产品Flash 512KB和RAM 64KB最适用于需要OTA的产品;EFR32MG21系列适用于性价比高的产品。本文整理一份超全的设计开发资料,一站式提供给ZigBee开发人员下载。【世强硬创沙龙2019】

设计经验    发布时间 : 2018-11-21

EFR32MG13 Mighty Gecko Multi-Protocol Wireless SoC Family Data Sheet

型号- EFR32MG13,EFR32MG13P632F512GM48-D,EFR32XG13,EFR32MG13P732F512GM48-D,EFR32MG13P733F512GM48-D,EFR32MG13P732F512IM48-D,EFR32MG13P733F512IM48-D,EFR32MG13P732F512IM32-D,EFR32MG FAMILIES,EFR32MG,EFR32MG13P732F512GM32-D,EFR32XG13P132F512GM48-AR,EFR32MG13P632F512GM32-D,EFR32MG13 FAMILY,EFR32

数据手册  -  SILICON LABS  - Rev. 1.7  - June, 2022 PDF 英文 下载 查看更多版本

成功案例  -  SILICON LABS  - 2023/10/20 PDF 英文 下载 查看更多版本

Zigbee Enables Wireless Commercial Lighting

型号- EFR32MG13,EFR32MG13 SERIES

成功案例  -  SILICON LABS  - 2023/9/16 PDF 英文 下载

【经验】EFR32MG系列无线SoC使用DMA方式收发串口数据的方法

EFR32MG是Silicon Labs公司推出的多协议无线SoC,有时在实际使用中,要用DMA(直接存储器访问)方式来收发串口数据,从而减小MCU的负担。本文以EFR32MG13为例介绍如何实现使用DMA收发串口数据的方法。

设计经验    发布时间 : 2020-12-29

【经验】EFR32低功耗ZigBee芯片的节点设计之软件详解

物联网产品,在许多品类中都有低功耗要求,Silicon Labs EFR32也有着不错的低功耗特性,即要在硬件设计上进行合理的设计 ,也要在软件上进行相应的配置,本文介绍在软件开发过程要注意到的设计要点。

设计经验    发布时间 : 2019-05-03

电路原理图  -  SILICON LABS  - Rev. A01  - November 18, 2016 PDF 英文 下载 查看更多版本

【经验】 从头说起,如何搭建Silicon Labs ZigBee开发环境?

越来越多的智能家居产品选择择Silicon Labs的ZigBee平台(EFR32MG1x),许多原来使用TI CC2530 / NXP 5169的用户在开发入门遇到的第一个问题是:如何装Silicon Labs ZigBee开发环境?

设计经验    发布时间 : 2019-04-20

【经验】Silicon Labs ZigBee终端节点(End Device)重入网络失败后的处理方法

此前我们有专门介绍过终端节点在无法与父节点联系以后,EmberZnet默认代码是偿试重新联系父节点,以及重入网络的流程,一旦重入网络失败,则将进入SLEEP模式,如果应用不需要进入长时间的低功耗,而是另有安排时,则需要自己另外补写代码来完成目标工作。本文以一个简单的例子来说明增写代码的方法,推荐Silicon Labs推出的EFR32MG13系列无线通信芯片。

设计经验    发布时间 : 2019-02-24

电路原理图  -  SILICON LABS  - Rev A00  - February 23, 2018 PDF 英文 下载 查看更多版本

【经验】EmberZnet ZCL通信如何关掉默认应答?

在ZigBee网络中,为了优化网络或者降低功耗,有些协议协议作出的应答,可以关掉,本文对关掉ZCL默认应答(default response)进行说明。

设计经验    发布时间 : 2019-02-24

【应用】低功耗无线通信芯片EFR32MG13助力ZigBee单火智能开关低功耗设计

Silicon Labs EFR32MG是一个支持ZigBee 3.0的低功耗SoC芯片,它在EM2电源模式下仍然可以周期性地唤醒工作,此时它的电流仅为2uA,甚至更低,因此用EFR32MG13作为Enddevice设备的话,平均工作电流能做到500uA以下。在这么低的功耗下,它仍然保持了ZigBee网络的连接性,可以进行实时控制,会带给用户较好的使用体验,是主流的ZigBee单火开关核心器件方案

应用方案    发布时间 : 2018-11-26

【应用】EFR32MG系列无线SoC满足IO-Link要求,助力革新无线工厂自动化方案,实现长距离输出

芯科科技的EFR32MG13、EFR32MG21和EFR32MG24为IO-Link Wireless的快速RF通道和无线电状态切换时间、出色的无线电灵敏度和超低功耗模式提供了优质的选择。

应用方案    发布时间 : 2023-03-24

展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:Mighty Gecko Multi-Protocol Wireless SoC

价格:¥27.0929

现货: 90,767

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 104,128

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥12.9143

现货: 95,058

品牌:SILICON LABS

品类:Wireless SoC

价格:¥31.7756

现货: 88,300

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.9026

现货: 83,205

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.5305

现货: 80,817

品牌:SILICON LABS

品类:Wireless SoC

价格:¥35.3989

现货: 77,507

品牌:SILICON LABS

品类:8位MCU

价格:¥5.8534

现货: 73,120

品牌:SILICON LABS

品类:Wireless SoC

价格:¥19.9760

现货: 72,309

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥10.4994

现货: 61,779

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SILICON LABS

品类:Switch Hall Effect Magnetic Position Sensor

价格:¥2.2924

现货:126,000

品牌:SILICON LABS

品类:Light Sensor

价格:¥20.3400

现货:28,003

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.7900

现货:3,451

品牌:SILICON LABS

品类:Wireless SoC

价格:¥15.1400

现货:1,455

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥56.0000

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥5.1900

现货:396

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面