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

Lighting: Commands are applied in the reverse order as received. #26929

Closed
harimau-qirex opened this issue May 29, 2023 · 0 comments · Fixed by #26987
Closed

Lighting: Commands are applied in the reverse order as received. #26929

harimau-qirex opened this issue May 29, 2023 · 0 comments · Fixed by #26987
Assignees
Labels
spec Mismatch between spec and implementation

Comments

@harimau-qirex
Copy link
Contributor

When issuing commands to the example lighting app that hit the ColorControl cluster and the OnOff cluster, the commands are applied in the opposite order that they are received.

Steps (using the example lighting app):

  1. Ensure that OnOff is set to Off in the lighting app.
  2. Issue a MoveToColorTemperature command to the lighting app with TransitionTime set to zero and the options mask and override set so command will execute while off.
  3. When the ack for that command is received immediately issue an On command to the lighting app.

Expected behaviour:

  1. The light turns on with the new colour temperature.

Actual behaviour:

  1. The light turns on with the old colour temperature.
  2. The colour temperature changes.

I believe the cause is that the colour control server treats a TransitionTime of 0 as 1 instead and schedules a timer to actually change the colour temperature 100 ms later. The command's ack is sent and received before then, so the On command gets sent and processed (and the light turns on) before the colour temperature has been updated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
spec Mismatch between spec and implementation
Projects
2 participants