[RELEASE] GE 26931 Motion Switch

It's not adjustable. But you can use the zone motion controller app to extent the timeout.

2 Likes

It's adjustable - it is parameter 15 (edit: I said 23 originally, that was wrong). But there are only a few parameter values listed in the documentation and I've never tried values not listed, so no idea what they would do.

@mluck So if 45s or 27m helps you any, use basic zwave tool and change that parameter.

Or if you are feeling frisky, try some values between 4 and 110 and see if they give you a value between 45s and 27m - my guess is that they will, but I've never tried it. I would guess that each #=~15s... So something around 60 might give you ~15 min.

0=Disable
1=10 secs
2=20 secs (default)
3=30 secs
4=45 secs
110=27 mins

as workarounds go, that's a real good one. thx

Jason, forgive what might sound like unappreciative skepticism (I'm very much appreciative, but also still genuinely confused).....

Doesn't that parameter control how long the load is powered after actuation, i.e., how long the light is on, rather than the reset time of the motion sensor itself? I read the documentation this afternoon pretty carefully with some hope, and was disappointed to find (I think) that it's the former not the latter. But maybe you're seeing something I'm not?

Heck, I'm a pretty frisky guy, so I'll try pretty much anything once!

No, that's parameter 1.

Parameters 3, 6, 13, 14, 15 all have to do with the motion sensing (in one form or another - one is the light sensing option).

1 Like

OK thanks. I'll give it a shot next weekend.

In case anyone follows me with the same question, @mike.maxwell's suggestion to use ZMC worked like a charm and was super easy....even though it didn't really solve the problem with the motion sensor so much as it worked around it. Still.

By contrast I couldn't get @JasonJoel's suggestion to work. I used the basic zwave tool to set parm 15 to 110 (aka 27 mins) @ size 1. But the log just kept reporting Parameter 15, Size 2, Value 2. No idea what I was doing wrong. I suspect something with the zwave tool since others reported similar problems. Maybe I'm missing something. I also tried using @jrfarrar's port of the Jasco 26931 DH and then change the ResetTime on the device details page, but it would never change the device state, at least that I could figure out.

Anyway, got it solved, so thanks all! Feedback welcome on stuff I missed.

I just tried it, and I was able to change parameter 15 with the Basic Zwave Tool on my 26933 motion dimmer devices. And it did change the motion reset time on the device. :man_shrugging:

EDIT: I just tried it on one of my 26931 motion switch and changing parameter 15 worked on that model, too.

Maybe we have different firmware versions. Jasco has been known to tinker with parameters in different firmware versions.

Anyway, glad you were able to get it working a different way for you!

Weird I tried it again (in case I was doing it wrong), and I still get "parameterNumber:15, size 2, value 2" no matter what I enter in the Basic Zwave Tool. I'm guessing this means I have earlier firmware. Not gonna worry about it at this point. Thx just the same....

Is it possible to delay the auto-on for the switch? Sometimes when Iā€™m leaving I turn off the switch (manually) but as I walk out my motion turns the switch back on. Is it possible to add a 8 second delay from when the button is pushed so it stays off for at least 8 seconds?

Not in the switch itself, no. That isn't a feature of the firmware. You could obviously do something more exotic in HE using motion lighting or an RM rule, but then it will be a little slower and motion lighting won't work if HE is unavailable.

I do most of my motion lighting in HE, as I like to do different dimmer% depending on time of day/mode. But as I mentioned, there are caveats to doing it that way (slower and HE availability dependency).

2 Likes

@kamransiddiqi1998 I added the reset cycle as a command option to the @jrfarrar drivers, may be its what you looking for, check it out:

1 Like

Did it do the trick?

1 Like

I tried it briefly before I had to leave for a road trip and it seems to be working!!! Thanks!!!

1 Like

hey @mike.maxwell, do you think would be possible to update the native driver with the commands and options that jrfarrar has in his. I am missing the buttons functions such as press, hold or double tap to assign it to rules and other stuff. Or maybe point me in the right direction on how to modify this same one. Currently this code include some definitions for the buttons, but I am not seeing the button presses reported, may be your keener eye might be able to spot the problem ;-), thanks.

def zwaveEvent(hubitat.zwave.commands.basicv1.BasicSet cmd) {
if (logEnable) log.debug "---BASIC SET V1--- ${device.displayName} sent ${cmd}"
def result = []
result << createEvent([name: "switch", value: cmd.value ? "on" : "off", type: "physical"])
if (cmd.value == 255) {
result << createEvent([name: "button", value: "pushed", data: [buttonNumber: "1"], descriptionText: "On/Up on (button 1) $device.displayName was pushed", isStateChange: true, type: "physical"])
}
else if (cmd.value == 0) {
result << createEvent([name: "button", value: "pushed", data: [buttonNumber: "2"], descriptionText: "Off/Down (button 2) on $device.displayName was pushed", isStateChange: true, type: "physical"])
}
return result
}

def zwaveEvent(hubitat.zwave.commands.associationv2.AssociationReport cmd) {
if (logEnable) log.debug "---ASSOCIATION REPORT V2--- ${device.displayName} sent groupingIdentifier: ${cmd.groupingIdentifier} maxNodesSupported: ${cmd.maxNodesSupported} nodeId: ${cmd.nodeId} reportsToFollow: ${cmd.reportsToFollow}"
state.group3 = "1,2"
if (cmd.groupingIdentifier == 3) {
if (cmd.nodeId.contains(zwaveHubNodeId)) {
sendEvent(name: "numberOfButtons", value: 2, displayed: false)
}
else {
sendEvent(name: "numberOfButtons", value: 0, displayed: false)
sendHubCommand(new hubitat.device.HubAction(zwave.associationV2.associationSet(groupingIdentifier: 3, nodeId: zwaveHubNodeId).format()))
sendHubCommand(new hubitat.device.HubAction(zwave.associationV2.associationGet(groupingIdentifier: 3).format()))
}
}
}

That device can not report things like "held" in the hardware. As such, the only way to do something like "held" would be in software - and Hubitat pretty much never implements hacks like that in the in-box drivers.

That said, the device does support doubleTap in hardware, so that should be included (in my opinion) in the base driver if it is not already. I only use my custom driver for those devices (published on this forum & github, if you want to try it), so don't remember what the in-box one does/doesn't do.

Really, if written to standard capabilities, this device shouldn't have any button functions at all... Any "button" mapped implementation would be non-standard and always custom.

Thanks for taking the time to write and the insight. Much obliged.

@JasonJoel Iā€™d like to have a light timeout of 10 minutes but your driver only has 5,15,30. Does the device itself not support that? Or could I update the driver to add a 10 minute option?

I wasn't sure, so just tried it. No, it will only take the pre-configured timer settings. It is not configurable.

If you feed it an integer other than the pre-defined ones, it rejects the value.

1 Like

Bummer ok thank you for testing this.