ZigBee3.0_JENNIC-JN516x-ZigBeeBaseDevice_20170605_1.1
来源:互联网 发布:网络营销策划方案例文 编辑:程序博客网 时间:2024/06/10 01:47
1.2.1 Touchlink
第一次将新设备加入网络的过程叫做:commissioning[1].
- Touchlink commissioning可以用来重建一个新网络或者加入把节点加入现存网络。
- 初始化Touchlink的节点叫做initiator(发起者),可能成为网络的一员或者新建一个网络。
- initiator会将第二个节点加入网络,称为target。
Touchlink作为一个cluster放在ZCL里。
- Initiator必须作为client支持touchlink cluster;target必须作为server支持touchlink cluster。
- Touchlink commissioning通过 ZigBee Base Device attributeu8bdbCommissioningMode来使能。
- Touchlink pre-configured link key用来加密网络;
如果Touchlink commissioning没有成功,attributeebdbCommissioningStatus返回NO_SCAN_RESPONSE。
1.2.2 Network Steering
Network Steering能使local node加入一个已经存在的网络或者允许其他node通过local node加入网络。
- 通过u8bdbCommissioningMode使能Network Steering。
- 在application中,直接调用BDB_eNsStartNwkSteering()。
- AttributebbdbNodeIsOnANetwork决定path。PROBLEM1
- 所有的结果通过event送到APP_vBdbCallback()。
PROBLEM1:
Node is already in a network
- node已经在网络里,在固定时间内broadcast(广播)Management Permit Joining request,让其他节点加入网络。
- 默认时间为180s,通过constantBDBC_MIN_COMMISSIONING_TIME设置。
- 完成后,生成BDB_EVENT_NWK_STEERING_SUCCESS事件。
Node is not in a network
node不在网络里,作为router或者 end device,会尝试加入网络:
-
- 执行network discovery,扫描u32bdbPrimaryChannelSet指定的网络;
- 没有,扫描u32bdbSecondaryChannelSet的网络;
- 还没有,产生BDB_EVENT_NO_NETWORK事件,终止Netwrok Steering。
-
- 如果发现网络,尝试加入网络one by one,直到BDBC_MAX_SAME_NETWORK_RETRY_ATTEMPTS指定的次数;
- 如果加入成功,attributebbdbNodeIsOnANetwork = TRUE(由stack完成)。
- 如果join primary channels不成功,重复(1)的secondary channels。
- 还没有,产生BDB_EVENT_NWK_JOIN_FAILURE事件,终止Network Sterring。
-
- Joining node is authenticated(认证)。如果网络有centralised security和trust center,会更新link key。有问题,生成BDB_EVENT_NWK_JOIN_FAILURE事件。
-
- 完成上面的过程后。The joining node通过设置BDBC_MIN_COMMISSIONING_TIME请求延长'permit joining' time 产生BDB_EVENT_NWK_STEERING_SUCCESS事件。
1.2.3 Network Formation
Co-ordinator or router能创建网络。
- Co-ordinator will form a centralised security network and activate its Trust Centre fucntionality.
- Router will form a distributed security network.
- 设置u8bdbCommissioningMode使能Network Formation。
- 在应用程序中调用BDB_eNfStartNwkFormation()。
- Node根据u32bdbPrimaryChannelSet创建一个独立PAN ID的centralised or distributed network。
- 如果不行,根据u32bdbPrimaryChannelSet去创建。
- Router创建网络中:
- Channel scans会覆盖相关设置中的所有channels。
- MacroRAND_CHANNEL = TURE,会随机选择一个通道。
- MacroRAND_DISTRIBUTED_NWM_KEY should = TRUE来随机选择一个network key。
- 随机分配PAN ID and Extended PAN ID。
- 随机分配16-bit network address。
- 成功建网,生成BDB_EVENT_NWK_PROMATION_SUCCESS事件(APP_vBdbCallback()),否则返回BDB_EVENT_NEW_FORMATION_FAILURE事件。
Refrence:
[1]http://cs.emis.de/LNI/Proceedings/Proceedings256/229.pdf
[2]http://blog.csdn.net/zl374216459/article/details/70207704
阅读全文
0 0
- ZigBee3.0_JENNIC-JN516x-ZigBeeBaseDevice_20170605_1.1
- ZigBee3.0_JENNIC-JN516x-ZigBeeBaseDevice_20170604_1.0
- ZigBee3.0_JENNIC-JN516x-ZigBeeBaseDevice_20170606_1.2
- ZigBee3.0_JENNIC-JN516x-ZigBeeBaseDevice_20170609_1.3
- ZigBee3.0
- ZigBee3.0 能彻底解决智能家居互联互通的问题吗?
- 1, 0, -1, 0, 1, ...
- 0-1
- 1qqq1 0---------------0
- 0 0/1 * * * ?
- 0 1 0 * * ?
- -1,0,1
- javascript生成 -1 0 1 0 -1 0 1 ...序列
- 关于 transform:matrix(1,0,0,1,0,0)
- RAID 0,1,0+1,1+0,5简介
- lock(1,1,0)与lockf(1,0,0)
- 求1/0!+1/1!+...+1/n!
- AID 1+0 与 RAID 0+1
- selenium+robot+svn+jenkins自动化测试系列二:Jenkins配置自动化持续集成构建
- NAS资料收集
- Collections.sort()排序
- 线程间通信之等待唤醒机制
- 动态网页开发基础
- ZigBee3.0_JENNIC-JN516x-ZigBeeBaseDevice_20170605_1.1
- 2017.6.4 入门组 NO.1——k好数
- 检验两个线段是否相交
- BZOJ 1033: [ZJOI2008]杀蚂蚁antbuster
- 实验吧CTF逆向题1000writeup
- 使用Servlet Filter实现系统登录权限校验
- Kotlin基础教程-访问修饰符
- pandas 下的 one hot encoder 及 pd.get_dummies() 与 sklearn.preprocessing 下的 OneHotEncoder 的区别
- Synchronized关键字的使用