[RELEASE] Zooz ZSE41 OPEN CLOSE XS SENSOR Driver

Click the save parameters button, then wake the device (or wait for the 12 hour scheduled wakeup).

Can be useful to turn on debug logging before doing a manual wakeup to see what messages came in.

New version

  • 1.1.1 (09/07/2021) - Added IndicatorReport handler to prevent errors - doesn't do anything other than suppress the error

I've done both. It's been a few days now and I still don't see the extra information. The only one that it shows for is the one I flashed with the new firmware that went haywire, presumably because I re-included it to the hub during the process.

Out of my 20 devices, 18 of 20 retrrieved the version data correctly - but like yours, a few (2) have not, and I've tried many times. Don't know why... Same driver, same paiting security, same mesh. Weird.

I know the version report is being asked for, just don't know why it isn't making it back to the hub.

EDIT: Never mind. I saved preferences, brought the 2 not getting version reports closer to the hub, manually woke them - and they both got the version report (as confirmed in the logs).

Oh, I think the problem is that I misread your initial answer as 1) save preferences and manually wake up the device, or 2) wait 12 hours for the device to wake up on it's own.

So I misread it as (A AND B) OR C when really it sounds like it's C AND (A OR B). I'll try it out later.

Correct. Saving preferences is what queues up configuration, associations, and the version report request for the device on the next wake up. So if you don't save preferences it will never ask for the version report, no matter how are you wake the device.

Sorry I was not more clear.

Did a manual 4 button pressed to wake it up and saw this in the log

java.lang.NullPointerException: Cannot invoke method toInteger() on null object on line 234 (method parse)

Yup, that looks like a bug, thanks! Basically if you didn't specify an LED behavior in the preferences, it will throw the error.

I'll get it fixed.

In th emerantime yiou can change line 232 from:

		paramLED = 1

to:

		paramLEDIndicatorMode = 1

  • 1.1.2 (09/16/2021) - Fixed bug that qould throw an error if LED parameter wasn't set in preferences.

@JasonJoel have noticed a couple of minor issues with this driver. I was having problems getting the version report to come back even when doing a save and wake up manually so I checked the code. I decided to move the status battery and version checks to the top and the wakeup interval setting as last. I also set the delay to 400 which I have had better luck with on other devices. Not sure which of those things did the trick but it worked perfectly after that and all 'gets' came back.

Also I have noticed the info in the Device Info boxes gets ghosted behind the actual text, but only when using your driver. Not sure if there is a weird character in the parameters or somewhere that is breaking the web interface of Hubitat or what is going on? I peeked through the code and nothing jumped out to me as out of place so not sure what is doing it.

Your driver:

generic Device Driver

Interesting. The version report returned on all 20 of my devices with the as-is driver. But I'm not against re-arranging it, so I'll do that in the next version. Realistically I shouldn't be setting the wakeup interval every wakeup with data anyway, as that is a one time config thing. Maybe I'll change that around, too.

Yup, I see that too. Don't know why. Any thoughts @bcopeland or @gopher.ny (see pic in post above this one with the text ghosting).

1 Like

Good question.. What browser/OS was that screenshot from?

I see the same thing as the pic from Chrome on my chromebook. In a regular or incognito window - on 2.2.8.

2 Likes
  • 1.2.0 (09/21/2021) - Moved wakeup interval setting to the end of updates, and changed delay from 300 to 500ms to try and make updating the config more reliable.
2 Likes

Mine was from Windows 10, Chrome, should be current-ish version. Also just tried on Edge which just updated this week so it is current as well but also Chome-based.

Make that first ENUM value read "Not set" or anything other than empty string. Empty string breaks stuff.

command "DebugLogging", [[name:"Debug Logging",type:"ENUM", description:"Turn Debug Logging OFF/ON", constraints:["Not set", "OFF", "30m", "1h", "3h", "6h", "12h", "24h", "ON"]]]

1 Like

Thanks!! I didn't think about that.

  • 1.2.1 (09/22/2021) - Changed DebugLogging command to not have a blank field as 1st enum to fix rendering issues
1 Like

This driver is great - thanks very much for doing it!

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.