【经验】关于EFR32MG多协议SOC芯片做ZigBee开发时,休眠设备的polling机制的浅析

2018-10-27 世强
多协议SOC芯片,EFR32MG,Silicon Labs 多协议SOC芯片,EFR32MG,Silicon Labs 多协议SOC芯片,EFR32MG,Silicon Labs 多协议SOC芯片,EFR32MG,Silicon Labs

EFR32MG系列是SILICON LABS多协议SOC芯片,支持BLE、BlueTooth Mesh、ZigBee和Thread协议,被广泛应用于智能家居、智能工业等市场。EFR32MG做ZigBee开发时,很多工程师对于休眠设备的polling机制不是很清楚,本文就基于EmberZnet Stack的polling机制做些浅谈,希望在开发过程中能够帮助到大家。


我们知道ZigBee协议中Sleepy End Device(下文简称ZSED)是通过polling机制和父节点进行交互,来读取自己的数据并通知父节点自己仍在网络。EmberZnet Stack中polling分两种,即short poll和long poll,在plugins的End Device Support中可以分别设置short poll和long poll的时间间隔。如下图:



其工作机制如下:当ZSED使用long poll时,ZSED会以long poll设置的周期向父节点poll,不poll时射频处在关闭状态。ZSED会一直处于long poll状态直到从父节点查询到有自己的数据,此时ZSED会切换成short poll并以short poll设置的周期每次从父节点取一包数据,直至取完。当ZSED接收到父节点的response或者wake timeout被触发,ZSED会再次切换到long poll。Wake timeout默认是3秒,即ZSED连续发了3次short poll(short poll interval默认是1S),父节点都没有数据给ZSED时,Wake timeout就会被触发,ZSED又会切换到long poll。如果数据传输较为频繁,可以把ZSED的long poll设置短一些。如果数据量大,比如 OTA的情况,则可以把short poll缩短一些,加快传输速率。short poll可以通过 emberAfSetShortPollIntervalQsCallback( int16u shortPollIntervalQs )函数动态修改。

 

1、了解了polling工作机制后,那ZSED应该多长时间向父节点poll一次呢?

决定ZSED应该多长时间向父节点poll一次,需要考虑间接传输超时(Indirect Transmission Timeout),ZigbBee规范规定的间接传输超时时间是7.68秒,即父节点缓存子节点的数据时间是7.68秒,超过这个时间数据就会被清除。EmberZnet Stack通过EMBER_INDIRECT_TRANSMISSION_TIMEOUT 或者EZSP_CONFIG_INDIRECT_TRANSMISSION_TIMEOUT设置间接传输超时时间。如果应用中ZSED需要接收其他节点发来的数据,就需要至少7.5秒poll一次,因为超过7.5秒的话就有可能丢失信息或者APS ACKs。ZSED在调试、网络维护或报警状态等特殊情况下,在发送消息后的一定时间内应该以更短的poll周期来轮询,使得ZSED可以快速确认和响应消息,等设备返回到正常操作状态时,再恢复到标准的poll周期轮询。当ZSED只是单向传输,不需要接收其他节点的数据时,poll周期可以设置大于7.68秒。

 

2、ZSED可以在不轮询父节点的情况下能运行多长时间?超时之后ZSED会发生什么?

EmberZnet Stack中ZSED具有poll timeout参数,ZSED必须在poll timeout范围内至少向父节点poll一次。Poll Timeout时间由EMBER_END_DEVICE_POLL_TIMEOUT或者EZSP_CONFIG_END_DEVICE_POLL_TIMEOUT和EMBER_END_DEVICE_POLL_TIMEOUT_SHIFT或者EZSP_CONFIG_END_DEVICE_POLL_TIMEOUT_SHIFT配置,plugin的ZigBee PRO Leaf Library或者ZigBee PRO Stack Libraryz中设置,如下图:



Poll Timeout的值是5*2^6 = 5*64 = 320秒,这个值在ZSED申请入网过程中会告诉父节点。


如果ZSED超出poll timeout没有向父节点polling的话,父节点会将该子设备从child table中移除,有效地将子设备老化出网络。这样做是为了防止子设备出现异常情况(如损坏、被拿走)时,父节点的child table会被一直无效占用。它还能确保父节点与子节点保持同步,确定哪个子节点属于哪个父节点。当父节点成功地接收到并处理子节点的polling,父节点会重置poll timeout,当子节点接收到父节点返回的ACK,子节点端也重置poll timeout。堆栈为了容纳不支持轮询的非睡眠终端的设备,每当子节点发送传出消息时,父节点仍然会重置其一侧的poll timeout,但是运行EmberZnet Stack的终端设备传出消息时不会重置超时,因此,仍应进行轮询以使连接两侧的超时“保持活动”。Poll timeout的最大值为255 * 2^14 = 4177920秒 =  68632分 = 1160.53小时 = 48.35天。


但ZSED超出poll timeout没有向父节点polling,父节点从child table中移除此ZSED,ZSED在参与网络通信之前,被要求rejoin网络(FindAndRejoinNetwork)。请注意,如果在emberNetworkState()结果为EMBER_JOINED_NETWORK_NO_PARENT时启动了PollForData操作,则EmberZNet堆栈将自动启动此重新加入。

 

3、如果父节点故障,ZSED发送polling后得不到ACK,ZSED会发生什么?

假设一种情况如下:ZSED的poll timeout时间为5小时,而short poll时间间隔为1秒,long poll时间间隔为10秒。这种情况下,如果父节点发生故障或者被移除网络,那么ZSED是不是只有到5小时poll timeout超时机制触发才会rejoin呢?

EmberStack中End Device还有一个最大次数的Missed Polls机制,plugin中设置如下:



当End Device的polling次数达到最大的Missed Polls次数,都没有接收到父节点的ACK时,也会触发rejoin。

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

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

评论

   |   

提交评论

全部评论(4

  • Hsom Lv4 资深工程师 2021-07-15
    文章里《关于EFR32MG多协议SOC芯片做ZigBee开发时,休眠设备的polling机制的浅析》新的最大值可以取16384分钟,也就16384/60/24=11.38天,不知道这样算对不对
    • asd回复: 你好。新的 sdk 中已经去除了繁杂的时间参数设置,改为 minutes 设置,最大值为 16384 分钟。

      查看全部1条回复

  • Hsom Lv4. 资深工程师 2021-07-15
    浅析得非常好,不过后面协议栈更新了,界面变了
  • Hsom Lv4. 资深工程师 2021-07-15
    新的最大值可以取16384分钟,也就16384/60/24=11.38天,不知道这样算对不对
  • 小雨 Lv5. 技术专家 2018-10-27
    学习了
没有更多评论了

相关推荐

一文教你弄懂 ZigBee中的LQI和RSSI

Silicon Labs的EFR32MG系列支持SOC单芯片支持SuB-GHz、Bluetooth、ZigBee和Thread多协议,具有优越的射频性能、丰富的外设资源和超低的功耗等特性,被广泛的应用于智能家居产品中。很多工程师做智能家居产品开发时,是第一次真正接触ZigBee技术,可能对于ZigBee技术的一些概念不是非常清晰。本文向大家介绍ZigBee中的邻居表(neighbor-table)

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

【经验】ZigBee 3.0 网络 : 使用由install code 生成的 link key 入网

在ZigBee 3.0之前,install code只用于Smart Energy网络。现在,为了提升 Zigbee 的安全性,所有的ZigBee 3.0设备都需要支持install code,但是否在网络中使用由 Trust Center 决定。本文将讲述使用 install code 的方式把 Z3 Light 加入到 Z3 Gateway 中。

设计经验    发布时间 : 2018-10-12

【经验】多协议无线 SOC EFR32MG实现ZigBee的OTA操作指南

EFR32MG系列是Silicon Labs公司推出支持多协议无线 SOC,可以单芯片支持私有协议、BLE5.0、BLE MESH、ZigBee和Thread协议,并且可以单芯片支持Sub-GHz和2.4GHz的频段。由于其超低功耗、高射频性能以及高集成度等特点被广泛应用于智能家居、安防、智能工业等市场。在ZigBee的实际应用中,OTA是必不可少的功能,由于选择的型号不同,配置OT

设计经验    发布时间 : 2018-09-24

最新Matter智能家居参考设计打破生态藩篱—尽在深圳物联网展

随着智能家居市场的兴起,消费者对设备间的无缝互联与高效协同提出了更高要求。在这一情形下,Matter标准应运而生。连接标准联盟推出的Matter是一项全新的智能家居互联标准,旨在打破不同品牌、不同协议间的壁垒,实现智能家居设备的统一管理和互操作。自Matter标准发布以来得到了国内外众多厂商的支持,其功能不断增强,认证产品数量快速增长,覆盖品类更加多样化。本文介绍Matter 1.3带来哪些更新。

厂牌及品类    发布时间 : 2024-08-16

Silicon Labs为工业和商业客户设计智能断路器,可在恶劣环境中扩展无线连接性能

Silicon Labs 赋能工业物联网设备制造商,为工业和商业客户设计智能断路器。其无线 SoC 和模块具备出色的射频性能,具有优越的接收器灵敏度和+20dpm的高传输功率,可在恶劣环境中扩展无线连接性能。Silicon Labs在每个订购的芯片上添加了高级安全功能,有助于降低生态系统面临的安全漏洞风险,避免让功能欠佳的设备通过调试。

厂牌及品类    发布时间 : 2023-07-12

【经验】创建ZigBee的无线SOC网关工程操作步骤

Silicon Labs公司的EFR32MG系列是针对智能家居市场应用的多协议无线SOC,单芯片支持蓝牙、ZigBee和Thread等协议,尤其是高性价比的系列2产品MG21、MG22,在ZigBee应用方面受到广大工程师的青睐。对于新手来说,使用SOC模式网关是最简单不过,本文就指导大家创建ZigBee的SOC网关工程操作步骤。

设计经验    发布时间 : 2020-04-09

【经验】多协议无线SoC EFR32MG的ZigBee开发之Token使用教程

EFR32MG系列是Silicon Labs公司针对多协议推出的无线SOC,单芯片可以支持Sub-G、蓝牙、Thread和Zigbee多种协议。Token是用来存储非易失性数据的即掉电后也能保存,本文档指导大家如何在EmberZNet PRO应用程序中自定义Token来存储非易失性数据。

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

EFR32无线通信模块AN004--RailTest(接收灵敏度开路测试)

EFR32标准模块,是世强独立研发,供用户学习、使用的射频模块。这个模块搭载Silicon Labs 多频段多协议的EFR32MG系列无线SOC芯片EFR32MG12P433F1024GM48,7*7mm QFN48封装,广泛用于智能门锁,门禁系统,照明系统,智能家居,无线抄表等领域。本文基于一站式开发平台simplicity studio V4和EFR32标准模块,介绍如何测试接收灵敏度。

设计经验    发布时间 : 2018-08-24

【经验】如何创建 Z3GatewayHost 网关?

EFR32MG多协议SoC芯片是 Silicon Labs 专门针对 IOT 推出的 ZigBee 方案,高达19.5dbm的发射功率,-102.7dbm的接收灵敏度,在业界内拥有最佳的RF射频性能,具有最全的Zigbee网络协议,被广泛应用在智能家居,工业控制等行业。在开发 Zigbee 产品时网关是重要的一个部分,本文详细介绍了创建一个 GatewayHost 的方法。

设计经验    发布时间 : 2019-01-01

【经验】芯科多协议SoC EFR32MG21使用外部高频晶体时CTUNE值的存储与调用过程

在使用SILICON LABS多协议SoC EFR32MG21芯片开发无线产品时,需要校准外部高频晶体的CTUNE值以保证射频的频偏最小,那么CTUNE值校准后要保存在哪里才能生效,本文我们就通过程序看一下。

设计经验    发布时间 : 2023-03-29

【经验】如何使用树莓派开发 ZigBee 网关?

在 Zigbee 系统中,网关是一个非常重要的设备,为了能容纳更大的网络及更复杂的应用逻辑,一个强大的主机是不可或缺的,树莓派就是这样一个强大的开发平台,非常适合用来构建 host application,这个文章将描述如何设置树莓派来开发 Silicon Lbas EmberZNet ZigBee Gateway。

设计经验    发布时间 : 2018-10-12

【经验】如何在Gateway Soc (internal flash)中实现 Ota Server?

EFR32MG多协议SoC芯片是Silicon Labs专门针对 IOT 推出的ZigBee方案,高达19.5dbm的发射功率,-102.7dbm的接收灵敏度,在业界内拥有最佳的RF射频性能,具有最全的Zigbee网络协议,被广泛应用在智能家居,工业控制等行业。本文介绍在开发 Zigbee Gateway 时如何在Gateway Soc (internal flash)中实现 Ota Server

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

【经验】芯科多协议SoC EFR32MG22从启动到加入ZigBee3.0网络的时间分析

我们在使用SILICON LABS多协议SoC EFR32MG22做ZigBee产品时会关心芯片从上电到加入网络具体需要多长时间,这个对使用电池类供电的产品是很重要的参数,本文将分析一下这个过程的时间,介绍初始化时间与扫描入网时间。

设计经验    发布时间 : 2023-03-28

【经验】如何在windows平台搭建Zigbee网关开发环境cygwin?

Silicon Labs 的EFR32MG多协议SoC芯片是 Silicon Labs 专门针对 IOT 推出的 ZigBee 方案,在开发 Zigbee 产品时网关是重要的一个部分,本文详细介绍了如何在Windows平台上搭建Silicon Labs提供的Zigbee网关开发环境cygwin。

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

展开更多

电子商城

查看更多

只看有货

品牌:SILICON LABS

品类:Wireless SoC

价格:¥21.5556

现货: 98,861

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 111,379

品牌:SILICON LABS

品类:Mighty Gecko Multi-Protocol Wireless SoC

价格:¥27.0929

现货: 98,034

品牌:SILICON LABS

品类:Wireless SoC

价格:¥9.1982

现货: 88,300

品牌:SILICON LABS

品类:8位MCU

价格:¥5.8534

现货: 88,212

品牌:SILICON LABS

品类:Wireless SoC

价格:¥27.2234

现货: 85,520

品牌:SILICON LABS

品类:Wireless SoC

价格:¥22.1593

现货: 76,980

品牌:SILICON LABS

品类:Wireless SoC

价格:¥19.9760

现货: 74,309

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥10.4994

现货: 67,034

品牌:SILICON LABS

品类:Transceiver

价格:¥15.8878

现货: 66,919

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SILICON LABS

品类:Switch Hall Effect Magnetic Position Sensor

价格:¥2.2924

现货:150,000

品牌:SILICON LABS

品类:Light Sensor

价格:¥20.3400

现货:28,003

品牌:SILICON LABS

品类:Position Sensor

价格:¥3.0897

现货:12,568

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:Gecko MCU

价格:¥15.6000

现货:5,353

品牌: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

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

物联网天线方案设计/虚拟天线芯片方案设计

Ignion可支持多协议、宽频段的物联网天线方案设计,协议:Wi-Fi、Bluetooth、UWB、Lora、Zigbee、2G、3G、4G、5G、CBRS、GNSS、GSM、LTE-M、NB-IoT等,频段范围:400MHz~10600MHz。

最小起订量: 2500 提交需求>

蓝牙资格认证(BQB)

提供蓝牙BLE芯片协议、蓝牙模块、蓝牙成品测试认证服务;测试内容分Host主机层,Controller控制器层,Profile应用层测试。支持到场/视频直播测试,资深专家全程指导。

实验室地址: 深圳 提交需求>

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

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

收藏
收藏当前页面