为什么NLME_ReJoinRequest的时候会失败?
时间:12-22
整理:3721RD
点击:
我们的这是z-stack测试,终端节点启动NV_RESTORE,在多个路由环境下,当节点的路由断电后,节点就会进入scan模式,然后找到了一个新的parent,然后在NLME_ReJoinRequest时,就失败了。当时试验环境的隔壁,有另外一个PAN
NLME_ReJoinRequest在什么情况下会失败?NLME_ReJoinRequest的参数里面怎么只有extern PANID和信道?但是我看到REJOIN数据包里面包含了parent的网络地址,还有PANID,这些参数是通过什么方式获得?
NLME_ReJoinRequest返回的值是多少?
第二个问题在另外个帖子里回答你了!
NLME_ReJoinRequest返回值为0,然后立即会进入ZDApp_ProcessNetworkJoin,在该函数断点中,查看全局变量nwkStatus,等于1。
当时环境中存在其它的路由器(PANID和key都不一样)
这种情况会不会导致REJOIN失效?协调器芯片建立了一个网络,然后有路由加入后,并保存NV_RESTORE。然后协调器重新烧写程序,用一个新的PANID。但是这个时候我把原来的路由关掉,然后加入一个新的路由,然后再加入新的终端节点。然后我再把原来的路由打开,再把协调器关闭。
这时候,就会有两个externPANID相同的,但是PANID不同,信道不同,key不同。这个时候节点重新复位后,会REJOIN到哪个路由下面?