我用CC2530 ZSTACK,一个协调器下面带了三个终端节点,请问协调器如何知道一个终端节点已离开网络?
Susan Yang:
一般情况下是父节点来探知子节点是否离开网络。
这需要在网络建立及维护时 获取网络中的设备信息,可通过每个设备的AssociatedDevList(关联表)中的信息来统计整个网络中的设备信息。associated_devices_t AssociatedDevList[NWK_MAX_DEVICES];这个数组里保存的为与此设备相关联的设备表,它保存的并不是 ZigBee 网络中的所有设备信息。
判断节点离开可以声明一个和AssociatedDevListge同样宽度的表来存储在一定时间内接收到子节点的数据量。如果一定时间内没有接收到子节点的数据认为是已离开网络
MarS:
回复 Susan Yang:
节点离开网络时, 有没有一个像ZDP_DeviceAnnce一样的函数,通知网络中的设备它离开了网络
guanglong zhu:
回复 Susan Yang:
你好,路由设备可以定时通过查看邻居表来确定终端设备是否离线吗?如果一个终端设备离线了,它的父节点的邻居表会更新吗?
user3734979:
回复 Susan Yang:
是必须在应用层处理吗?协议栈本身不带检测子节点离线的功能吗?
Alvin Chen:
回复 user3734979:
这都14年的帖子了,有问题请重新发帖。
如果你是新的协议栈1.22a以上版本可以使用child aging
YiKai Chen:
回复 user3734979:
建議用最新Z-Stack 3.0.1可以預設支持Zigbee core spec R21的child aging功能