微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > Z-Stack 3.0 已经有Device announce,但是最后TC link key exchange失败一直导致节点不断beacon request是什么原因?

Z-Stack 3.0 已经有Device announce,但是最后TC link key exchange失败一直导致节点不断beacon request是什么原因?

时间:10-02 整理:3721RD 点击:

最新的3.0协议,CC2530芯片,一个coordinator,一个router,是通过TC link key方式入网的,已经能收到Device Announce,说明入网成功了吧,编译信息如下。

uint8 zgPreConfigKeys = TRUE;

uint8 zgApsLinkKeyType =  ZG_UNIQUE_LINK_KEY;

已经在f8wConfig.cfg里面配置了/* Default security key. */
-DDEFAULT_KEY=

此处key暂时保密。

为什么仍会产生BDB_TC_LINK_KEY_EXCHANGE_FAIL,导致节点发出Leave,然后5S后又重新Beacon request入网-> Device Announce,然后又Leave,然后一直反反复复这样,ubiqua抓包如下:

zgPreConfigKeys改成FALSE试试。

按你这样改是可以的,TI ZigBee有很多各种key,结合如下链接:我的理解如下,不知道正确不正确

Deyisupport:  为什么defaultKey设置不一样的节点还是可以加入网络?

1、zgPreConfigKeys 这个变量是network layer,也就是网络层的加密key的开关,如果为TRUE,就打开网络层的加密,否则就关闭加密传输;

    如果打开网络层加密传输,那么配合的就要设置defaultKey,就是macro definition DEFAULT_KEY in f8wConfig.cfg

    这就解释了为什么以前有人说defaultkey设置不同,也可以加入网络,这个是网络层的加密,和入网时候的TC link key是两个截然不同的东西,一个是用来加密传输的,一个是用来入网认证的,当然互不影响了。

2、再说说TC_LINKKEY_JOIN,这个宏在Z-Stack 3.0协议栈里面几乎所有的示例工程都定义了,作用应该就是使能TC link key的,如果去掉这个宏,那么就是所谓的Unsecure方式入网了;

相应的defaultTCLinkKey,这个key想必就是所谓的TC link key了,用在加入网络的认证用的。

烦请@VV 和 @Susan Yang 给确认一下

你可以看下BDB_TC_LINK_KEY_EXCHANGE_FAIL这个错误是在什么情况下发生的

收到BDB_COMMISSIONING_STATE_TC_LINK_KEY_EXCHANGE 消息,didSuccess失败,好像是ZR重刷固件之后再次入网,TC校验不通过,被踢出网络了,3.0协议默认TC Link key好像会发生变化,用ubiqua,看到每次入网都会自动添加新的Trust Center Link key

If the joining device does not pass the TC policy validations, it will be kicked out of the network with a network leave command.

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top