协调器起初是可以加网的,但不知什么原因都不能加网了,重启也不行。问题表现为协调器收到beacon request后,回包的Assoc为0,Rtr_cap为0,Dev.cap为0,如图;协调器一直是允许加网的,同时AssociatedDevList也没有溢出。
VV:
协调器是不是使能了NV_RESTORE,之前是不是有其他的设备加过,已经把协调器加满了。
重新擦除烧写协调器上的程序试试
yanqing Young:
回复 VV:
谢谢你的回复!
是使能了NV_RESTORE,但是协调器并未加满(assoclistDevList没有满)。我有以下补充
1)我设置zgChildAgingEnable=true;
2)开启加密(SECURE=1);而不加密(SECURE=0)还没有出现不能加网的情况
yanqing Young:
回复 VV:
用以下方式可以重现该问题:
网络组成:1个coordinator加一些end device,没有router
1、加end device加入coordinator直到加满assoclistDevList;
2、开启了zgChildAgingEnable=true,将end device全部断电,等到assoclistDevList清空;
3、确认assoclistDevList已清空,再拿新一批的end device准备加入coordinator,这时候问题出现了:前面可能可以加进几个end device,但很快就不能加了,而assoclistDevList并未加满,之后就再也不能加网了,只能erase nv才能恢复。
VV:
回复 yanqing Young:
你好,
你说的前面几个可以加,后面加不了了。
加不了的时候的数据包是怎么样,是beacon里面显示associate list满了呢,还是说协调器分配了短地址就没有后续过程了。
能不能把你的整个抓包文件,用附件上传下。谢谢!
gancheng:
回复 VV:
请教一下associate list能有多大,是不在只跟RAM的大小有关,我记得以前E2E论坛TI的工程师说最多32个。
VV:
回复 gancheng:
是的 跟RAM的大小有关。
具体看你们的RAM使用情况。