I use a Vera Plus to control my ZWave devices in my home. I also recently purchased a pile of Aeotec ZW122 Water Sensor 6s to put under the dishwasher and near the washer to alert and shut off the water in case of a leak. The Water Sensors weren’t the easiest in the world to configure and hopefully this demystifies the process. Also, a huge shout out to Chris at Aeotec support as he was hugely helpful in figuring this all out.
Firstly, the Water Sensor is what I’ll call an “offline” device. Typically ZWave devices are online all of the time and receive commands from the controller immediately. I have other similar devices, but they wake up on a set timer to receive new configurations. The Water Sensor runs on a battery so it only sends alerts and is never online to receive configuration commands. This is by design to preserve the battery.
How to wake up your Water Sensor and send a configuration.
One can hold the button on the Water Sensor for 3 seconds to wake up the device to receive configuration commands. When in this mode the LED flashes yellow. HOWEVER, the Vera never sees it to send the command. What to do? In the Vera click Devices > Your Device > Advanced > Commands Tab. Once you put the Water Sensor in the wake state click “Configure Node Now”.
Great, so we can send a command to the device. So what?
Make the beeping stop!
There is one fatal flaw to the Water Sensor in my humble opinion – the vibration sensor. The vibration sensor is so ridiculously sensitive that it alerts constantly. These alerts are both audible alarms and “tamper” notifications to your Vera that may show up as push notifications or emails or both depending on how you have your alerts configured. I was getting alerts 50+ times a day as people walked past the dishwasher and the floor vibrated slightly or when the dishwasher itself was running. I even got alerts overnight for no apparent reason. What to do?
First, let’s silence the audible alerts – that is, the constant beeping from the device. This is device option 87 per the engineering sheet and has several options.
1 = water
2 = vibration
4 = tilt
16 = under heat
32 = over heat
The way this works is you add up the values you want active and that is your setting. If you want all audible alerts you would use 1+2+4+16+32=55. In my case, I want an audible alert for water, under heat, and over heat which is 1+16+32=49. If you only want water, you would use 1.
Once this is set, the Vera will tell you it is waiting for the device to wake up. Follow the instructions above to send your configuration. Sometimes this may take a try or two. Great, now the beeping will stop!
Make the push notifications stop!
This was a bit more work and deep digging. There are two main firmware versions of the Water Sensor – 1.04 and 1.06. I happen to have version 1.06.
If you have version 1.04 you are in some luck. Simply follow the instructions to make the beeping stop. Instead of using parameter 87, use parameter 48.
Version 1.06 is not this easy and is not documented anywhere by Aeotec. Not to get too deep into the ZWave protocol, but there are various classes of commands that one can send. Typically, we only use the “Configuration Command Class”. Version 1.06 has no parameter in the Command Class like parameter 48 in v1.04. What to do? Send raw ZWave commands!
In this case we are going to use the “Notification Command Class” and send raw hex. My fabulous Aeotec engineer sent me this:
0xCC 0xNN 0xNT 0xNS
CC = Command class (0x71)
NN = Set (0x06)
NT = Notification type – Home Security(0x07)
NS = Notification status – disabled (0x00)
Essentially this translates to use the Notification Command Class 0x71, put it in Set mode (0x06), set the home security notification parameter (0x07), set that parameter to disabled (0x00).
How does one do this? Within the Vera navigate to Devices > YourDevice > Settings and note the ID under variable. In my case it was ID71.
Put your Water Sensor into wake up mode per the above instructions. Now navigate to Apps > Develop Apps. You will see a “Test Luup code (Lua)” box. Paste this code into the box, update ‘Node=’ to the variable from above, and click “Go”
luup.call_action('urn:micasaverde-com:serviceId:ZWaveNetwork1','SendData',{Node='71',Data='0x71 0x06 0x07 0x00'},1)
With a little luck you’ll get a SUCCESS notification. Hooray! No more tamper notifications night and day!