Modify Ramp Rate on GE (Jasco) Dimmers

It’s possible to change the ramp rate of GE switches, but I’m not sure the best way to do this in smart things. I only really want to set the values once per switch, and I want to use the same value for all my dimmers.

My first thought was to create my own dimmer device type and just throw in a one time setting of these parameters in the “refresh” command. However, this does not seem to be working for me (setting all values to 1):

zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 7, size: 1).format()
zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 8, size: 1).format()
zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 9, size: 1).format()
zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 10, size: 1).format()

These do work for me when using the GE remote to set the parameters. Here is the info from the manual:

Dim Rate Adjustments
Both the number of steps (or levels) that the dimmer will change and the timing of the steps can be modified to suit personal preferences. The timing of the steps can be adjusted in 10 millisecond intervals.
1… When Receiving a Z-Wave Dim Command
• Parameter 7 (number of steps or levels)
• Parameter 8 (timing of the steps)
• Length: 1 Byte
• Valid Values:
Parameter 7 (default = 1) Valid Values: 1-99
Parameter 8 (default = 3) Valid Values: 1-255

  1. Manual Control Dimming (pressing the Dimmer’s rocker)
    • Parameter 9 (number of steps or levels)
    • Parameter 10 (timing of the steps)
    • Length: 1 Byte
    • Valid Values:
    Parameter 9 (default = 1) Valid Values: 1-99 Parameter 10 (default = 3) Valid Values: 1-255
4 Likes

Would love to figure this out as well.

Can you set the dim rate once with the remote, then use the dimmer itself?

@juano2310 Any ideas on this one?

1 Like

I think you will be able to modify this in the next release from the preferences but not sure when is this going out.

couple of things here.
I would use updated() to set these, not refresh
updated is called when the prefs section is closed.
try calling these thus:

delayBetween([
zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 7, size: 1).format(),
zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 8, size: 1).format(),
zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 9, size: 1).format(),
zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 10, size: 1).format()
	],2000)

Maybe they’re executing too quickly back to back.
Try reading the values back to see if they’re being set.
There’s some examples of reading parameters in the Fibaro motion sensor device if you don’t have a snippet already…

Thanks for the help @Mike_Maxwell! I’m a lot closer now. I wasn’t able to get anything to set using update() for whatever reason. but I added the following code that is working as expected:

def updateRamp() {
delayBetween([
	zwave.configurationV1.configurationSet(configurationValue: [10], parameterNumber: 7, size: 1).format(),
	zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 8, size: 1).format(),
	zwave.configurationV1.configurationSet(configurationValue: [10], parameterNumber: 9, size: 1).format(),
	zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 10, size: 1).format()
], 500)
}

def listCurrentParams() {
	log.debug "Listing of current parameter settings of ${device.displayName}"
    def cmds = []
    cmds << zwave.configurationV1.configurationGet(parameterNumber: 7).format()
    cmds << zwave.configurationV1.configurationGet(parameterNumber: 8).format()
    cmds << zwave.configurationV1.configurationGet(parameterNumber: 9).format()
    cmds << zwave.configurationV1.configurationGet(parameterNumber: 10).format()
    
	delayBetween(cmds, 500)
}

Ideally I can find a way so that these lights will auto update (so if I change the values all the lights in the house using this device type will update as well). I’m guessing that using update() does this? in theory?

1 Like

updated() is a method that is called from the device tile when the preferences panel is opened and then closed.
So it only would apply to the specific device where the preferences tile was opened, not all of them.
To get all of them at once, you would have to write a smartapp to call updated() (or your custom method) on each one…

1 Like

Is that part of a custom device type or are you simply adding to the standard dimmer switch device type?

I made a new device type based on the dimmer device. I figured this was the best way to go about it, but I hardly know what I’m doing at all ;D

I’m pretty sure I know less…

I created a new device type based off of the Dimmer Switch template.

Where would I place that above code?
And value is the ramp rate?

see… I’m clueless!

Thanks!

Hi @chrisdrackett, did you ever get your device type working? I created one as well, but no luck.

Any update on this? Trying to do the same thing with my GE Dimmer Switch. I hate how long it takes for the light to go on all the way.

I haven’t tried it since I migrated to hub 2.0

I have a hub 2.0 as well, so you are just living with the slow ramp up time?

Yeah, we’ve had it that way for so long that we’re use to it.

the code above worked for me, are others running into issues?

Cool! Do me a favor? Post it back again because I nuked my copy in error…

its available above in my post from March 17th!

1 Like

Just scrolled up and saw that, thanks for the reminder!

I see the two functions you added, but where do you actually call them?