[ST Edge] Driver for GE/Jasco/Honeywell Z-Wave Switches, Dimmers, Fans, Outlets, and Plug-Ins

This morning I tried using the dimmer level without the turn on and the lights failed to turn on. Do I follow your post that this not the expected behavior? On iOS

No, my experience has been that setting the dim level only will turn the light on. Here is a Routine I just tried and the log showing the light come on and dim level getting set.

Try it with the level less than 100% are you using iOS or Android. That is what all of my routines used to be set to but they all failed and I had to add the on statement to make them work. I will retest after work today.

@NickA Z-wave or Zigbee? This topic is for the Z-wave switches, and the behavior is different between the two radios.

Same result.


Shouldn’t matter what OS you are running since Routines are just Rules executed by either the cloud or your hub.

{
  "every": {
    "specific": {
      "daysOfWeek": [
        "Sun",
        "Mon",
        "Tue",
        "Wed",
        "Thu",
        "Fri",
        "Sat"
      ],
      "reference": "Noon",
      "offset": {
        "value": {
          "integer": 170,
          "type": "integer"
        },
        "unit": "Minute"
      }
    },
    "actions": [
      {
        "command": {
          "devices": [
            "55813903-c855-4234-9ae4-0b6d50905cd0"
          ],
          "commands": [
            {
              "component": "main",
              "capability": "switchLevel",
              "command": "setLevel",
              "arguments": [
                {
                  "integer": 22,
                  "type": "integer"
                }
              ]
            }
          ]
        },
        "type": "command"
      }
    ],
    "sequence": {
      "actions": "Parallel"
    }
  },
  "type": "every"
}

Notice if I add the “On” to the actions in the Routine, it adds another command further illustrating the default behavior of turning on the light even without the command being present in the Routine/Rule.

    "actions": [
      {
        "command": {
          "devices": [
            "55813903-c855-4234-9ae4-0b6d50905cd0"
          ],
          "commands": [
            {
              "component": "main",
              "capability": "switch",
              "command": "on"
            },
            {
              "component": "main",
              "capability": "switchLevel",
              "command": "setLevel",
              "arguments": [
                {
                  "integer": 22,
                  "type": "integer"

I believe that one of the routines that I tested this morning included both, but thanks for pointing that out.

For testing, a routine with just the dimming command should operate the same as if you just change the dim level on the device detail view in the app.

Z-wave is straightforward - any change in dim level will turn on the device. I haven’t seen a z-wave device that will stay off when receiving a command to change dimming level.

Zigbee is a bit weird in that a command can change level with or without turning the device on, and if I’m remembering correctly (it’s been a while since I’ve messed with them) the turn on part is ignored if the new level is lower than the prior (and the default dim level comes into play on that).

What I don’t understand though, is that in Michael’s old custom DTH for the GE/Jasco Motion Dimmers (not the normal switch or dimmer switch), there was an option to set the dim level without turning on the switch. And I remember it worked because I inadvertantly flipped it one time on one device and my Routines for that device weren’t working as I expected.

setLevel Command Mode 	
Normally, if a dimmer switch receives a 'setLevel' command, the light turns on and sets to this level. This is default behavior with most SmartThings dimmers, along with this one. However, this setting can be overridden, allowing you to set the level of the dimmer without turning it on. Some automations may need this setting to get desired results. Please note that depending on your settings, you may not get the desired results if you have the Default Dim Level set
    if (!settings.setlevelmode){ 
    	log.debug "setlevel does not activate light"

Looking at his code, what that setting did when turned on was:

  • If the switch is on, change the current dimming level and also change the default dim level.
  • If the switch is off, change the default dim level.

It was a workaround if you were unable to use the command to set the default dim level. He may have added it after the transition to the new app when the only way to invoke a custom command was through a third party integration like webcore. Default dim level is exposed to automations in my motion dimmer driver, so you can accomplish the same thing if that’s the behavior you want.

All of that is changing a configuration parameter though. The z-wave command to change a dimming level turns on the device every time in my experience.

1 Like

Interesting. What that tells me is that we’ve been approaching the problem of changing dim level for specific times or time intervals incorrectly by trying to set the actual dim level. A better approach would be to set the default dim level to the desired value at some specific time (like sunset) and have routines simply turn on dimmers based on some trigger (like a motion sensor). And you can restore the default dim level to whatever the previous value was at some other specific time (like sunrise or 8am).

This has me totally rethinking my motion dimmer routines for nighttime where now I will simply change the motion dimmer mode to occupancy with a default dim level at 1% rather than having a routine that senses motion and sets the dim level to 1% during specific hours. And, I can still have my routine that turns it on at 100% if the dimmer is toggled up during the same time interval.

And, because of this topic, I now understand why my lights come on at 100% for fraction of a second and then dim to 1% because my default dim level is 100% and when motion is triggered the order of operation is dimmer on and then set dim level. Changing that will eliminate the annoying behavior :slight_smile:

This is how I handle mine - occupancy with different default dim levels throughout the day, and then switch to manual at bed time.

The challenge with this will be that the toggle up button event will also trigger when the switch is turned on by motion. There might be a way to differentiate - maybe the motion events only trigger the button press event when the switch is off. Inovelli and Zooz both have motion switches in the works though that should support all manner of multi tap.

1 Like

Is this only applicable to certain makes and/or models? I’ve got a mix of Zooz, Leviton, and GE/Jasco including some GE/Jasco ZigBee dimmers. Wondering if it would be possible to access a default dim level in all of them


Not every device has a configurable default dim level, so that route may not be an option for all of your dimmers. The GE zigbee have it, but only the newer GE z-wave models. Zooz should have it. Not sure about Leviton.

The motion dimmers are a unique situation since the sensor and switch are in one package. If you’re linking a motion sensor to a dimmer using a hub automation then I would just set the desired dim level in that automation using the switch level capability.

3 Likes

Well, I made the changes to my Routines to change the operating mode of the motion dimmer and the default dim level. It sorta worked. Motion would trigger the light to come on at 1%, but then if I turned the light off by toggling down, the next motion event the light came on at 100%. Not sure that makes a lot of sense as the button Routine only sets the dim level to 100% on a toggle up.

The button events for the motion switch/dimmer uses the device’s association group since the device itself doesn’t support button events. As a result, a “toggle up” button event means the light turned on locally, either because of a motion even or a push on the up button. You might be able to add “switch is on” as a precondition for that routine to differentiate between motion and a button push. Otherwise that routine is going to be a problem and will override your default dim level.

Yeah, that makes sense as the switch should already be on from the motion. I’ll give that a try tonight.

What are you using to display that data for each switch?

1 Like

How does one easily find the fingerprint of their switches? I have 30-40 Jasco/GE switches and without IDE I can’t find the info I use to be able to. The API Browser doesn’t show the fingerprint either. Is CLI the only option? The Z-wave explorer option is non-starter as you lose routines.

Z-Wave PC Controller doesn’t even seem to show the fingerprint.

I just need reliable way to know exactly what device I’m trying to update firmware one without bricking it :slight_smile:

The “Mfg Code” in the API Browser+ is the fingerprint.

2 Likes

I have a Fan dimmer switch that is also saying ineligible device when I try to change the driver.
Mfg Code: 0063-4944-3034
Model:4944-3034