Z-Wave parameter editor

I have some Z-Wave devices that I have Z-Wave parameter specifications for, and I want to be able to edit the Z-Wave parameters of these devices. For example, I have purchased some Cooper Aspire RF9540-N dimmers, and want to be able to edit the dimmer ramp rate. From the documentation I know that the ramp rate is controlled by parameter 7. However, I don’t know of a way that I can edit the value of parameter 7 for this device using SmartThings.

Of course it’s not reasonable to expect SmartThings to have device types for all the available Z-Wave devices, and to have interfaces for each of them to let you change the various custom settings for each device.

What I would like to see is a generic way to be able to set the Z-Wave parameters of any Z-Wave device. For example, I would like to be able to send a command to the device to set parameter 7 to a value of 0. Then, I would like to be able to query the device to ask it what the value of parameter 7 is, just to confirm that the setting was properly saved. If this feature could be available generically for all devices, we could change the Z-Wave parameters ourselves, even for devices that SmartThings hasn’t had time to test/implement.

I think this Z-Wave parameter editor would be best not in the SmartThings phone app, but perhaps in the developer tools. Then, this would only be available to people looking to get deeper into the configuration of their devices.

Or is there already a way to set these parameters that I’m missing?

For reference, my Cooper Aspire RF9540-N switches have the same parameter set as the section labeled “RF9534, RF9534-N, RF9535-N, RF9536, RF9536-N, and RF9537-N Dimmers” in the documentation at


This would be a great feature. I would like to enable a feature to do local current sensing (allows you to turn on a light by using the lamp switch) on a GE dimmer outlet. The feature comes DISABLED as a default. Any chance this will ever come to the IDE developers website?

I know you can do this by creating you own device, but that seams a little confusing for a beginner?

1 Like

Dump. I too have this cooper switch and it takes too long to ramp up, I want to change it to instant. Any thoughts?


If you know what parameters need changed, you can add code to your own device type to make these changes.

For example, GE dimmers can change their ramp rates and someone created a device type that can be used to change them when a tile is tapped. The values need tweaked in the code vs. preferences or in the IDE, but that’s an easy mod.

Continuing the GE example, what was done was to basically create a device type modeled exactly after ST’s Dimmer Switch (give it a different name), and then to add code to make another tile in the app:

    standardTile("rampRate", "device.switch", height: 2, width: 2, inactiveLabel: false, decoration: "flat") {
    	state "default", label:"Fix Ramp Rate", action:"fixRampRate"

and then add the section that contains the configuration values to be set for each paaramter:

def fixRampRate() {
    log.debug("Adjusting ramp rate")
        zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 7, size: 1).format(), // default = 1
	zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 8, size: 1).format(), // default = 3
    	zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 9, size: 1).format(), // default = 1
    	zwave.configurationV1.configurationSet(configurationValue: [1], parameterNumber: 10, size: 1).format() // default = 3
	], 500)

When the dimmer was changed to use this new device type, the tile called “Fix Ramp Rate” was tapped, and the switch was updated. After testing, the dimmer was set back to ST’s default device type to keep local processing in tact. The switch does not loose those updated setting unless you reset the device.

After saying all that, ST can’t possibly add that code for every kind of device, mainly because not all manufacturers use the same parameters to do the same thing.

Here’s what I’ve been able to Google for Cooper Dimmers and config parameters that may help you:


1 Like

Cool, so I did that but it’s not working. I wonder what I’m doing wrong, where can I see the log statement to make sure it’s actually being called? Any thoughts?

standardTile("rampRate", "device.switch", height: 2, width: 2, inactiveLabel: false, decoration: "flat") { state "default", label:"Fix Ramp", action:"fixRampRate" }
def fixRampRate() { log.info("Adjusting ramp rate") zwave.configurationV1.configurationSet(configurationValue: [0], parameterNumber: 7, size: 1).format() }

Hi @ryandetzel, sorry for the late reply.

In the IDE go to Live Logging along the top. You’ll see the name of the device show up when you do something with the device and then click on it to see just the log entries for that device instead of everything.

I couldn’t remember who put the device type I copied from, but here’s my code that worked for the GE: