This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

zigbee 路由表的疑问

Other Parts Discussed in Thread: CC2530

 协调器0x0000   路由器1(0x72C4)   路由器2(0xBC7B)  终端(0x8EB9)
终端(0x8EB9)的老父节点  路由器1(0x72C4)   和新父节点 路由器2(0xBC7B)
协调器发送数据 给终端(0x8EB9)  发送Route Request     路由器1 (0x175E)和路由器2(0xAECE)都回复了Route Reply
协调器0x0000重启  发送数据给终端
如果是老父节点 路由器1(0x72C4)先回复 Route Reply 导致协调器路径更新为 0x0000->0x175e->0xBEB9   但实际路径是0x0000->0xBEB9->0xBEB9  
如果是新父节点 路由器2(0x8EB9)先回复 Route Reply 则发送成功  
附上抓包数据
请问出现这种情况我该怎么解决
协调器重启发送.zip
  • 上面写错一个地方:如果是老父节点 路由器1(0x72C4)先回复 Route Reply 导致协调器路径更新为 0x0000->0x175e->0xBEB9   但实际路径是0x0000->0xAECE->0xBEB9  

  • 原因是不是老父设备还认为子设备还在。

    你可以看下老父设备中AssociateList里面还有没有这个父设备。

    另外子设备在切换新父设备的时候,发出来的device Announce 老的父设备是有收到,你试用哪个版本的协议栈?

  • 原因:             老父设备应为断电原因没有收的device announce ,故仍然认为该子设备存在与自己列表中。

    故我协调器重启 发送数据给 终端设备,发现路径route request时,老父节点和新父节点都回复route rely,

    如果协调器首先收到老父节点回复route rely 则路径错误。

    重点:老父节点 发现这条路径错误 发送Network Status至Coord ,但是Coord没有任何反应 ,也不会更新路径

    请问这是什么原因?          

    抓包数据:第1238包       路由器发送Network Status数据包

    协调器使用的是TI cc2530 zha1.2.2.a协议栈                  路由器采用marvell芯片具体使用哪个协议栈未知但是 遵循zha1.2标准