TI中文支持网
TI专业的中文技术问题搜集分享网站

Zstack Mesh 1.0.0 出现的问题,协调器断电之后,再次上电终端设备无法从新入网

我设置终端信道为

-DDEFAULT_CHANLIST=0x00100000

协议栈为 MESH 1.0.0。

开启了

NV_RESTORE
NV_INIT

协调器断电之后,再次上电终端设备无法从新入网。但是如果我按复位键,从新启动终端设备,终端确可以迅速加入网络。

这里怀疑是因为我在协调器上使用了 NLME_PermitJoiningRequest(0x00)函数导致的,但是我开了NV,并且终端已经入网成功过,为怎么还会出现无法入网的情况。而且终端设备重启却可以正常入网。

Viki Shi:

NLME_PermitJoiningRequest只会禁止新入网的设备,已经入网过的设备不会被阻止。

断电重启跟reset的区别是,reset复位,有些急村级或者ram区的数据不会被清除,而断电重启是清除所有。一般来说,双方都开启NV_RESTORE,断电重启是可以正常恢复网络的。这里有个条件,代码在起作用之前需要CPU的各模块都ready,如果断电后没有做好上电复位工作,有可能出现你说的情况

qi yang:

回复 Viki Shi:

终端在已经加入协调器网络后,在协调器开启了,NLME_PermitJoiningRequest(0xff);限制新设备加入网络

终端设备始终通电。断开协调器一段时间后,过(N个小时)再次开启协调器,终端无法入网。

NV_INITNV_RESTORE

都开启了。PANID始终没变,终端设备devState 是 2(通过液晶显示)。

在上一次出现这种问题时,我开启协调器NLME_PermitJoiningRequest(0x00),之后设备可以正确入网。

出现这种情况一般是什么原因那?

我在终端设备上还应该把什么参数显示出来,作为判断那?

fly sun:

回复 qi yang:

我的终端始终加入不了协调器,用的2.5的sampleapp,单步调试状态一直是DEV_NWK_DISC,是什么原因呢

qi yang:

回复 fly sun:

有可能的情况太多了啊。你用同一个工程下的协调器和终端,开erase flash下载后实施。

赞(0)
未经允许不得转载:TI中文支持网 » Zstack Mesh 1.0.0 出现的问题,协调器断电之后,再次上电终端设备无法从新入网
分享到: 更多 (0)