Most of the information below is for the old Groovy Handler which will stop working soon.
This is a device handler for the Zooz 4-in-1 Sensor (ZSE40).
The Main Tile can be set to display Motion, Temperature, Relative Humidity, Light %, or Light Lux.
The Secondary Status can be set to display Nothing, Motion, Temperature, Relative Humidity, Light %, Light Lux, or all of them.
There’s a tile that shows the last time the device woke up and received setting changes. You can force the device to wake up by using a paperclip to push the hidden button on the bottom of the device, but it doesn’t always work so this tile allows you to verify that your changes were actually applied.
Supports offset values for Temperature, Relative Humidity, Light %, and Light Lux.
The device handler reports illuminance as % by default, but you can enable the “Report Illuminance as Lux” setting to make it use a calculated lux value.
There’s a setting that allows you to specify the lux value to report when the sensor reaches 100% because there’s no way to determine the actual lux level.
You can adjust the frequency of reporting for Temperature, Relative Humidity, and Light.
You can adjust the Motion Sensitivity and Retrigger Time.
You can change the behavior of the LED to conserve battery.
You can adjust how often the device wakes up to receive setting changes. When it’s set to 0 it will report every 10 minutes which is useful when testing the device, but I don’t recommend keeping it at that level because it will drain the battery.
Motion is reported near real-time, but the other values are only reported about every 3 minutes. That means if you turn off a light and the room becomes completely dark it could take up to 3 minutes for the light level to change to 0.
Firmware v3 was released in December 2017 and it changes the range of the Motion Time setting from (1-255 Minutes) to (15-60 Seconds).
After changing the settings you need to use a paperclip to push the hidden button on the bottom of the device. After pushing that button, wait about 30 seconds and check the “Settings Updated” tile. If the time didn’t update it didn’t wake up so you’ll need to do it again.
The light sensor maxes out at around 50 lux so there’s no way to determine the actual light level when it’s above that. If you’d prefer it to report 100 lux when it reaches 100%, you can specify that in the settings.
The lux value is a calculation which I’m still tweaking so if you notice that it always seems low or high, use the lux offset to adjust it.
To make the battery last a lot longer, use high Change Triggers for the values you’re not interested in. If you’re using it for measurements, but not for motion, set the Motion Sensitivity to the Least Sensitive setting and the Motion Retrigger Time to the highest value.
Hey this work great. I am wondering if I can change the decimal for the RH. I have that as my main tile and I would like it to just be a number with no decimals. So rather than 55.65% just 56%. Can this be done? Thanks.
Hello Kevin, first of all thanks for the great device handler. I have one little issue. I use the Notify Me When Smartapps. When motion is detected I get a push notification that simply state “Active”, No device name was displayed. All my other sensors are reporting correctly except for this Zooz 4-in-1. Not sure if this is something I can change in the handler or the setting.
@krlaframboise, I’m using Smart Lighting and trying to determine the proper illuminance value to set it at. For example I see the device current states (facing outside of window at night) is at primaryStatus: 1.56% LIGHT / secondaryStatus: 0.69 LUX. I have the Smart Lighting rule set to equal or less than 5 but that didn’t seem to trigger the event to turn my light on. Could you assist with a brief translation of the handler and how it might related to the Smart Lighting rules? I’m not sure what values to use. Using the handler in various light settings, I’m after a rule that basically does If less than 25% light it ought to turn the light on. Thanks!
I just released a new version that should fix this.
I just discovered that CoRE ignores events that are hidden from the Recently tab so it’s possible that Smart Lighting does the same thing so this version might fix that problem too.
The new version has a setting for “Round the Primary Status to whole number?” which should provide the functionality you’re looking for. After enabling that setting the value currently displayed might not be rounded, but the next time the value changes it will be. Enabling this setting won’t round the attribute values it just changes the text being displayed in the main tile.
Super new to this stuff. Got the code up and running, seeing the tiles but not getting reports on lux levels. Also, how do i get motion to report in real time? I didn’t do any editing to the code… not really sure if i was supposed to or not. Thanks for helping the noob!