协议栈:mesh1.0
芯片:网络内均为CC2530
网络:协调器*1,路由*2,
拓扑:路由1接到协调器,路由2接到路由1下。
描述:
1.路由1的关联表储存了路由2的信息。
2.当路由1异常掉线后。路由2接到协调器下。
3.在协调器关联表没有生成关于路由2的信息。
问题:我是通过获取协调器和每个路由的关联表来更新网络设备的状态。
如果出现以上情况,那么路由2的信息就丢失了。
请问可以通过什么方式,来使协调器更新到路由2的信息。
Alvin Chen:
你描述的是现象是正常的,AssociatedDevList是储存的是设备的子设备。
如果你路由2距离协调器特别近应该会在neighbortable里面。
实际上为了保持合理利用flash,我们新的协议栈中加入Childaging ,是可以在节点掉线后移除AssociatedDevList中掉线的设备的。
至于router 2,如果你想直接操作他,可以在rtgTable中找到他。
当你两个设备都在网络中时:
当有一个设备丢失时: 可以看到rtgTable[1]清空了,而rtgTable[0]依然在