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.

请问使用“ZDP_EndDeviceBindReq”方式进行绑定后,绑定表是存在哪个设备里的?

    比如,A是协调器,B是控制端,C是被控制端。

    通过B和C都向A发送“ZDP_EndDeviceBindReq”的方式实现绑定后,绑定信息是存到里协调器A呢,还是控制端B呢?

    1)、如果是存在协调器A中,在B控制C时,关掉协调器A也是可以控制的,所以绑定信息应该不是在协调器中,否则设备B不能从绑定表中获取到C的网络地址;

    2)、如果是存到控制设备B中,在绑定过程中,B和协调器A的数据通讯包中,从End Device Bind Request--->>到Unbind Request--->到Bind Request--->到最后的End Device Bind Respons,数据包中并没有包含过被控制设备C的网络地址,只有C的64位IEEE地址。那么绑定成功后,B是怎么知道的C的网络地址的呢?

先绑定超时再绑定成功.rar
  • 调用ZDP_EndDeviceBindReq函数进行绑定,这种绑定方式必须要有协调器设备存在,两个设备通过按键在一定时间间隔内调用ZDP_EndDeviceBindReq函数完成绑定。此时绑定信息是存放在B中的,之后无需网络地址即可实现B和C之间的通信

  • @Susan Yang

    问题2里,设备C的网络地址是通过什么途径传给B的呢?看抓包数据,B和C是没有数据传输的,协调器A和设备B的数据包中,也没有设备C的网络地址信息呀,只有C的64位IEEE地址信息。

    绑定后实际控制时,看抓包数据也是通过网络地址发送的呀。