ZWavejs2mqtt

It looks like that works off MQTT discovery, so the outdoor_outlet_plug is what you’d want to focus on where the ID is most likely something that is auto generated. Just my 2c.

I’m the one who changed those values to “outdoor_outlet_plug”. Before it was something like “nodeID_2_switch”.

So I could change those vales and once I jumped thru some “discovery hoops” in HA I finaslly got HA to accept the updated name and entity_id. SO HA is actually good now, I think…

It’s just the representation of the device in the HA discovery UI that is what I’m trying to fix.

But you know what, now that I think about it some more I really shouldn’t care what it says there because the node is already specified in the Node list and it’s name is there already.

Still, I’m not sure why I can update everything else I’ve tried to specify in that json data except that(those) field(s).

I’m not sure what you mean by “It’s just the representation of the device in the HA discovery UI that is what I’m trying to fix.”. With discovery, the ‘under the hood’ keyed name is unique_id. Everything else is mailable. The ID in that JSON doesn’t appear to do anything for discovery so I assume its for zwavejs2mqtt.

FYI, for discovery, this bit is the only bit that matters:

If you have the time, read up on the basic MQTT discovery (you might see use cases for it outside zwave2mqtt, I use it for storing states long term that last restarts).

Is it possible to easy migrate from official 1.4 zwave integration and keep entities names?

Sorry, the top part that explains what I mean was cut off in that screen shot.

Once you click on a node in the node list it brings up that part that I posted above with all of the entities that get discovered in HA below the node list.

Here is the screen with the node list at the top showing node 2 (the selected switch device):

The “HA discovery UI” I was referring to is that whole table at the bottom labeled “Home Assistant - Devices”.

I was thinking that a generic “switch_switch” designation there would end up being hard to follow which devices were which. But like I said, it won’t be a problem since the node number and name are already listed in the node listing and HA devices table at the bottom is based solely on the node you click on in the node list

1 Like

Just created a new topic specific to installation and configuration: ZWavejs2mqtt installation

Any help would be appreciated!

Only if you manually modify the json info in the “Home Assistant - Devices” section I am referring to in the last few posts.

None of the entity information for HA is stored on the zwave controller. And the only thing zwavejs has access to is the info stored on the controller.

This is the missing thing, to go and migrate. With 20+ nodes it is not worth the time

I think that whichever way HA goes when it is time to migrate you’ll probably be in the same boat.

Would you mind taking a screen shot of your entire UI settings for some of us to try and work off since you were able to successfully implement it.

Hi there’s not much more than what is on the github,
Also : you can follow same instructions as zwave2mqtt. very similar config

I dunno, I feel like there were about 40 different config variables, the instructions were like, in the mqtt section, “host: this is the hostname”
There’s not exactly a step by step.

I’ll go see if i can find a step by step for zwave2mqtt, as i agree that it has mostly the same settings.

I hope this is all you needed.

I currently have zwave2mqtt installed and tried to Lock Manager only to find out it doesn’t support Set User Code. Does anyone who has tried the JS version know if that command is supported?

1 Like

The underlying library, zwave-js, does support setting user codes. I’m not sure if the MQTT links are set up to handle it though.
This will 100% be supported with the new z-wave js integration that’ll have a beta release in 2021.2, i was just looking at a PR adding it yesterday or the day before.

1 Like

+1 for the need to add support for remote serial connections (either via socat or rfc2217)
Current lack of support is indeed a major pain.

Trying to decide on a direction. As mentioned I currently have zwave2mqtt installed but it’s missing the user set code feature for locks and I am uncertain if there is a plan to add it. Sounds like zwavejs2mqtt might be getting that feature shorty but as I understand it zwavejs2mqtt is still new so could have stability issues, but OZW has the set code feature now.

  • Do I move to OZW as from what I read that may be the longer term official Home Assistant direction?

  • Do I move to zwavejs2mqtt and complete my cutover and wait for the user code feature? Not in a hurry but really looking to use this so I know who unlocked the door and can build the appropriate automations around it.

As Home Automation is a Hugh investment in time, I am hoping I can take a direction that will be long lived.

Zwave is a mystery for me as there are 4 options (OZW 1.4, OZW 1.6 Beta, zwave2mqtt, zwavejs2mqtt). In fact there are more, Smartthings is supported through an integration.

1 Like

I gave this a try, as I am running the current installation in a docker container I simply stop it and installed this.

Only have a few devices configured so far, I did have to request a node info and provide a name. But after doing that It appears to work fine. In fact a little better than zwave2mqtt. UI is basically the same, but perhaps better in some ways.

I decided to try a GE Fan Switch and when I choose “off” I get an error, switch flips back to on. Setting the fan to low, medium and high work fine.

From the log I see the following. It looks like it try’s to write ‘off vs ‘0’. Is this configuration I could change? I confirmed that if I send a ‘0’ manually by posting a MQTT message the fan will turn off. The "off’ is coming for Home Assistant.

`2021-01-26 02:10:15.974 INFO ZWAVE: Success zwave api call writeValue 
2021-01-26 02:10:16.015 INFO ZWAVE: Node 16: value updated: 112-0-3 0 => 0
2021-01-26 02:10:48.559 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/currentValue/set, '255'
2021-01-26 02:10:48.562 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/targetValue/set, '50'
2021-01-26 02:10:48.563 INFO ZWAVE: Writing 50 to 38-0-targetValue
2021-01-26 02:10:48.656 INFO ZWAVE: Node 16: value updated: 38-0-currentValue 24 => 50
2021-01-26 02:10:59.506 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/currentValue/set, '255'
2021-01-26 02:10:59.510 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/targetValue/set, '24'
2021-01-26 02:10:59.512 INFO ZWAVE: Writing 24 to 38-0-targetValue
2021-01-26 02:10:59.637 INFO ZWAVE: Node 16: value updated: 38-0-currentValue 50 => 24
2021-01-26 02:11:03.013 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/currentValue/set, '0'
2021-01-26 02:12:10.256 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/currentValue/set, '255'
2021-01-26 02:12:10.298 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/targetValue/set, '99'
2021-01-26 02:12:10.300 INFO ZWAVE: Writing 99 to 38-0-targetValue
2021-01-26 02:12:10.398 INFO ZWAVE: Node 16: value updated: 38-0-currentValue 24 => 99
2021-01-26 02:12:20.091 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/currentValue/set, '255'
2021-01-26 02:12:20.094 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/targetValue/set, '24'
2021-01-26 02:12:20.096 INFO ZWAVE: Writing 24 to 38-0-targetValue
2021-01-26 02:12:20.209 INFO ZWAVE: Node 16: value updated: 38-0-currentValue 99 => 24
2021-01-26 02:12:26.524 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/currentValue/set, '255'
2021-01-26 02:12:26.530 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/targetValue/set, 'off'
2021-01-26 02:12:26.532 INFO ZWAVE: Writing off to 38-0-targetValue
2021-01-26 02:12:26.535 ERROR ZWAVE: Error while writing off on 38-0-targetValue: Command not valid for Multilevel Switch Command not valid for Multilevel Switch
Error: Command not valid for Multilevel Switch
    at ZwaveClient.writeValue (/usr/src/app/lib/ZwaveClient.js:2199:17)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
2021-01-26 02:12:26.537 ERROR ZWAVE: Unable to write off on 38-0-targetValue
2021-01-26 02:18:11.131 INFO MQTT: Message received on zwavejs/Master_Fan/switch_multilevel/endpoint_0/currentValue/set, '0'
`

Waytogo ! ZwVe2js will be the official zwave integration . Check next beta :slight_smile:

1 Like