一个协调器,带N个router,
运行几天,或者运行期间COORD和Routerr同时断电,
出现协调器PANID和信道全部改变。
协调器和Router均开启NV_init NV_RSTORE.
信道选择15.10.5.1
-DDEFAULT_CHANLIST=0x02108800
我做的第一个测试就是修改
-DDEFAULT_CHANLIST=0x00100000
仅使用一个信道,这样信道就不会改变。PANID同样会发生改变。
在查找问题的过程我发现一个很奇怪的问题。
#if !defined ( NWK_MANAGER )
#define NWK_MANAGER // WARNING: this should be enabled only for one device per network
#endif
NWK_MANAGER:在所有使用ZIGBEEPRO的协议栈中都是打开的,而这个宏却只适合COORD使用打开。
那么是否对于Router我可以直接注释该宏。
同时我正在 考虑注释另外两个宏
ZIGBEE_PANID_CONFLICT;ZIGBEE_FREQ_AGILITY
目前正在测试效果。
//====================================================
我只希望我的网络建立后,PANID和chnnel都不要发生改变。因为我的网络节点,不是经常在线的,
//===========================================================
顺道问下,有人使用CC2538替换CC2530的测试结果吗。目前CC2530做COORD能力有点不够,主要希望能够支持更多的节点,
VV:
你可以把ZIGBEE_FREQ_AGILITY注释掉,但是不要注释ZIGBEE_PANID_CONFLICT。
你的PANID是不是有固话的,还是0xFFFF。
coulson:
回复 VV:
PANID我是设置的自动获取,配置文件中=OXFFFF。
只要开启宏,他就自己改变PANID ,导致一些没有上电的设备离网。
我只需要在CORD建立网络的时候,PANID不冲突就可以了。
ZIGBEE_FREQ_AGILITY 我把这个注释后,还是出现一个奇怪的现象,
因为CORD选择可以是4个信道中的一个建立网络,而奇怪的是他可能跑到第5个信道建立网络,
-DDEFAULT_CHANLIST=0x02108800
后来没办法只能将配置固定在一个通道上。
-DDEFAULT_CHANLIST=0x00100000 20 – 0x14