Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ubisys D1 ZCL command "Move to level" fails 50% #2234

Closed
o-live-r opened this issue Dec 23, 2019 · 5 comments
Closed

Ubisys D1 ZCL command "Move to level" fails 50% #2234

o-live-r opened this issue Dec 23, 2019 · 5 comments

Comments

@o-live-r
Copy link

I am looking for a working solution for programming the two switch inputs.
My goal is that switching input 1 dims up to 20%:bulb: when switched on via a static switch (toggle switch) and dims down to 0%:bulb: when switched off.
Switching input 2 should dim up to 100%:bulb: when switched on and dim down to 20%:bulb: when switched off.

The function is to use a twilight switch at switch input 1 to switch on a night light and when a motion detector is triggered, the light at switch input 2 is to be raised to 100%:bulb:.
As soon as the run-on time of the motion detector has expired, the light should then be dimmed back down to 20%:bulb:. The twilight switch is to switch off the light completely dimmed at a certain brightness. The motion detector has also integrated a twilight switch and will then no longer trigger even with the same brightness. All switching operations should be dimmed.

All of this should work without a zigbee connection and be programmed in advance on the D1.
I have already tested the following ZCL commands with 50% success rate 😞 :

Status 4841     element type: 0x41 (raw data)
  04 00   element count: 0x0004 (4 entries)
works 10     element #1: ten bytes
works 00     InputAndOptions: 0x00
works 0D     Transition: released -> pressed
works 02     Source: Endpoint #2 (hosts primary on/off client cluster on D1)
works 08 00   Cluster ID: 0x0008 – level control
works 04 FF0E 0000 ZCL Command Template: Move to level, transitiontime,
fails 10     element #2: ten bytes
fails 01     InputAndOptions: 0x01
fails 0D     Transition: released -> pressed
fails 02     Source: Endpoint #2 (hosts primary on/off client cluster on D1)
fails 08 00   Cluster ID: 0x0008 – level control
fails 04 FF0E 0000 ZCL Command Template: Move to level, transitiontime,
works 10     element #3: ten bytes
works 00     InputAndOptions: 0x00
works 03     Transition: any state -> released
works 02     Source: Endpoint #2 (hosts primary on/off client cluster on D1)
works 08 00   Cluster ID: 0x0008 – level control
works 04 2A10 0000 ZCL Command Template: Move to level, transitiontime,
fails 10     element #4: ten bytes
fails 01     InputAndOptions: 0x01
fails 03     Transition: any state -> released
fails 02     Source: Endpoint #2 (hosts primary on/off client cluster on D1)
fails 08 00   Cluster ID: 0x0008 – level control
fails 04 2A10 0000 ZCL Command Template: Move to level, transitiontime,

Unfortunately I can't get any further without help, because I don't understand why calling the "Move to level" function for input 0x00 works for both switching operations at switch 1 and the function completely fails for input 0x01 (switch 2).
The values ​​from the table only describe my approach. The above-mentioned goal remains. Unfortunately I did not find any further explanations in the technical reference. Where is the mistake?:thinking:

@o-live-r o-live-r changed the title Ubisys D1 ZCL command "Move to level" 💡 fails 50% Ubisys D1 ZCL command "Move to level" fails 50% Dec 23, 2019
@ebaauw
Copy link
Collaborator

ebaauw commented Dec 23, 2019

10 is sixteen bytes, not ten. If I count correctly, the second element is taken to be four bytes in length and the third element happens to start where you think it would.

@o-live-r
Copy link
Author

You got me on the right track. I experimented with the byte length and with 9 bytes it worked just fine. 😃 👍

@o-live-r o-live-r reopened this Dec 23, 2019
@o-live-r
Copy link
Author

Here is the right code. I forgot to mention that I edited the length of the ZCL template.

Status 4841     element type: 0x41 (raw data)
  04 00   element count: 0x0004 (4 entries)
works 09     element #1: nine bytes
works 00     InputAndOptions: 0x00
works 0D     Transition: released -> pressed
works 02     Source: Endpoint #2 (hosts primary on/off client cluster on D1)
works 08 00   Cluster ID: 0x0008 – level control
works 04 FF 0E00 ZCL Command Template: Move to level, transitiontime,
works 09     element #2: nine bytes
works 01     InputAndOptions: 0x01
works 0D     Transition: released -> pressed
works 02     Source: Endpoint #2 (hosts primary on/off client cluster on D1)
works 08 00   Cluster ID: 0x0008 – level control
works 04 2A 0E00 ZCL Command Template: Move to level, transitiontime,
works 09     element #3: nine bytes
works 00     InputAndOptions: 0x00
works 03     Transition: any state -> released
works 02     Source: Endpoint #2 (hosts primary on/off client cluster on D1)
works 08 00   Cluster ID: 0x0008 – level control
works 04 2A 0100 ZCL Command Template: Move to level, transitiontime,
works 09     element #4: nine bytes
works 01     InputAndOptions: 0x01
works 03     Transition: any state -> released
works 02     Source: Endpoint #2 (hosts primary on/off client cluster on D1)
works 08 00   Cluster ID: 0x0008 – level control
works 04 00 0100 ZCL Command Template: Move to level, transitiontime,

@wb441
Copy link

wb441 commented Feb 16, 2022

Dear o-live-r,

I was so happy to find this thread. Been looking for a way to do this!
But I'm missing a crucial piece of information: how/where do you send this configuration to the device?
I'm not working on Deconz, but instead on the zigbee2mqtt implementation.

Best regards,

@o-live-r
Copy link
Author

o-live-r commented Feb 16, 2022

I did it the same way as sheineme commented on 9 Jan 2019 #360 (comment)
I don't know other possibilities.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants