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.

zstack中父节点如何获取自己的子节点相关信息

Other Parts Discussed in Thread: Z-STACK

如题;父节点如何知道有哪些子节点已经加入网络,如何区分出这些子节点分别是什么功能,支持哪些端口和服务等等

  • zigbee入网规则中,子节点加入网络会得到父节点分配的16位短地址,以此区分不同节点。

  • 我其实想问,协调器如何知道网络中所有设备的16位短地址,他们分别注册了哪些endpoint,那些endpoint分别又支持哪些cluster,

  • 你好,

    协调器知道网络中设备的16地址,你有几种方法可以获得

    1)每个节点入网的时候都会发出来Device Announce,这个消息是广播消息,那么协调器也可以收到的消息,你把对应的设备的地址保存下来就可以了。

    2)通过ZDP_IEEEAddrReq来获得,具体做法在文档 C:\Texas Instruments\Z-Stack Home 1.2.0\Documents Method for Discovering Network Topology.pdf

    3)通过ZDP_MgmtLqiReq,做法跟2)类似。

    在知道节点的短地址以后,按照下面顺序

    1)发送Node Descriptor Request, 在Node Descriptor Response里面,会获取关于zigbee设备层面的基本信息,包括节点类型,供电方式,哪个厂家的,工作在哪个信道,等等,具体可以看ZigBee Specification 和ZigBee Cluster Library

    2)然后再发送Active Endpoints Request,在Active Endpoints Response里面,会获取关于节点支持哪些endpoint

    3)然后针对每个Endpoint发送 Simple Descriptor Request,在Simple Descriptor Response里面,会获取这个endpoint下面支持的profile、 out cluster、in cluster等等,到此关于这个节点的基本的设备信息,应用信息,功能信息都获取到了!

  • 暂时没有验证,应该可行

  • 谢谢分享,很实用的功能