芯片:CC2530
协议栈:zigbee1.2.2a
协议栈:zigbee1.2.2a
硬件环境:1个协调器,41个路由器节点,38个电池节点。
软件其它:
1,ZIGBEEPRO
2,使能多对一
1,ZIGBEEPRO
2,使能多对一
使用要求:
一般情况下,都是采取单播方式发数据给电池终端节点,但是有某些特殊需要,在某种情况,要发广播数据给到终端电池节点。
问题:
1,在发送广播时,终端节点几乎都能收到,不是100%,奇怪的是,某个时段后,如果某个终端电池节点在收不到广播时,之后的一段时间连续N次对它广播,始终还是这个节点不能收到广播。
2,对这个收不到广播的终端节点发送单播数据,100%能收到,抓包也能看到3秒周期的data request。协调器下发的数据的路由是源路由。
3,移动这个节点到其它位置偏离老父亲节点,不容易更换父亲。
4,后来发现,其更换了父亲节点,这个时候,再次广播数据时,此电池终端节点就可以收到广播数据了。
一般情况下,都是采取单播方式发数据给电池终端节点,但是有某些特殊需要,在某种情况,要发广播数据给到终端电池节点。
问题:
1,在发送广播时,终端节点几乎都能收到,不是100%,奇怪的是,某个时段后,如果某个终端电池节点在收不到广播时,之后的一段时间连续N次对它广播,始终还是这个节点不能收到广播。
2,对这个收不到广播的终端节点发送单播数据,100%能收到,抓包也能看到3秒周期的data request。协调器下发的数据的路由是源路由。
3,移动这个节点到其它位置偏离老父亲节点,不容易更换父亲。
4,后来发现,其更换了父亲节点,这个时候,再次广播数据时,此电池终端节点就可以收到广播数据了。
5,此现象,是什么原因造成的,盼高手给个意见。
谢谢!
2020年8月7日
2020年8月7日
Viki Shi:
怀疑是父节点的表里面丢失这个设备了,广播过后,路由是否转发此消息给节点?
user3514461:
回复 Viki Shi:
特意抓包看过,在收不到广播期间,这个电池终端节点,一直是在给老父亲发送data request ;而且,协调器单播发给它数据时,抓包也可以看到了,数据中转到了它的老父亲,是老父亲把单播数据给它的,这会是父节点丢失这个设备了?
Viki Shi:
回复 user3514461:
你有抓到路由转发协调器的广播吗?
user3514461:
回复 Viki Shi:
哦,有一个漏了说明,当时抓包时,这个终端节点和另外一个终端节点的父亲节点有同一个路由器节点,另外那个终端节点是可以收到广播数据的。
Viki Shi:
回复 user3514461:
那还是无法说明该节点的父节点是否转发广播数据给它