Gradually turn on lights.
-
@gwp1 Here is the screen capture. It is basically a copy of what toggledbits provided. Keep in mind that it is working fine with the default dimming.step and if your dimmer is normally set to 100% before being turned off.
From the screen capture you can see that, in my case, the "Current value" is 0.59...This is as high as it will go if the previous state of the dimmer was 60%. This situation causes the while to repeat every 2 second indefinitely. I have to kill it in the "running reaction" status screen or to disable the rule.
@vezinpi mine is as such:
Here's the rule's
Set Reaction
that pulls this in.I also have another
group
under this same rule'sSet Reaction
for Evenings.Everything I've seen shows this as working as intended. Only rises to 30% in the mornings, 80% at night. Only the mornings get the slow roll ramp up.
-
Hi again, more accurate info for the "Perform dimming.up/down"
I have just made a test from the entity menu. Using the default dimming.step (0.1) I did the following starting with the dimmer off:
1- Perform dimming.up 10 times
This should have brought the dimmer to 100% but it did stop at 60% (0.59...)
2- Perform dimming.down 10 times
This should have brought the dimmer to 0% but it did stop at 50%
From 100%, I can only dimmed.down to 50%
from 0%, I can only dimmed.up to 60% (0.59)The dimming.set "value" works all the time
Here is the log from Z-Wave JS for the 10x dimming.up followed by the 10x dimming.down test.
2025-07-07 23:32:00.315 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 0 => 10 2025-07-07 23:32:00.328 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 10 => 10 2025-07-07 23:32:03.828 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 10 => 20 2025-07-07 23:32:03.834 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 10 => 20 2025-07-07 23:32:03.854 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 20 => 20 2025-07-07 23:32:06.007 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 20 => 30 2025-07-07 23:32:06.014 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 20 => 30 2025-07-07 23:32:06.045 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 30 => 30 2025-07-07 23:32:08.149 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 30 => 40 2025-07-07 23:32:08.152 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 30 => 40 2025-07-07 23:32:08.165 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 40 => 40 2025-07-07 23:32:10.289 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 40 => 50 2025-07-07 23:32:10.295 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 40 => 50 2025-07-07 23:32:10.308 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:12.397 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 59 2025-07-07 23:32:12.401 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 59 2025-07-07 23:32:12.416 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:14.848 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 59 => 59 2025-07-07 23:32:14.853 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:14.866 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:16.744 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 59 => 59 2025-07-07 23:32:16.749 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:16.762 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:18.651 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 59 => 59 2025-07-07 23:32:18.654 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:18.665 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:20.649 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 59 => 59 2025-07-07 23:32:20.652 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:20.661 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 59 2025-07-07 23:32:22.864 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 59 => 50 2025-07-07 23:32:22.870 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 59 => 50 2025-07-07 23:32:22.881 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:26.963 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:26.966 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:26.975 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:29.030 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:29.035 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:29.052 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:31.234 DEBUG Z-WAVE: Polling value 49-0-Air temperature 2025-07-07 23:32:31.289 INFO Z-WAVE: [Node 036] Metadata updated: 49-0-Air temperature 2025-07-07 23:32:31.292 INFO Z-WAVE: [Node 036] Value updated: 49-0-Air temperature 24 => 24 2025-07-07 23:32:31.297 DEBUG Z-WAVE: 36-49-0-Air temperature will be polled in 60 seconds 2025-07-07 23:32:31.715 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:31.718 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:31.727 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:34.557 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:34.562 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:34.578 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:36.379 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:36.384 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:36.398 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:38.130 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:38.133 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:38.141 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:39.756 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:39.759 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:39.767 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:41.731 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:41.737 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:41.756 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:43.814 INFO Z-WAVE: [Node 005] Value updated: 38-0-targetValue 50 => 50 2025-07-07 23:32:43.819 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 2025-07-07 23:32:43.828 INFO Z-WAVE: [Node 005] Value updated: 38-0-currentValue 50 => 50 ~~~
-
Sounds like you might have
dimming.minimum
on the entity set to 0.1? And what ofdimming.maximum
? Failing that, does the device itself have min/max set in its Z-Wave configuration? -
Hi,
The dimming.maximum/minimum are set to 1 and 0
@toggledbits said in Gradually turn on lights.:
Failing that, does the device itself have min/max set in its Z-Wave configuration?
Not sure exactely how to check this. The device is a Zooz ZEN 72. I look in the Z-Wave JS UI and could not find any parameter that would limit the dimming min/max.
I might be wrong here but it is my understanding that the Z-Wave JS UI sits between HA and the devices. Since the Z-Wave JS UI log shows that any level change request above 60 from MSR, stays at 60, it can only be coming from MSR or HA. In addition the dimming.set works without any issues.
-
OK. There are some rounding issues with JavaScript, and I think I can tune things up to work around them a little better. Stay tuned.
Also, tip: use the Copy Attributes button instead of screen-grabbing the attributes. Gives more data.
-
Yup, a lot going on here. ZWave and ZWave-JS produce values for brightness in the range 0-99. HA maps that into its 0-255 scale, so precision oddities are introduced there. HassController then attempts to scale HA's 0-255 into Reactor's 0-1, which introduces more precision oddities.
I've made an interim build with a handful of adjustments. It is published only for docker aarch64/arm64 (RPi 64-bit and similar) right now, because I don't have time to repackage the whole thing for all platforms right now (I'll be unavailable from 11th through 20th), and it's too risky. For others reading, I don't recommend going to this build unless you need this specific fix immediately.
-
@toggledbits Thank you for looking into this.
There is absolutely no rush on any of this on my side. When I read the post I really liked the approach you suggested and made a test rule to see how I could use it and got into some issues.
Since you took the time to make an interim built, I will take the time to test it and report back here with the result. This way, you will know the status when you return.
Thanks again
-
Loaded the new built and as expected, the dimming.up/down are working for all levels. I also noticed that the dimming.level reported are nicely round up to one digit after the "." except for 50% where it displays "0.51" (not really an isssue just reporting what I see)
However, the other issue mentionned my opening post (that got kind of forgotten) is still present. Here is the refference:
said in Gradually turn on lights.:
1- The "dimming.step" when changed does not stick after a dimming.up/down
In the "Entities" menu I set the attribute "dimming.step" to 0.05. Still in the etities menu, I then perform a "dimming.up" and can confirm that indeed the "dimming.level" went up by 0.05 however at the same time the dimming.step goes back to 0.1 (default). From that point, any subsequent "dimming.up" uses the default.
Again, this can wait until your next release if a fix is indeed needed.
-
Have you done a hard refresh on the browser? If that's not it, check file permissions on your storage directory, and also check the logs to see if any errors are emitted when you change the attribute value and within the window of about two minutes after (allowing for the delayed-write strategy caching). The other likely issue is that your storage directory has issues and isn't properly saving the state data for the entity.Edit: Well, I said:
There is no code that changes
dimming.step
other than the button you use on the UI.And that's technically true, there's no code, but... seems there is a stray directive in the entity mapping data table
hass_devices.yaml
, which is specific to HassController, left over from wayyyyy long ago that should not be there today, and will do what you are observing. Simple fix. I'll roll a new docker image shortly.Edit 2: Updated container is up and ready.