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

怎样使设备重新搜索、加入网络?

     cc2530设备开始时在网络中,通信正常。使用某种机制,设备得知自己所处的网络不存在了,此时怎样才能使设备重新搜索、并加入新的网络?

 

Jane Yang:

使能NV_RESTORE

wb:

回复 Jane Yang:

  使能 NV_RESTORE 后, cc2530设备就会自动重新搜索网络,还是要执行别的什么?

yan kevin:

回复 Jane Yang:

使能NV_RESTORE有一个问题,设备都加入协调器后,会把协调器的关联表填满,然后新的设备发入网请求都不可能加进来啦,如果不启用NV_RESTORE,碰到这种问题通过重启协调器还有用,启用了NV_RESTORE,就只能重刷程序啦???

wb:

回复 yan kevin:

可不可以不用复位cc2530,而只是使zigbee协议栈重新初始化、搜索网络,和上电时走的类似?我的cc2530 gpio 有作别的功能,不允许复位芯片。

Peter Yin:

我也碰到相同的问题,在不复位end device的情况下使用nv_restore并不能解决问题,当原来的pan消失后,一个有新的pan id的pan网络 建立后,这个end device并不会加入新的pan网络。搞不清楚为什么。

yan kevin:

回复 Peter Yin:

peter yin,

你在end device软件里设置,当ED感应到ZBC不在一会了,就让end device软重启,不就可以加入新的网络的么。。

Peter Yin:

回复 yan kevin:

软重启是怎么个启动法?这个我不知道,没有做过。麻烦你教我一下,谢谢。

通过加log,发现如果把zbc掉电后,zbe的scan模式为变为orphan模式一次,然后以后一直都是active mode,既然变为orphan模式,说明zbe已经知道zbc不在了。

如果这时候zbc再上电,它会创建一个pan网络(pan id和原来的不一样),这时候zbe也能收到zbc的beacon,但是看不到nwk的代码,不知道怎么处理的。反正从应用层上看zbe和zbc的通信就断了。

WZ:

回复 Peter Yin:

你没有加nv的时候,zbc是不能掉电的,zigbee是这样规定的。所以nv是我们常见的保护方式。 当你的父节点出现问题,他还是会去寻找新路径的

Peter Yin:

回复 WZ:

父节点出问题,它是会寻找新路径,可是从现象看,它只能加入到panid和原来一样的网络,如果新的网络panid和原来不一样,它加入不了啊,现在就是搞不清这一点。nwk也不开源,没法看代码。

从协议上看,即使原来的网络没有问题,如果有新的网络信号质量更好的话,它应该也有加入新的网络的能力啊。

Peter Yin:

回复 Peter Yin:

看来确实是zstack的问题,经过几天的调试,发现zbe在发现失去与zbc的通信后,会把自己的状态置为rejoin状态,而这种状态下zbe只会加入原来panid的网络,如果置为join,就能加入新的panid的网络了。

赞(0)
未经允许不得转载:TI中文支持网 » 怎样使设备重新搜索、加入网络?
分享到: 更多 (0)