This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

70个节点组网后,通讯易发生路由请求风暴,如何解决,寻求TI zigbee协议栈中关于路由的设置或其它解决方法

测试环境:

设备:一个协调器C,69个开关(可以接收命令和发送状态,类型是路由器)。
问题:1,协调器C只发送一条单播命令,发现有较多的route reques数据包,有时需要十多秒才能终止,有时没有一条route reques。
2,如果协调器C逐一给69个开关发送一条单播命令,1秒间隔,route reques包会更多,且时间长,很长时间才能停止。曾出现过,在协调器发送几个小时的间隔1秒逐一对开关的单播命令后,将
协调器关闭电源(其它节点只是静默的接收,因为没有收到是不会单播回复的),route reques 的数据包在第二天上午来上班仍然不能停止。
3,出现以上问题,应该是协议栈关于zigbee路由方面的设置有待优化或是忽略的,希望能得到指点。


附测试产品相关的配置,协议栈:zigbee1.2.2a。
我们产品还含有电池产品(end_device),所以代码中将zgChildAgingEnable设为TRUE。
一、协调器C部分设置代码:
协调使用的是TI官方的ZNP修改后加上一些按键及LED灯。
1,f8wConfig.cfg 中:
/* Enable ZigBee-Pro */
-DZIGBEEPRO
/* in seconds; set to 0 to turn off route expiry */
-DROUTE_EXPIRY_TIME=30//0
/* The number of simultaneous route discoveries in network */
-DMAX_RREQ_ENTRIES=20//8
/* Number of entries in the regular routing table plus additional
* entries for route repair
*/
-DMAX_RTG_ENTRIES=40//40

2,nwk_globals.h
// If ZIGBEEPRO is defined - define all the features for Zigbee Pro
#define NWK_LINK_STATUS_PERIOD 60 // 15 seconds
3,ZGlobals.c
uint8 zgRouterOffAssocCleanup = TRUE;
uint8 zgNwkLeaveRequestAllowed = TRUE;
#if ( ZG_BUILD_ENDDEVICE_TYPE )
uint8 zgNwkParentInformation = NWK_PARENT_INFO_UNDEFINED;
#else
uint8 zgNwkParentInformation = NWK_PARENT_INFO_MAC_DATA_POLL;//NWK_PARENT_INFO_ORPHAN_NOTIFICATION;
#endif
uint8 zgChildAgingEnable = TRUE;


二、开关部分的设置代码。
因为RAM的原因,和C的设置有如下差别,其它的设置是一样的
/* The number of simultaneous route discoveries in network */
-DMAX_RREQ_ENTRIES=12//8
/* Number of entries in the regular routing table plus additional
* entries for route repair
*/
-DMAX_RTG_ENTRIES=80//40