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

zigbee 能不能通过OTA更换设备类型(从ZR更换为ZED,或者相反)?

CC2538 Z-stack 3.0.2协议栈,通过测试,发现好像是可以直接通过OTA固件来更换设备类型,从ZR更换为ZED,但是遇到几个问题

1、起初两个设备都是ZR,短地址0x1234,0x5678,同时给这两个设备OTA ZED的固件,几乎是同时成功的,一前一后自动重启到最新ZED固件并重新入网成功,但此时给其中一个设备0x1234发送单播指令允许default response,抓包发现,0x1234收到之后并发出default response目标地址是0x0000,但是0x0000收不到对应的response,ubiqua抓包发现0x1234把default response先发送给了0x5678,但是0x5678并没有转发(这里0x5678已经是ZED了不可能转发的,只有ZR才会转发),最后不得不把两个设备都断电重启,再次测试给两个设备发送单播指令,0x0000都能收到response了

原因可能是0x1234以为它的父节点0x5678还是ZR,所以把指令先发给了它,然后结果这个父节点此时其实是ZED,不是ZR,如何避免?

2、修改了f8wConfig.cfg,让-DRFD_RCVC_ALWAYS_ON=TRUE,-DPOLL_RATE=14400000,就是poll rate改为240分钟,另外不让ZED进入休眠模式,就能及时收到控制指令,但是有一个问题,按理说此时不影响poll rate(也就是Data Request的频率)才对,但抓包发现,几乎ZED每隔很短的时间都一直在发送Data Request,大约几秒钟或者每次收到消息都会发,这样似乎在组播模式下,会增加网络拥塞的情况。

YiKai Chen:

1. 你改了設備型態應該就只能重啟行了,這應該避免不了
2. 有抓包檔可以說明你的問題嘛?

Alvin Chen:

回复 YiKai Chen:

对于1:建议你重启后加一个bdb_resetLocalAction 试一下,擦除NV。

miffy:

回复 Alvin Chen:

bdb_resetLocalAction直接离网并擦除网络信息,后面网络是closed状态根本再也添加不进去了,如果设备安装在不可接触的位置,怎么能让它重新入网?

Alvin Chen:

回复 miffy:

这应该基本无解,改变了device type是无法rejoin进去的。要是ZNP网关还好很多可以网络管理。

赞(0)
未经允许不得转载:TI中文支持网 » zigbee 能不能通过OTA更换设备类型(从ZR更换为ZED,或者相反)?
分享到: 更多 (0)