This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Zigbee Find, Bind, Subscribe.

Hello.

I am trying to implement a Zigbee Network were sensors will be posting data periodically to a Coordinator. 

I was looking into the examples provided with the SDK and realized that the Zigbee MultiSensor example is similiar to what i want to implement. The End Device set the attributes and the Coordinator susbcribe to it.

I wanted to know if there is some documentation that describes how i can implement in code the configuration required for the Zigbee CLI Coordinator. I want to perform the find, bind and subscribe using the stack functions. I would really appreciate if you can help me with some example code for that.

Thanks! 

Parents
  • Hi,

    You can find the Zigbee functions that are called in the CLI example if you open the project. In components/zigbee/cli/zigbee_cli_cmd_zdo.c you can find the zdo functins, such as "zdo bind on".

    On line 1816-1831 is a list of the different commands, and the last parameter in the NRF_CLI_CMD() call is the function that is called. So the "zdo bind on" calls m_sub_bind (this is not the last entry, but it is used to differentiate between bind on and bind off). Which again calls cmd_zb_bind on line 1811 in the same file.

    The zcl commands are listed in zigbee_cli_cmd_zcl.c. As you can see, the zcl_subscribe on calls m_sub_subscribe() -> cmd_zb_subscribe(), which is found in components/zigbee/cli/zigbee_cli_cmd_attr_report.c.

    Reports are received by a function cli_agent_ep_handler_report , which gets called from cli_agent_ep_handler which is registered in main function of cli_agent_router example with ZB_AF_SET_ENDPOINT_HANDLER macro.

    I hope this can be of help. Let me know how it goes!

    Best Regards,

    Marjeris

Reply
  • Hi,

    You can find the Zigbee functions that are called in the CLI example if you open the project. In components/zigbee/cli/zigbee_cli_cmd_zdo.c you can find the zdo functins, such as "zdo bind on".

    On line 1816-1831 is a list of the different commands, and the last parameter in the NRF_CLI_CMD() call is the function that is called. So the "zdo bind on" calls m_sub_bind (this is not the last entry, but it is used to differentiate between bind on and bind off). Which again calls cmd_zb_bind on line 1811 in the same file.

    The zcl commands are listed in zigbee_cli_cmd_zcl.c. As you can see, the zcl_subscribe on calls m_sub_subscribe() -> cmd_zb_subscribe(), which is found in components/zigbee/cli/zigbee_cli_cmd_attr_report.c.

    Reports are received by a function cli_agent_ep_handler_report , which gets called from cli_agent_ep_handler which is registered in main function of cli_agent_router example with ZB_AF_SET_ENDPOINT_HANDLER macro.

    I hope this can be of help. Let me know how it goes!

    Best Regards,

    Marjeris

Children
Related