Zigbee brightness cluster attribute and cluster

Hello,

Using v1.9.1 nrfConnect and the Coordinator example on a nrf52840 -DK.

From Nordic docs:


I think I may be miss interpreting Zigbee Cluster spec...

Below is example of an RGB light bulb I'm trying to change brightness on but can't get it to change.
(I tried many different ways too long to list)

#1  Based on below cluster info etc. can you give example of ZCL commend format to set brightness to 50%?
We can use "move to level" to 50%. I believe range is 0x000 - 0xfe if I read it right?

I can turn same bulb on/off by sending on/off command. 
zcl cmd 0xcf3e 01 0x0006 0x01 --- ON, as example.

But I can't read the attribute showing on/off status? Am i missing some setting in Kconfig?
I tried including profile id 0x0104 also since my default is HA.

#2  Can you me show ZCL command example of how to read this?


From Nordic doc: 
zcl attr read h:dst_addr d:ep h:cluster [-c] h:profile h:attr_id


PS: I looked at other tickets but looks like my issue is much simpler.

Thank you, Jorgen

  • Thanks Andreas!
    Yes looks like I missed the payload format. I will have to decipher this a bit.

    • zcl cmd 0x8041 10 0x0008 0x02 -l 00A01400

    I will try this.

    Thanks, Jorgen

  • Continued..
    Yes I meant the "light switch" example you are referring to above.
    You assume correct. I can retrieve node ID's, clusters number of endpoints etc. as per screenshot I sent.
    Thanks for your help!

    Jorgen

  • Hi Jorgen,

    How is the progress going? Did the commands I posted work, and can we close this ticket? If not, please let me know if you have any additional questions regarding this specific ticket! 

    Kind regards,
    Andreas

  • Hi Andreas,
    Yes your command worked but haven't been able to get others to work like "step up" or "move to level".
    Is it possible for you to elaborate on the payload in your example 

    • zcl cmd 0x8041 10 0x0008 0x02 -l 00A01400

    "currentLevel" being "160" ? What is the range of current level attribute?
    How is 160 level represented in the payload?
    What table is this defined in in the Cluster doc?

    If I use "move to Level" command 0x00 what is the range? An example on this would be great.

    I think I'm entering the wrong payload parameters.

    Thanks, Jorgen

  • Hi Jorgen,

    I will see if I can test this myself either tomorrow or on Monday. The commands were fetched from an internal course a way back and they might have changed in newer SDKs

    JorgenM said:
    How is 160 level represented in the payload?

    160 should be represented by A0 in the payload, but I see now that it is not as clear as it might have been. However, there are a part of that payload that has data that are not 160. I will have to look into what the other bytes in the long payload is.

    JorgenM said:
    What table is this defined in in the Cluster doc?

    I will also find this again and supply it to you

    Kind regards,
    Andreas

Related