我固定了panid,又把panid+1改为panid。
然后抓包看到网络中同时存在两个协调器,子设备发送数据两个协调器都能收到。
请问这是为什么?同时存在两个协调器会对网络造成什么影响吗?
Alvin Chen:
你说所说的一个网络存在两个协调器是什么意思?一个网络是指设备组网,而不是同时存在就在一个网络中。
Viki Shi:
你说的是两个协调器PANID相同的情况,确实存在,这种情况可能造成网络不稳定。假如一个ZED搜网,发现两个协调器,会随机加入其中一个。没被加入的那个收不到ZED发来的信息,实际应用的时候无法分辨ZED加入了哪一个,比较麻烦
Susan Yang:
“固定了panid,又把panid+1改为panid”具体是如何操作的?另外能否给出抓包?
Brightness L:
回复 Alvin Chen:
就是有网络中有两个panid相同,短地址都为0x00的设备
Brightness L:
回复 Viki Shi:
感谢回复,经过测试,发现ZED加入任意一个协调器之后,往短地址0x00发送数据的话,两个协调器都能接收到一样的数据。反而,当网络中只有一个协调器的话,它和ZED的通讯是正常的,这时再添加一个协调器进网络中的话,协调器通过短地址给这个ZED发送数据反而失败,请问这是为什么?为什么两个协调器能接收到ZED的数据,却发送不了数据给ZED(短地址没错)?
Brightness L:
回复 Susan Yang:
固定panid是对-DZDAPP_CONFIG_PAN_ID进行设置
把panid+1改为panid是在DApp_CoordStartPANIDConflictCB中进行修改的
抓包:
Brightness L:
回复 Viki Shi:
经过测试,发现ZED通过任意一个协调器加入网络,往0x00发送数据的话两个协调器都能接收到。反而协调器通过短地址给ZED发送数据却不成功,要么延迟严重要么丢包。请问这是什么导致的?
TI中文支持网
