I am just getting into using openhab2 with some z-wave devices, and have everything more or less working. I am, however, having some weird issues with one of the devices that I hope you can help me understand (or fix).
I added a Aeotec Wallmote Quad through PaperUI, and added channels for the scene_number as “Scene” and the four scene_numberx as “Sx”. If I add something to control in the association group, every button works as expected with no issues. If I want to add them to the controller so I can run rules and scripts on them, I have a weird problem.
If I press the first button (4 times), I get the expected output from /var/log/openhab2/events.log:
2018-01-19 16:03:57.437 [vent.ItemStateChangedEvent] - S1 changed from 0 to 255
2018-01-19 16:03:58.285 [vent.ItemStateChangedEvent] - S1 changed from 255 to 0
2018-01-19 16:03:58.943 [vent.ItemStateChangedEvent] - S1 changed from 0 to 255
2018-01-19 16:03:59.432 [vent.ItemStateChangedEvent] - S1 changed from 255 to 0
It switches between 0 and 255 each time I press button one. If I use any of the other three, however, I get something different (here with one click on button 2):
2018-01-19 16:05:15.542 [vent.ItemStateChangedEvent] - Scene changed from 2.0 to 0
2018-01-19 16:05:17.472 [vent.ItemStateChangedEvent] - Scene changed from 0 to 2.0
2018-01-19 16:05:17.490 [vent.ItemStateChangedEvent] - Scene changed from 2.0 to 255
2018-01-19 16:05:18.022 [vent.ItemStateChangedEvent] - Scene changed from 255 to 2.0
It seems it is not changing the channel connected to the particular button (in my case zwave:device:160ec50384f:node2:scene_number2), but changes the global scene number to the button number, then to 255, then back to the button number?.
Have I misunderstood how everything works, and this is expected behavior, or do I have an error in the configuration somewhere? Any pointers are greatly appreciated!
Did you get any further? I just got a wallmote quad, firmware V1.8. When I press each of the four buttons with a short press, I get 1.0, 2.0, 3.0, 4.0. With a long press I get scene 1 changed from 1.0 to 1.2 with a press and hold, and on release I get scene changed from 1.2 to 1.1. Each of the other buttons register as 2.2, 3.2, etc.
I haven’t yet got a rule running, but will keep trying…
Nope, I ended up connecting it directly to the other nodes and scrapped the plans of using it for scripting. I might get back to it at some point, though. It seems you got it working better than I did, so maybe if I get the new firmware I would be set.
Number Z28WM01_Scene "WallMote" <contact> (gZWave) {channel="zwave:device:usb-dongle1:node28:scene_number"}
And the following rule - controlling 2 lights (via the short press, one is a dimmer) and a window shutter (long press):
rule "WallMote Z28 Control"
when
Item Z28WM01_Scene received update
then
logInfo("Z28WM01", "Z28WM01 got scene # " + Z28WM01_Scene.state )
switch Z28WM01_Scene.state {
case 1.0: {
Z15LightAnna_Dimmer.sendCommand(100)
}
case 2.0: {
Z15LightAnna_Dimmer.sendCommand(0)
}
case 3.0: {
Z26WallPlug3_Switch.sendCommand(ON)
}
case 4.0: {
Z26WallPlug3_Switch.sendCommand(OFF)
}
case 1.1: {
Z08ShutterAnna_BlindsControl.sendCommand(DOWN)
}
case 2.1: {
Z08ShutterAnna_BlindsControl.sendCommand(DOWN)
}
case 3.1: {
Z08ShutterAnna_BlindsControl.sendCommand(UP)
}
case 4.1: {
Z08ShutterAnna_BlindsControl.sendCommand(UP)
}
}
end
This is probably a very simple rule. If you want to control more devices, a good approach is to use the same button for both on and off as a toggle… this would be done by checking the lightswitches state -> if then clause.
Once you are settled down, you can probably remove the logging from the rule.