Aeotec wallmote quad zw130

The Z-Wave log (OZW_Log.txt) should contain the details of what it sends when you do that, to help you build the file.

If you do, can you please update us on what you end up with either here, or submitting a PR to update the docs.

i’ve looked at the ozw_log and can provide a bit furter information.
a single press returns

2017-12-29 15:38:26.458 Detail, Node006, Received: 0x01, 0x0b, 0x00, 0x04, 0x00, 0x06, 0x05, 0x5b, 0x03, 0x4c, 0x00, 0x03, 0xe4
2017-12-29 15:38:26.458 Detail,
2017-12-29 15:38:26.463 Info, Node006, Received Central Scene set from node 6: scene id=3 in 0 seconds. Sending event notification.
2017-12-29 15:38:26.463 Detail, Node006, Refreshed Value: old value=0, new value=0, type=int
2017-12-29 15:38:26.463 Detail, Node006, Changes to this value are not verified
2017-12-29 15:38:26.463 Detail, Node006, Notification: ValueChanged

“scene id=3” is button 3 and I can register that in ha.
“value 0” is single press, i guess

a long press returns:

2017-12-29 15:38:50.325 Detail, Node006, Received: 0x01, 0x0b, 0x00, 0x04, 0x00, 0x06, 0x05, 0x5b, 0x03, 0x4d, 0x02, 0x03, 0xe7
2017-12-29 15:38:50.325 Detail,
2017-12-29 15:38:50.326 Info, Node006, Received Central Scene set from node 6: scene id=3 in 2 seconds. Sending event notification.
2017-12-29 15:38:50.326 Detail, Node006, Refreshed Value: old value=0, new value=2, type=int
2017-12-29 15:38:50.326 Detail, Node006, Changes to this value are not verified
2017-12-29 15:38:50.326 Detail, Node006, Notification: ValueChanged

2017-12-29 15:38:50.388 Detail, Node006, Received: 0x01, 0x0b, 0x00, 0x04, 0x00, 0x06, 0x05, 0x5b, 0x03, 0x4e, 0x02, 0x03, 0xe4
2017-12-29 15:38:50.388 Detail,
2017-12-29 15:38:50.388 Info, Node006, Received Central Scene set from node 6: scene id=3 in 2 seconds. Sending event notification.
2017-12-29 15:38:50.388 Detail, Node006, Refreshed Value: old value=2, new value=2, type=int
2017-12-29 15:38:50.389 Detail, Node006, Changes to this value are not verified
2017-12-29 15:38:50.389 Detail, Node006, Notification: ValueChanged

2017-12-29 15:38:50.797 Detail, Node006, Received: 0x01, 0x0b, 0x00, 0x04, 0x00, 0x06, 0x05, 0x5b, 0x03, 0x51, 0x01, 0x03, 0xf8
2017-12-29 15:38:50.798 Detail,
2017-12-29 15:38:50.798 Info, Node006, Received Central Scene set from node 6: scene id=3 in 1 seconds. Sending event notification.
2017-12-29 15:38:50.798 Detail, Node006, Refreshed Value: old value=2, new value=1, type=int
2017-12-29 15:38:50.798 Detail, Node006, Changes to this value are not verified
2017-12-29 15:38:50.798 Detail, Node006, Notification: ValueChanged

again “scene id=3” is button 3.
I guess that value=2 is button pressed, since it will keep firing (the middle section of the log example will appear multiple times) as long as i press down on the button.
and “value=1” is button released, since it always ends with that.

does anybody have an idea how that can be registered in HA?
i can trigger an automation by registering the event “zwave.scene_activated” on the scene id.
but what about the value changed?
how do i trigger on that, or can i use a condition template or something

Have a look at the documentation (previously linked to in this thread) that documents some of the config for the Minimote, and shows how to use the events in an automation.

the minimote is using the scene id to trigger. I can use that and it works perfectly.
but if i want to trigger only on a button hold down, i need to include the value, since the scene id is the same ie. 3.
So far i haven’t figured out how to do that

It’s documented here.

2 Likes

Thank you Tinkerer, that did it11!
if anyone else is trying to figure out how to use the wallmote.
you should just edit the zwcfg_xxxx.xml as mentioned previously
and ad a bit of automation like this:

- id: '15033356445646'
  alias: wallmote all off
  trigger:
  - event_data:
      entity_id: zwave.wallmote
      scene_id: 4
      scene_data: 2
    event_type: zwave.scene_activated
    platform: event
  condition: []
  action:
  - data:
      entity_id: group.audio
    service: media_player.turn_off
  - data:
      entity_id: group.video
    service: media_player.turn_off
  - data:
      entity_id: group.lys
    service: light.turn_off

this scene_id is the button number, and scene_data is

  • 0 = single press
  • 1 = button release
  • 2 = button press (note it will keep firing as long as you press the button)

the last thing is the slide up/down function, which i haven’t look at too much. just noticed that the log shows this when activated

2018-01-01 11:39:03.298 Detail, Node006, Received: 0x01, 0x0e, 0x00, 0x04, 0x00, 0x06, 0x08, 0x70, 0x06, 0x09, 0x04, 0x03, 0x01, 0x42, 0x87, 0x47
2018-01-01 11:39:03.298 Detail,
2018-01-01 11:39:03.298 Detail, Node006, Refreshed Value: old value=50405509, new value=50414215, type=int
2018-01-01 11:39:03.298 Detail, Node006, Changes to this value are not verified
2018-01-01 11:39:03.298 Info, Node006, Received Configuration report: Parameter=9, Value=50414215
2018-01-01 11:39:03.298 Detail, Node006, Notification: ValueChanged
2018-01-01 11:39:04.540 Detail, Node006, Received: 0x01, 0x0e, 0x00, 0x04, 0x00, 0x06, 0x08, 0x70, 0x06, 0x0a, 0x04, 0x03, 0x01, 0xc7, 0x88, 0xce
2018-01-01 11:39:04.540 Detail,
2018-01-01 11:39:04.540 Detail, Node006, Refreshed Value: old value=50414214, new value=50448264, type=int
2018-01-01 11:39:04.540 Detail, Node006, Changes to this value are not verified
2018-01-01 11:39:04.540 Info, Node006, Received Configuration report: Parameter=10, Value=50448264
2018-01-01 11:39:04.540 Detail, Node006, Notification: ValueChanged

3 Likes

Hi fuglphoenix,

I am trying to replicate your work for the fibaro button. That is

  • Turn off zwave network
  • Edit zwcfg_xxx.xml as suggested by the link above
  • Turn on zwave
  • Edit the automation as you did (with the scene_id and scence_data suggested by the link above)
  • Wait for something to happen when you press the button

However in my case, nothing happens. I played now with serveral variations for quite some while with no luck. Did you do anthing else? Am I missing something here?

I mean I get some warning that tells me that something is not right on OZW level:

2018-01-03 22:11:05.804 Info, Node005, Received Central Scene set from node 5: scene id=1 in 7680 seconds. Sending event notification.
2018-01-03 22:11:05.804 Warning, Node005, No ValueID created for Scene 1

Yet there is little I can to about this at my level of understanding. So I would be inclined to send back the button and get the mote instead.

Did you manage to get the swipe function working?

1 Like

@CoolKau i don’t know if turning off the zwave network will do the same as shutting down home assistant, which is what i did.
I know that when homeassistant is shutdown it will overwrite the zwcfg_xxx.xml file, but i’m not sure if you can prevent that by just shutting down the zwave network.

after homeassistant was down i edited the zwcfg_xxx.xml so
<Commandclass id=91 …> in the <Node id=? name=wallmote …> looks like this:

<CommandClass id="91" name="COMMAND_CLASS_CENTRAL_SCENE" version="1" request_flags="5" innif="true" scenecount="0">
				<Instance index="1" />
				<Value type="int" genre="system" instance="1" index="0" label="Scene Count" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
				<Value type="int" genre="system" instance="1" index="1" label="Button One" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
				<Value type="int" genre="system" instance="1" index="2" label="Button Two" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="1" />
				<Value type="int" genre="system" instance="1" index="3" label="Button Three" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
				<Value type="int" genre="system" instance="1" index="4" label="Button Four" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
				<Value type="int" genre="system" instance="1" index="5" label="Other" units="" read_only="true" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
</CommandClass> 

after that i added the automation script, and the button is ready.

I haven’t figured out how to do the swipe function yet, but when I swipe a new value turns up in the unit configuration: Parameter 9 and 10 (same place where you change if you want sound and light when a button is pressed).
An the number must have something to do with the swipe… a bit strange i think

I’m seeing the events in the z-wave log, but I’m not seeing them in appdaemon and my automation is running. I already added the command class information to the zwcfg_*.xml. Is there a configuration step that I’m missing? Did you guys change any of the reporting types for the node?

Side note, not sure if i like the device. Button presses seem finicky.

Has anyone had any luck getting more than 1 zw130 working? The first one works great, the presses/commands from the second one show up in OCZW event log, but I have been unable to get HA to do acknowledge them.

Worked fine for me, but I had to stop HA and reboot my rasp to get the zwcfg to take the changes.

I returned mine. All the button controls barely worked. That device would have been great if it had physical switches.

Hi,
I tried to integrate the wallmote.
I think that Openzwave have implemented the central scene mode since a while.
So why this functionnality is not in Ha ?

I modified the zwcfg.wml as fuglphoenix has proposed

But now how can I use the wallmote has a trigger in automation ?

Sorry for my stupid questions but I’m newbie :slight_smile:

Use the code given by fuglphoenix about to create your automation.

So those that have this actually working, how? I made the change to the zwcfg_xxxxx.xml file, and added this to my automations:

- id: '15033356445646'
  alias: wallmote test
  trigger:
  - event_data:
      entity_id: zwave.wallmote
      scene_id: 1
      scene_data: 0
    event_type: zwave.scene_activated
    platform: event
  condition: []
  action:
    service: notify.dantext
    data_template:
      message: >
        Testing!

And absolutely nothing happens when I press button 1 (or any of the buttons for that matter).

It seems to appear right in the log:

2018-03-23 20:10:28.117 Detail, Node061,   Received: 0x01, 0x0b, 0x00, 0x04, 0x00, 0x3d, 0x05, 0x5b, 0x03, 0xc1, 0x00, 0x01, 0x50
2018-03-23 20:10:28.117 Detail, 
2018-03-23 20:10:28.117 Info, Node061, Received Central Scene set from node 61: scene id=1 in 0 seconds. Sending event notification.
2018-03-23 20:10:28.117 Detail, Node061, Refreshed Value: old value=0, new value=0, type=int
2018-03-23 20:10:28.117 Detail, Node061, Changes to this value are not verified
2018-03-23 20:10:28.117 Detail, Node061, Notification: ValueChanged

Your YAML formatting appears to be off. This is what I am using:

- alias: Kitchen Wallmote - on
  hide_entity: true
  initial_state: true
  trigger:
    platform: event
    event_type: zwave.scene_activated
    event_data:
      entity_id: zwave.aeotec_zw130_wallmote_quad
      scene_id: 1
      scene_data: 0
  action:
    service: light.turn_on
    data_template:
      entity_id:
        - light.kitchen_1
        - light.kitchen_2
        - light.kitchen_3
        - light.hood
        - light.sink

I’ve added the lines to the zwcfg file and the automation as well.

However when I press the button I see the following error:

2018-04-20 22:11:33.636 Info, Node008, Received Central Scene set from node 8: scene id=4 in 0 seconds. Sending event notification.
2018-04-20 22:11:33.636 Warning, Node008, No ValueID created for Scene 4

Has anyone been able to resolve this?

Hi,

it’s strange because now Openzwave integrates Central scene command class.

So why home assistant doesn’t recognize the wall mote ?

@nicxvan
You need to stop HA, replace "<CommandClass id=“91” in the exiting zwcfg in HA with the code from here, restart and you should be good.