协调器及路由均为3.0设备,为了可以接入之前版本的设备,把协调器内强制key exchange的参数设为了false,也成功接入了早期版本的设备,但是现在再接入3.0的设备发现存在设备发送request key 请求更新密钥,但协调器不回复transport key 的问题,设备发送四次reuest key 后协调器没有回复,设备便退网。之前从未有过这样的问题,想请教各位可能是什么原因
Alvin Chen:
SDK版本?
你是部分还是全部,如果你关闭强制key exchange,当一个3.0 设备去入网会发送request key,哈可是可以正常transport key的。
如果没有回复退网是正常的。
user5957818:
回复 Alvin Chen:
你好,协议栈都是用的3.0.2,是设备添加到16台左右后,后面的所有设备都无法更新密钥,协调器不回复“request key”,但奇怪的是如果把原先已经在网络内的16台设备中的某一台剔除网络,它发送的“request key”却可以得到回复并顺利入网,试了四五个设备都是这样。最后把协调器恢复出厂设置,一共28台设备都顺利入网。但入网过程内看抓包也存在大量“request key ”不回复的问题,但多次尝试后协调器最终回复。
Alvin Chen:
回复 user5957818:
你好,请不要大量设备同时入网。
此外你说的这个设备过多无法入网的问题和芯片自身资源有关。ZDSECMGR_TC_DEVICE_MAX有关,你可以设置增大,但是内存有关。
http://www.ti.com/lit/wp/swra635/swra635.pdf
此外打上下面的补丁:
http://processors.wiki.ti.com/index.php/Zigbee_Known_Issues_and_Proposed_Fixes
user5957818:
回复 Alvin Chen:
好的,谢谢!请问这些补丁是在3.0.2中也需要添加的吗?
YiKai Chen:
回复 user5957818:
是
user5957818:
回复 YiKai Chen:
差可能发现这些之前都已经加上了,可能是3.0.2在3.0.1基础上更新时已经做了的工作?
Alvin Chen:
回复 user5957818:
请看:C:\Texas Instruments\Z-Stack 3.0.2
Z-Stack 3.0 Release Notes