Part Number:CC2652P
使用的SDK为simplelink_cc13xx_cc26xx_sdk_6_40_00_13
在文档simplelink_cc13xx_cc26xx_sdk_6_40_00_13/docs/zigbee/html/zigbee/z-stack-overview.html中提到,
bdbTrustCenterRequireKeyExchange¶
If BDB_DEFAULT_TC_REQUIRE_KEY_EXCHANGE
in bdb_interface.h
is set to TRUE
, then all the joining devices are mandated to perform the TCLK exchange procedure. Devices that do not perform this procedure will be kicked out of the network after BDB_DEFAULT_TC_NODE_JOIN_TIMEOUT
seconds (15 by default). If this policy set to FALSE
(default), joining devices will not be required to perform a TCLK update, but they will be allowed to do so. The TCLK exchange procedure is described in Unsecure Join to a Centralized Network.
疑问:
我现在是将宏定义 BDB_DEFAULT_TC_REQUIRE_KEY_EXCHANGE 设置为false,按我的理解,这意味着这个网络类型为 Distributed Security Network,而不是Centralized Security Network,
这也意味着子设备加入网络时,在Transport Key这个步骤,64bit source address应为0xff,代表网络类型为Distributed Security Network;并且子设备入网后,无TCLK update操作,也即没有node descriptor request,request key, transport key, verify key这个步骤
但根抓包情况来看,在Transport Key这个步骤,64bit source address为真实的地址,并且也有TCLK update操作。
那么,到底是我理解有错误,还是SDK有BUG呢?
5165.log.zip
Yolande Wang:
您好,
我将您的问题升级到E2E询问一下。
,
Aries Lord:
你的理解错了,BDB_DEFAULT_TC_REQUIRE_KEY_EXCHANGE只针对Coordinate有效。协调器开启此功能后,入网设备必须支持Zigbee 3.0的APS key交互才能入网。如果入网设备不支持Zigbee 3.0,则会被协调器踢掉。