微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > PANID修改之后,子设备怎么跟着加入修改后的PAN网络

PANID修改之后,子设备怎么跟着加入修改后的PAN网络

时间:10-02 整理:3721RD 点击:

应用场景如下:

移动设备1集成了协调器1,PANID为0x001,移动设备2集成了协调器2,PANID也是0x001,
因为他们两个PAN不在同一地点,所以组网的时候并没有产生PANID冲突事件。
但是由于某种原因,我拿着移动设备1走动,移动到了移动设备2的PAN范围内了,这时候,
两个网络通信互通了,因为我们发送数据是依据PANID和网络地址的,用长地址通信除外,
而且正好他们的子设备也有相同的网络地址,因此我必须给移动设备1下的协调器更新一下
PANID,但是我改变了PANID之后其子设备就由于有同步检测,检测到丢失协调器成为孤儿节点。

问题1:
怎么让子设备还是加入到原来的协调器网络中(改变PANID后)

问题2:
成为孤儿节点后怎么让其加入到其他网络
因为我调试发现是不能再加入其它PAN网络的,除非你之前的协调器恢复了,
ZDO_StartDevice函数代码中有这段注释:

        // For devices with RxOnWhenIdle equals to FALSE, any network channel
        // change will not be recieved. On these devices or routers that have
        // lost the network, an active scan shall be conducted on the Default
        // Channel list using the extended PANID to find the network. If the
        // extended PANID isn't found using the Default Channel list, an scan
        // should be completed using all channels.

 

        // When ApsUseExtendedPanID is commissioned to a non zero value via
        // application specific means, the device shall conduct an active scan
        // on the Default Channel list and join the PAN with the same
        // ExtendedPanID. If the PAN is not found, an scan should be completed
        // on all channels.
        // When devices rejoin the network and the PAN is not found from

 

问题1:

可以使用让每个节点加固定的ExtendedPanID,这是一个64bit的值,一般Coordinator在建立网络时用自己IEEE地址作为ExtendPanID,所以每个协调器间是不同的,让节点固定的加这个协调器,而不仅仅是加一个PANID了。

问题:

一种是先leave先前的网络,然后启动加网过程

另外一种可以强制把NV init掉,然后启动加网过程

追问

 

问题1:

怎么指定加入扩展PANID,指定之后协调器坏了,那这个子设备不是永远掉线了?

问题2:

我目前的操作是成为孤儿节点后,扫描8次后软重启

leave我居然没去试过,待会试试看

擦出NV的话,还是得重启才行,所以擦不擦除都一样。

 

望VV继续给予解答,非常感谢

问题1,

可以在程序里面设置zgExtendedPANID,对的,就永远掉线了,除非有一个ExtendPANID一样的PAN。

 

VV,你好!我希望我网络中的节点,在coordinator掉电之后,不加入别人的网络,只有在coordinator重新上电之后设备们才能加入他,这如何解决呢?

添加宏NV_RESTORE

并跟协调器组网一次。或者上面所说,用扩展ID。

上一篇:求完整的API函数
下一篇:zigbee信道问题

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top