Namron Z-Wave 4 channel wall switch

Hi :slight_smile:

I have been having difficulties with getting this switch communicate through the event zwave.scene_activated and since I got it working, and there is nothing to find about this switch in this forum, I would like to share the solution.

It looks like Namron is the same as Sunricher because some other products fra Namron idetifies as Sunricher in the Z-wave control panel.

To get the Scene activation working I had to modify the zwcfg_xxxxx.xml-file as many other posts about z-wave switches suggest. I found this code from this post Scene Activated Trouble. Same code as the Heatit Z-Push Button 8

In the COMMAND_CLASS_CENTRAL_SCENE part i replaced the whole part with this:

		  	<CommandClass id="91" name="COMMAND_CLASS_CENTRAL_SCENE" version="1" request_flags="4" innif="true" scenecount="8">
  				<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="user" instance="1" index="1" label="Scene 1 On" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
		  		<Value type="int" genre="user" instance="1" index="2" label="Scene 1 Off" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
		  		<Value type="int" genre="user" instance="1" index="3" label="Scene 2 On" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
		  		<Value type="int" genre="user" instance="1" index="4" label="Scene 2 Off" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
		  		<Value type="int" genre="user" instance="1" index="5" label="Scene 3 On" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
		  		<Value type="int" genre="user" instance="1" index="6" label="Scene 3 Off" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
		  		<Value type="int" genre="user" instance="1" index="7" label="Scene 4 On" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
		  		<Value type="int" genre="user" instance="1" index="8" label="Scene 4 Off" units="" read_only="false" write_only="false" verify_changes="false" poll_intensity="0" min="-2147483648" max="2147483647" value="0" />
		  	</CommandClass>

It is important that you stop Home Assistant before you modify the file or else it will be overwritten.

Now I get data from the switch through the event zwave.scene_activated and I’m able to create Automations out of it.

Hope this will help others who struggle with the same device.

Hi and thank you for the code.
I had to do the same thing with my Aeotec WallMote Quad.
I just bought a Namron 4 channel wall switch. I added it to Home Assistant, but the only entity I see is the sensor/battery entity. Do you know what might have happened?
Truls

As far as I know there is only one entity, and that is the battery.
This is a remote and not a switch and it is on battery witch means it is passive.
The code I refer to does not add any entities to the device, but it makes this device send scenes to zwave.scene_activated that you can use with automations. You can monitor this under “Events” in “Developer tools”.

Will this switch be supported in z-wave-js?
I bought one of these as a test (only decent looking switch which fit inside “Elko Plus” frames), but cannot add them as a switch in HA.

The inclusion to z-wave-js reports successfull but “Battery information” is the only entities added to HA.

I can identify the button click/ hold actions through the log;

21:31:24.595 CNTRLR « [Node 038] received CentralScene notification {
                          "nodeId": 38,
                          "ccId": "Central Scene",
                          "ccCommand": "0x03",
                          "payload": "0x0a8003"
                      }

Where the payload changes
Group 1 ON
0x8001 Button 1 click
0x8201 Button 1 hold
0x8101 Button 1 release
Group 1 OFF
0x8002 Button 2 click
0x8202 Button 2 hold
0x8102 Button 2 release
Group 2 ON
0x8003 Button 3 click
0x8203 Button 3 hold
0x8103 Button 3 release
Group 2 OFF
0x8004 Button 4 click
0x8204 Button 4 hold
0x8104 Button 4 release

Hi :slight_smile:

I haven’t started using zwave-js yet, so I really don’t know. But it should be able to work.

For what I know this switch will never create any of the buttons as sensor-entities in HA, but you should be able to se them as events by listening to zwave_js_event (I think this is the correct one, but haven’t tested it) or zwave.scene_activated (or other relevant listener) in Developer Tools - Events, and create automations or template-sensors out if these events.

If you don’t see events coming from this node you probably have to modify your zwave device/node-config as shown in my previous post. As I haven’t tested zwave-js I don’t know if its possible or if it will work.

I plan to convert to zwave-js soon, but haven’t found the time yet :slight_smile:

1 Like

Hi Bjørnar. I had your same problem and got it working.
I also had the same Central Scene notification on the Zwave log. Here is how I solved it:

  • Goto to developer tool
  • Click events tab
  • Subscribe to the “zwave_js_value_notification” event
  • Click you button, and you should see an event from the button. It should look something like this:
Event 4 fired 9:13 PM:
{
    "event_type": "zwave_js_value_notification",
    "data": {
        "domain": "zwave_js",
        "node_id": 12,
        "home_id": 3314435459,
        "endpoint": 0,
        "device_id": "6465163187eb434ca96f6b08a27d92f1",
        "command_class": 91,
        "command_class_name": "Central Scene",
        "label": "Scene 001",
        "property": "scene",
        "property_name": "scene",
        "property_key": "001",
        "property_key_name": "001",
        "value": "KeyPressed",
        "value_raw": 0
    },
    "origin": "LOCAL",
    "time_fired": "2021-10-08T19:13:47.545259+00:00",
    "context": {
        "id": "d69abb0c728d9cc4be96c83b322bac9f",
        "parent_id": null,
        "user_id": null
    }
}
  • Make a new automation
  • Make the trigger type an event
  • In the Event data field use relevant information from the event above, for example:
node_id: 12
device_id: "6465163187eb434ca96f6b08a27d92f1"
property_key: "001"
value: "KeyPressed"

You have to change the id of course with your own, and the corresponding key. Mine is a 4 channel switch, so its key 001 to 004.

Hope this helps.

1 Like

@viwil thx a bunch for this? I was strugling with this. Only one thing, waht do you put into the event type: state?

I have several of these from different batches, and they all fail after a couple of days due to improper sleep. Any ideas on how to fix the sleep?

  • Aeotec Z-Stick Gen 5
  • Home Assistant Core 2023.10.1
  • VM on Proxmox 7
  • Z-Wave JS 12.0.3
  • Z-Wave JS UI 9.1.0

Note: My Fibaro battery powered devices have no problem with sleep and their batteries last for 1,5 years+