Page 6 of 23
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 16:09
by waltervl
heggink wrote: ↑Wednesday 25 August 2021 14:18
I added quite a bit to the readme so it should be pretty close to a how to move from OZW. Let me know if this is good enough or whether anything is missing.
Perhaps for docker just refer to the docker installation manual
https://github.com/zwave-js/zwavejs2mqt ... ter/docker
I miss for example the "Add -e TZ=Europe/Stockholm to the docker run command to set the correct timezone in container" note.
On that page there is also the reference to the docker-compose.yml
If you migrate from OZW, this will be a new plugin with new devices. Once you delete OZW in domoticz, your old devices are gone. If you need to retain history then you need to replace the old device with the new one if identical devices are created. New devices will be (automatically) added to domoticz (new names, new IDX) on the first status change.
I think you should warn not to use OZW and ZwaveJS together.
So a possible migration scenario:
1. Document current OZW/Domoticz configuration (How?)
2. Disable (or delete?) OZW from Domoticz. Reboot system or restart Domoticz
3. Install ZwaveJS2MQTT (Docker)
4. Install Plugin
5. Reboot system or restart Domoticz
6. Activate plugin and wait for all New devices to appear in Domoticz
7. Rename new devices to old names if used in scripts or modify scripts to use new names. If OZW was disabled, devices with the same name will give errors in dzVents so delete the old device from OZW after renaming the new device. Is function replace device (wiki
https://www.domoticz.com/wiki/Managing_ ... ace_device )a good alternative method as it will also keep the device history logging if present.
8. Remove OZW hardware (if not done in step 2)
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 17:22
by hestia
heggink wrote: ↑Wednesday 25 August 2021 11:59
hestia wrote:Other questions:
In which way does it work? I've set a name for a node in the control panel (ZWave To MQTT) and it didn't arrive in domoticz. Do I have to do somethings?
Where are located the ZWave To MQTT data (and other stuff). To backup them...
The best way is to, before you install the plugin, name all your devices in zwavejs2mqtt. They will all then be created with that name in domoticz. I would need to check myself what happens if you change the name of an existing device in zwavejs2mqtt. Don't know really.
[...]
I've set a name in zwavejs2mqtt
I've disabled the plugin in dz and removed all the zwavejs2mqtt devices
I've enabled the plugin in dz
The name show up in the devices list for some devices of the node (switches, but no kWh)
After I change the name in zwavejs2mqtt and redo the process, and the names didn't change in dz (I think it is good because the initial names have to be changed)
- Screenshot 2021-08-25 165109.png (28.19 KiB) Viewed 1939 times
- Screenshot 2021-08-25 165317.png (128.5 KiB) Viewed 1939 times
If I put all the good names in zwavejs2mqtt on my testing environment, will it be possible to export them in the production ones?
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 17:57
by hestia
I've copied/pasted the name off all the 37 nodes from dz to zwave.js2mqtt.
About 1/2 hours.
Do I push them right now in dz, or do I wait for a fix about the names of the other devices?
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 18:06
by hestia
Some answers to me
Control Panel / Actions / Advanced / Export => export the nodes with the the names
Code: Select all
{
"1": {
"name": "Z-Stick Gen5"
},
"11": {
"name": "Portail SN 16056DR384 PN ZMNHSD1 H1S1P2"
},
"17": {
"name": "Terrasse !!!!!"
},
"30": {
"name": "Smart Plug HKZW-SO05"
},
Control Panel / Actions / Advanced / Import => export the nodes withe the names.
So if I remove the container, I could do it several times
And also import it on the production env.
(if we could have the same export from dz, no need to do it manually!)
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 18:32
by heggink
hestia wrote: ↑Wednesday 25 August 2021 18:06
Some answers to me
Control Panel / Actions / Advanced / Export => export the nodes with the the names
Code: Select all
{
"1": {
"name": "Z-Stick Gen5"
},
"11": {
"name": "Portail SN 16056DR384 PN ZMNHSD1 H1S1P2"
},
"17": {
"name": "Terrasse !!!!!"
},
"30": {
"name": "Smart Plug HKZW-SO05"
},
Control Panel / Actions / Advanced / Import => export the nodes withe the names.
So if I remove the container, I could do it several times
And also import it on the production env.
(if we could have the same export from dz, no need to do it manually!)
That's indeed one option. The other is to take all the zwavejs2mqtt files and copy these to your production system. You would need to use the same stick for that to work.
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 18:34
by hestia
- Screenshot 2021-08-25 182854.png (104.33 KiB) Viewed 1933 times
So I did it
37 nodes => 143 devices => 15 devices with bad names for 9 nodes
The bad nodes are not in specifics Type or SubType, but looks random
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 18:36
by heggink
After I change the name in zwavejs2mqtt and redo the process, and the names didn't change in dz (I think it is good because the initial names have to be changed)
I did some thinking and realised that this is how the plugin is supposed to work: it creates default devices with the names from zwavejs2mqtt. If then you change the name (or the room name), you may not want your names in domoticz to be overwritten so names will never change through the plugin. If you want changed names, delete the device and it will recreate them with the new name.
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 18:37
by heggink
hestia wrote: ↑Wednesday 25 August 2021 17:57
I've copied/pasted the name off all the 37 nodes from dz to zwave.js2mqtt.
About 1/2 hours.
Do I push them right now in dz, or do I wait for a fix about the names of the other devices?
I don't quite understand what the issue is. Could you explain a bit more what happens that is unexpected?
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 18:46
by hestia
Yes!
in the picture just above (18:34) some devices are created without the name set in zwavejs2mqtt.
It's
- Screenshot 2021-08-25 182854.png (104.33 KiB) Viewed 1931 times
"random" because for a node, some devices are ok and others are ko
Also, possible to remove the "ZwaveMQTT" from the device name, not very user friendly
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 18:54
by heggink
hestia wrote: ↑Wednesday 25 August 2021 18:46
Yes!
in the picture just above (18:34) some devices are created without the name set in zwavejs2mqtt.
It's Screenshot 2021-08-25 182854.png"random" because for a node, some devices are ok and others are ko
Also, possible to remove the "ZwaveMQTT" from the device name, not very user friendly
Right, so some devices get created correctly using the name in zwavejs but some are not?
Please file a bug on the plugin github page. What would help is that you enable full debugging and also list what device this is together with the device screen from zwavejs2mqtt. As mentioned previously, we have a bunch of devices that are already correct but there may well be the odd one here and there that may not work correctly. ALl bugs are tracked through github.
In terms of removing the plugin name from the device name, please file that separately as an enhancement and we'll look into that as well.
Outside of that, things working OK?
Re: zwavejs2mqtt
Posted: Wednesday 25 August 2021 18:55
by heggink
waltervl wrote: ↑Wednesday 25 August 2021 16:09
heggink wrote: ↑Wednesday 25 August 2021 14:18
I added quite a bit to the readme so it should be pretty close to a how to move from OZW. Let me know if this is good enough or whether anything is missing.
Perhaps for docker just refer to the docker installation manual
https://github.com/zwave-js/zwavejs2mqt ... ter/docker
I miss for example the "Add -e TZ=Europe/Stockholm to the docker run command to set the correct timezone in container" note.
On that page there is also the reference to the docker-compose.yml
If you migrate from OZW, this will be a new plugin with new devices. Once you delete OZW in domoticz, your old devices are gone. If you need to retain history then you need to replace the old device with the new one if identical devices are created. New devices will be (automatically) added to domoticz (new names, new IDX) on the first status change.
I think you should warn not to use OZW and ZwaveJS together.
So a possible migration scenario:
1. Document current OZW/Domoticz configuration (How?)
2. Disable (or delete?) OZW from Domoticz. Reboot system or restart Domoticz
3. Install ZwaveJS2MQTT (Docker)
4. Install Plugin
5. Reboot system or restart Domoticz
6. Activate plugin and wait for all New devices to appear in Domoticz
7. Rename new devices to old names if used in scripts or modify scripts to use new names. If OZW was disabled, devices with the same name will give errors in dzVents so delete the old device from OZW after renaming the new device. Is function replace device (wiki
https://www.domoticz.com/wiki/Managing_ ... ace_device )a good alternative method as it will also keep the device history logging if present.
8. Remove OZW hardware (if not done in step 2)
I think I now pretty much added most of your suggestions. Hope it helps other people.
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 9:36
by heggink
By the way, in case you missed it, unlike OZW, deleting dead devices in zwavejs2mqtt is really simple and deleted devices stay deleted.
In the zwavejs2mqtt interface, open the dead device that is to be deleted, click advanced click remove under failed nodes.
After years of OZW, I had quite a number of dead devices (many smoke detectors that, at some point, would just drop off the network and re-including then created new devices for no apparent reason). Took me a few minutes to delete them. No need to edit stick databases or any of that hassle.
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 12:24
by Varazir
Hello,
I used this to install
https://github.com/zwave-js/zwavejs2mqt ... er#install
( didn't say anything of I need to docker pull zwavejs/zwavejs2mqtt ) so I got a error
Code: Select all
Unable to find image 'zwavejs/zwavejs2mqtt:latest' locally
I installed the docker using the pull command
Started with this command again
Code: Select all
docker run --rm -it -p 8091:8091 -p 3000:3000 --device=/dev/ttyAMA0 --mount source=zwavejs2mqtt,target=/usr/src/app/store zwavejs/zwavejs2mqtt:latest -e TZ=Europe/Stockholm
Code: Select all
[eval]:1
pi@zwave2:~/domoticz/plugins $ docker run --rm -it -p 8091:8091 -p 3000:3000 --device=/dev/ttyAMA0 -e TZ=Europe/Stockholm --mount source=zwavejs2mqtt,target=/usr/src/app/store zwavejs/zwavejs2mqtt:latest
/bin/sh: git: not found
2021-08-26 12:21:56.448 INFO APP: Version: 5.5.1
2021-08-26 12:21:56.468 INFO APP: Application path:/usr/src/app
______ _ ___ _ _
|___ / (_) |__ \ | | | |
/ /_ ____ ___ _____ _ ___ ) |_ __ ___ __ _| |_| |_
/ /\ \ /\ / / _` \ \ / / _ \ / __| / /| '_ ` _ \ / _` | __| __|
/ /__\ V V / (_| |\ V / __/ \__ \/ /_| | | | | | (_| | |_| |_
/_____|\_/\_/ \__,_| \_/ \___| |___/____|_| |_| |_|\__, |\__|\__|
_/ | | |
|__/ |_|
2021-08-26 12:21:56.581 WARN STORE: settings.json not found
2021-08-26 12:21:56.604 WARN STORE: scenes.json not found
2021-08-26 12:21:56.613 WARN STORE: nodes.json not found
2021-08-26 12:21:56.758 INFO APP: Listening on port 8091 host 0.0.0.0 protocol HTTP
2021-08-26 12:21:57.040 ERROR GATEWAY: Zwave settings are not valid
What did I miss in the installations steps ?
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 13:03
by heggink
Difficult to say. There should be no need to pull any docker image since it should do that automatically when you issue "docker run".
The command you run subsequently (docker run --rm -it -p ...) starts the container in interactive mode with a terminal attached. Does it stop immediately or does it keep running (and you can access the web interface)? Is your device (/dev/ttyAMA0) the correct one (ie used by OZW)?
H
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 14:58
by Varazir
heggink wrote: ↑Thursday 26 August 2021 13:03
Difficult to say. There should be no need to pull any docker image since it should do that automatically when you issue "docker run".
The command you run subsequently (docker run --rm -it -p ...) starts the container in interactive mode with a terminal attached. Does it stop immediately or does it keep running (and you can access the web interface)? Is your device (/dev/ttyAMA0) the correct one (ie used by OZW)?
H
It keeps running.
I can access the webbgui
It's the device OZW using
I haven'tr enabled the plugin in Domoticz yet
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 15:19
by heggink
Ok, so you need to tell the docker container what device to map in the container and then you need to select that device from the zwavejs2mqtt web interface. If the correct device has been passed to the container, it should all work without a problem.
Sent from my SM-G980F using Tapatalk
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 15:28
by Varazir
heggink wrote: ↑Thursday 26 August 2021 15:19
Ok, so you need to tell the docker container what device to map in the container and then you need to select that device from the zwavejs2mqtt web interface. If the correct device has been passed to the container, it should all work without a problem.
Sent from my SM-G980F using Tapatalk
How do I do that? I have never worked with docker. Just installed it.
Followed the steps on the github.
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 15:38
by heggink
Easiest to follow the instructions on the zwavejs2mqtt plugin on github:
- write down what device OZW uses (you should see it in the domoticz OZW settings)
- create a folder that will contain your zwavejs2mqtt data files. below, a folder called "/opt/zwavejs2mqtt/store" is used for that purpose
- then start the docker container using the following command (replace OZW_DEVICE with the device name you got from OZW):
Code: Select all
docker run -d --name zwavejs2mqtt --restart unless-stopped -v /opt/zwavejs2mqtt/store:/usr/src/app/store -p 8091:8091 -p 3000:3000 --device=OZW_DEVICE zwavejs/zwavejs2mqtt:latest
You can check if it runs with
You can stop it with
You can start it with
If you want to upgrade to the latest version:
stop it with
delete it with
and recreate with the same command you did the first time:
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 15:52
by Varazir
One step forward, thanks.
Re: zwavejs2mqtt
Posted: Thursday 26 August 2021 16:16
by Varazir
I can see the devices in the webGUI
Korrekt me but that is the broker ?
So in the plugin settings I use localhost as adress ?