Different On/Off ramp speeds with Inovelli Red Series Dimmers, LZW31-SN, Firmware 1.48

I am using Inovelli Red Dimmers, LZW31-SN with their firmware 1.48. I have a C7 hub on version 2.2.6.129. I am trying to get the lights to come on and off at different speeds. I would like them to come on virtually instantly, which I can do, but I also want them to fade out over 1 second, which I'm not able to do with the "instant on".

I could get them to come on at different rates by disabling the physical button and creating a rule to "dim" to 100% at 0 seconds, but that actually took about 1 second to turn them on. The rule I created to then dim them to 0% over 1 second took about 1 1/2 seconds. So while the times were different, I couldn't find a way to get rid of that initial delay turning them on. (Setting Param 51 did nothing, I assume because the physical button had been disabled).

I got them to come on virtually instantly by setting Param 1-4 to 0, 3, 0, 0 and Param 51 to On to disable the 700 ms delay they built in to enable multi-taps. However, everything I tried to create a rule to get them to fade out over a second failed. I even tried to create a rule to delay a button 1 held by one second. I found that did nothing to delay the 1 held action time regardless of Param 51 being turn on or not. (So I'm not sure of what the "delay" rule actually ever does).

BTW, I also tried to creating different rules using setConfigParameter, but none of those experiments had any effect on the ramp on or off settings.

So, is there any way to create a rule that would get the "instant on" effect yet give me a 1 second fade out with a button 1 held?

You rule doesn't "delay button 1 held by 1 second." It triggers on button 1 held, the runs your actions. Your action is a 1-second delay. So, it triggers, waits 1 second, then exits--effectively doing nothing. :slight_smile:

There are various ways you could do this. What I'd probably do is set the on/off rate parameters (3 and 4, depending about whether you care about physical, digital, or both) to 0. This will give you instant on and off. To get a "fade off" effect instead, you could use a setLevel(0,1) command instead to fade to off (0%) over 1 second. Basically, use a "Set Level to 0 over 1 second" action in Rule Machine or Button Controller instead of a plain "Off" action. Some drivers don't like 0 as a parameter for the target level here, but I think this one works. If that doesn't work--or you prefer this for whatever reason--you could also do this the other way around: set parameters 3 and/or 4 to 1 (1 second), then use setLevel(100,1) or "Set level to 100 over 1 second" instead of a plain "On" command. (A "Set Level" will turn the dimmer on if it's currently off, so you don't need to worry about using a separate "On," by the way. The trick in either case is that "Set Level" accepts a transition time, whereas on/off commands do not.)

Finally, parameter 51 has no effect over any of this. Because the device supports multi-taps, by default, there is a slight delay after your tap(s) until an event is sent to the hub. Parameter 51 can be sent to send events instantly, with the tradeoff that you only get one tap (it can't wait for multi-taps if you create the single-tap event right away). Some people were bothered by how long it took for that event, and they are also looking into a compromise where you can still get all taps but set they delay to a lower value. But that doesn't affect the on/off or dimming speed, regardless.

I was afraid what you said about my original delay rule is what was happening, so I modified it to have a button 1 push dim the lights to 0 over 1 second and then delay the switch off by 1 second. That did nothing.

So I then tried going into Rule Machine and creating a setLevel rule for 0, 1 per the screen shot below, which you thought should have set the level to zero after 1 second when button 1 was held. This had no effect on the time it took to turn the light off, which as virtually instantaneous as I have set Params 1, 3 and 4 to 0 and Param 51 to Yes.

Thinking that it might not like 0 for the first param I changed it to 1 so I had a setLevel on Button 1 Held to 1,1. That didn't slow down it turning off, but it did prevent me from turning the lights on. Despite being attached to button 1 held, I'm guessing it just set the setLevel so when I pushed button 1 it set them to 1%, which doesn't turn the lights on. So I then created a rule for button 1 pushed for a setLevel of 100% over 0 seconds, (100,0). That did turn the lights back on, but still pushing button 1 turns them off virtually instantly.

BTW, you'll see from the screen shot I actually set the setLevel for the button 1 held to 2 seconds to be sure if I was seeing the effect - which again, it had no effect.

I then went back to trying setConfigParameter. Just to be sure I got the right parameter set I set 1, 3 and 4 to 1, but that didn't do anything either even with adding a delay to be sure the parameters were set before I gave the fade command :

Same thing with set level doesn't work either.

On quick BTW, I'm not changing Param 2 as it is already set to 3 in the device. On other thing I noticed is that if I hit button 1 pushed very quickly I would see the lights come on and then fade off. I'm assuming it was because I hit it so quickly the 1 held rule was still in the 1 second delay, and then faded the light off. So it seems it was working to that degree, but it doesn't do it to fade the lights to 0 with the 1 held.

First, you don't really need to use a custom command here: the Set Dimmers and Bulbs > Set dimmer level action in Rule Machine (or Button Controller) already does this. That being said, as long as you chose the right parameter types, there's no reason either way shouldn't work, so I don't think this is actually the problem. But it's easier. :slight_smile:

The second thing you could try: do you have a reason to prefer Inovelli's drivers? (I'm not saying there aren't any; they support all five taps and not just two, and they have a couple features that let you more easily set notifications than the setIndicator() command does in Hubitat.) If not--or even if you just wanted to test this--you could see if the setLevel() command acts differently on Hubitat with their own driver. If so, that gives me hope that Inovelli's could be modified to respect the rate, which it's possible theirs doesn't in some cases (I have not looked at their code, so I have no guesses). Changing to Hubitat's should not overwrite any parameters except for preferences you set in the driver, which applies equally to both drivers.

You also don't really need to use the setConfigParameter() command manually, as Inovelli's driver exposes all of them in some way, so changing it there should do the same. But, again, as long as they were set correctly (and not overwritten if you re-saved device preferences), you should still be good. If you want to for-sure compare the parameters to the values in the manual, you could also use the Basic Z-Wave Tool (switch to it, then switch back before trying any "real" device commands).

I think what's missing here is that you need to Disable Local Control for these rules to work the way you want. The problem you're seeing it that with Local Control enabled, the physical button press is going to turn the switch on/off locally AND trigger the rule. The rule fires, but the light is already off due to local control. Try disabling Local control and use rules to turn on/off.

I just did a quick test using your Button Controller rules with Local Control Disabled and I'm getting the instant ON with fade to OFF that I think you want.
image

The downside to this is that it also disables local dimming (holding the paddle up or down). So if you want that capability you'll need to add additional rules so those events will trigger dimming rules as well as on/off rules .

When I disabled local control I found it was taking about 1 second to turn on the light using a Hubitat rule that set the dimmer to 100% in 0 seconds. I can't use a rule that just turns it on as we might have pushed button 7, the config/"favorite" button first setting it to 40%.

The only way I've found so far to simulate dimming via rules is by creating a rule with a button 8 held to start dimming and then a 6 held to stop the dimming. It is crude at best.

Eureka! It worked!!! I am able to have an Inovelli Red Dimmer turn on virtually instantly, but have a 1 second fade out!

I had to do it in Rule Machine as a Basic Button rule wouldn't let me put in zero as a "number" for my second parameter. I had to put it in as a string, and then it wouldn't let me add the third parameter. Seems like a definite bug in Hubitat's Basic Button app which I'll also post, but I digress).

So for my switch I have Params 1-4 set to 0, 3, 0, 0. I have 51 set to Yes, Disable Delay. (I don't do multi-taps from this switch and want the fastest possible on time).

I then created a rule for 1 Pushed that setConfigParameter to 4, 1, 1. (Param 4, 1 second, 1 Byte). Param 4 is the physical ramp speed. That sets the ramp speed to 1 second giving my 1 pushed dimming rule time to run.

I then created a 1 Pushed rule that dimmed the light to 0 over 1 second and then setConfigParameter to 4, 0, 1. (Param 4, 0 seconds, 1 Byte). That reset Param 4, the physical ramp speed to 0 seconds so when I turn it on again it will be as fast as possible.

Just for a test I added before the 1 Pushed setConfigParameter an action to "dim" the light to 100% over 0 seconds. I did that as I like to have the config/"favorite" button 7 Pushed, set the light to a low level and then I want to get it back to 100% by just pushing the paddle up (i.e. a 1 pushed) without having to turn it off first (because I also set the turn on defaults, Params 9 and 10, to 99). I went right over to the light in about 5 seconds and when I first tried it, it took about a second to come up to 100%. But after I did a 7 push to dim them to the low level and then a 1 pushed it started acting virtually instantly. After that even if I turned the lights off with a 1 push it acts virtually instantly to come on while the 1 held (down paddle one time) does do a second fade out. I don't know if it just took a bit for the rule to take effect or not, but it's working now. So I did it! I now have different Ramp On/Ramp Off times!! Woo hoo! Maybe I should go around like Kesuke Miyagi from the Karate Kid, Ramp On, Ramp Off. Ramp On, Ramp Off.

But I do think I found 1 caveat: In trying to show to my family I was doing the on/off very quickly and it wasn't working right at all. However, if I waited about 5-10 seconds between turning the lights on or off it worked. I therefore think it does take several seconds for the setConfigParameter to get to Hubitat and then take effect.

Here is what my Rule Machine screen shot looked like before I added the 100% "fade" on:

and after with the 100% fade on in 0 seconds and 7 pushed dimming them to 45% in 0 seconds:

Here are Params 1-12:

And Param 51: