Dear TI,
目前我们在基于CC2530做家庭智能控制,作为一个产品,在实际使用中,有可能碰到周边同时有其他zigbee网络。为了避免网络冲突,需要考虑PanID如何配置,我们初步有下面几种想法:
1. 默认设置所有产品PanID为0xFFFF, 当协调器启动后随机生成一个PanID(或根据其IEEE地址后两个字节作为PanID),然后等待路由和终端加入。加入之后,路由和终端也同步为同样的PanID。 但是因为终端PanID默认配置0xFFFF, 有可能终端扫描到其他zigbee网络,加入到错误的Zigbee网络,这个如何能有效避免?
2. 默认出厂设置所有产品一个默认的非0xFFFF的PanID,比如0x1111, 但是这个有个问题,如果我们自己做的两个协调器离的比较近,一个已经是0x1111,另外一个扫描到此网络后根据规则PanID值要递增,这样也不行。
不知道贵司有没有碰到这样的问题,是如何来避免终端加入到其他网络之中的?
thanks
VV:
你好,
建议使用ExtendPANID使节点选择加入特定的网络,一般一个Coordinator建立网络的时候,通常用自己64位的IEEE地址来作为ExtendPANID,这样使得每个Coordinator建立的网络拥有唯一的ExtendPANID,所以节点在Discover网络以后,可以选择和自己设定的ExtendPANID相匹配的网络来join。
将zgApsUseExtendedPANID设置为了需要加入网络的ExtendPANID就可以了。
Piers Guo:
回复 VV:
Dear VV,
这种方法需要在实际用户安装或使用时候,现场配置节点的ExtendPANID值吧,工厂生产的时候还不清楚能和哪个协调器配对出售,一般家用节点中还需要引出和外部通信的串口,这样感觉实际安装操作起来比较麻烦。
有没有一种比较简单方便的方法,适合于工厂统一生产后,然后在用户家里安装时候可以方便操作呢,比如同时按一个键进行配对,或者近距离接触配置避免串网?
thanks
VV:
回复 Piers Guo:
你好,
可以使用EZ-Mode,可以实现按键或者其他类似操作方式来入网,具体你可以参考ZigBee Home Automation Specification的Chapter8.http://zigbee.org/Standards/ZigBeeHomeAutomation/download.aspx
Piers Guo:
回复 VV:
VV,
好的,多谢。
我初步了解了下EZ mode, 感觉是两个设备都按键启动EZMode,之后3分钟内允许设备加入网络,配对绑定成功后,就可以互相通信了。 但是个人感觉节点按键后,如果附近正好有开放的Zigbee网络,节点还是有可能加入到其他网络中的(串网), 这个只能说是小概率事件了。
Piers Guo:
回复 Aries Lord:
Dear Aires,
请问白名单技术如何实现,是根据节点MAC地址,然后通过直接加入(DirectJoin)方式, 允许指定的地址加入吗?
thanks
Aries Lord:
回复 Piers Guo:
协调器或者已入网的路由器里面,录入未入网设备的MAC地址,未入网设备可以入网。
qiaolin chai:
我也遇到了这样的问题,当一个协调器的PANID设置好以后,比如1234,周边的路由器、终端节点加入了网络1234,一切都正常运行。但是当协调器断电重启就不能回到原来的网络中去了。因为协调器重启时发现有一个1234网络在运行,所以,他的PANID自动加1了,成为了另一个网络,只有将所有路由器和终端节点都重启才能组成一个网络。我想,如果协调器的PANID在设置时,能否通过一个设置开关拨到设置位置,设置好PANID,将设置开关拨回到运行位置,重启时PANID就固定了,这个问题就能解决了。关键是与附近其他的协调器的PANID不冲突就可以。