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

Generate command from Zigbee Client Cluster based on local binding table

Hi at all,

I'm developing a Zigbee router device that implement a level control client cluster (ID 0008).

This cluster should be able to generate commands to server side (level control server cluster in other existing device).

Following light switch example I succesfully send a command using ZB_ZCL_LEVEL_CONTROL_SEND_MOVE_TO_LEVEL_CMD, but in that example the destination device is specified in destination address parameter, my target is to send the command to devices listed in local binding table (only for entries that meets implemented endpoint and cluster).

How can i do this?

Best Regards

Maurizio

  • Hello Maurizio.

    Did you examine the light_switch_group example in

    SDK\examples\zigbee\experimental\light_control\light_switch_groups

    ?

    Is it an option to have the devices in a group like this? Or do you need to send it to the devices individually?

    BR,

    Edvin

  • Hello Edvin,

    thank you for reply. I already took a look to the light_switch_group example, also in this example the command function use as destination address parameter the group ID, selected by software, this is a static value. I need to send the command to all devices (or groups) listed in binding table.

    If the SDK have no capability to do this with standard functions, a workaround can be to read local binding table and send the command to entries that meets my endpoint and cluster.

    By the way, can I access to local binding only calling zb_zdo_mgmt_bind_req function or there's another simply way?

    BR

    Maurizio

  • mau said:
    By the way, can I access to local binding only calling zb_zdo_mgmt_bind_req function or there's another simply way?

     Not that I am aware of. 

    You can look at the multisensor example test description how the coordinator finds the multisensor device using zdo "match_desc 0xffff 0xffff 0x0104 2 0x0402 0x0403 0"

    I assume there is a specific cluster you are looking for, that you want to control?

Related