Easiest way to migrate Openzwave to ZWave-JS-UI

For Z-Wave related questions in Domoticz

Moderator: leecollings

User avatar
JackD
Posts: 68
Joined: Monday 02 November 2020 20:53
Target OS: NAS (Synology & others)
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by JackD »

Yesterday I went from Domoticz beta14957 to beta15082 because there were a few updates/fixes which were useful to me.
But since Open-Zwave is depreciated updating is always a bit stressful.
But I am happy to say that updating to beta15082 did not break Open-Zwave (at least for my setup/system).

Don't like tinkering with Domoticz, it just has to run and be reliable, that's why I don't want to switch to ZW-JS, lot of work...
But for now I am a happy camper with Open-Zwave still functioning :mrgreen:
User avatar
waltervl
Posts: 5148
Joined: Monday 28 January 2019 18:48
Target OS: Linux
Domoticz version: 2024.7
Location: NL
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by waltervl »

Looking at Pull request 5605 the removal of OpenZwave in Beta is very, very close. https://github.com/domoticz/domoticz/pull/5605
Domoticz running on Udoo X86 (on Ubuntu)
Devices/plugins: ZigbeeforDomoticz (with Xiaomi, Ikea, Tuya devices), Nefit Easy, Midea Airco, Omnik Solar, Goodwe Solar
MikeyMan
Posts: 237
Joined: Wednesday 17 October 2018 12:11
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by MikeyMan »

Pff... Why remove it... Just let it in...
User avatar
waltervl
Posts: 5148
Joined: Monday 28 January 2019 18:48
Target OS: Linux
Domoticz version: 2024.7
Location: NL
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by waltervl »

MikeyMan wrote: Monday 20 February 2023 16:32 Pff... Why remove it... Just let it in...
As OpenZwave is not compiling anymore on recent OS.....
Domoticz running on Udoo X86 (on Ubuntu)
Devices/plugins: ZigbeeforDomoticz (with Xiaomi, Ikea, Tuya devices), Nefit Easy, Midea Airco, Omnik Solar, Goodwe Solar
User avatar
JackD
Posts: 68
Joined: Monday 02 November 2020 20:53
Target OS: NAS (Synology & others)
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by JackD »

To bad...... :(
Hope that is will clearly be marked from which update version OpenZwave will not be implemented in Domoticz anymore.
From a programmer/developers point of view, probably a logical step to get rid of Open-Zwave in Domoticz, but keep in mind that a lot of users still use OpenZwave. And the new Domoticz Zwave-JS way adds again a extra layer of stuff. Not for everybody that easy to master.

But then it seems to be a thing of this day and age... updates, updates and more update... but sadly for me this mostly means just more work to keep things functioning with little benefits and/or buying new hardware because the old is no long supported. I am not speaking only of Domoticz here, but software/apps in general. Backward compatibility seems to be a nasty word these days.

Sorry for the somewhat negative post, but I see a lot of work coming my way in the near future, perhaps a good time to take a look at other domotica software (but don't think they will be much different :?). We will wait and see what the future brings.


But still kudos for everyone who made/makes Domoticz possible, complaining like I do in this post is much easier than creating ...... :mrgreen:


waltervl wrote: Monday 20 February 2023 15:40 Looking at Pull request 5605 the removal of OpenZwave in Beta is very, very close. https://github.com/domoticz/domoticz/pull/5605
User avatar
waltervl
Posts: 5148
Joined: Monday 28 January 2019 18:48
Target OS: Linux
Domoticz version: 2024.7
Location: NL
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by waltervl »

I also see a lot of happy zwavejsui users so yes it will have impact but it should be manageable.
Domoticz running on Udoo X86 (on Ubuntu)
Devices/plugins: ZigbeeforDomoticz (with Xiaomi, Ikea, Tuya devices), Nefit Easy, Midea Airco, Omnik Solar, Goodwe Solar
Benneton
Posts: 111
Joined: Thursday 08 December 2016 9:46
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by Benneton »

El Zorro,

Thank you for sharing, I will look into and let this thread know if I was able to get it working.

Bernard
lost
Posts: 616
Joined: Thursday 10 November 2016 9:30
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by lost »

waltervl wrote: Monday 20 February 2023 16:42 As OpenZwave is not compiling anymore on recent OS.....
As this looked to be related to openssl, so probably only linked to the OZW 1.6 addition to retrieve configs updates online at startup (that never worked on my system according to logs), issue may probably have been solved removing this update code... this time! But even if I regret the decision, I understand there is no will to maintain no-future-OZW, even in a minimal way for those that will just stop extending the zwave part of their system because that's no more an easy to use protocol due to it's built-in nature...

But IMO, the zwaveJS software pile nightmare does not attract new users and available devices confirms: Zwave is now in the 700 and 800 series on the chip side, but most devices still sold are 500 series (or zwave+)!
MikeyMan
Posts: 237
Joined: Wednesday 17 October 2018 12:11
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by MikeyMan »

andrehj wrote: Sunday 15 January 2023 12:30
andrehj wrote: Saturday 14 January 2023 13:02 Thanks! That guide looks very promising! After everything (hopefully) works, I'll write a full guide here.
Today I successfully finished my upgrade. Pi is now running Domoticz 2022.2 with ZWave-JS-UI (via SNAP) and Bullseye OS.
Since there is no complete guide for this upgrade process, I decided to make my own.
The basics steps I made were:
1. Backup Z-Wave data
2. Install Mosquitto
3. Install Snap
4. Install Z-Wave JS UI
5. Disable OpenZwave gateway
6. Configure Z-Wave JS UI
7. Install MQTT Auto Discover Client gateway in Domoticz
8. Replace old Z-Wave devices
9. Delete old Z-wave controller
10. Upgrade Domoticz to 2022.2
11. Upgrade Pi from Buster to Bullseye

According viewtopic.php?p=296307#p296307 the upgrade to bullseye should be done after the Domoticz upgrade to 2022.2, but in step 11 I ran into some minor conflicts which made me have to redo two of the installation steps of Mosquitto (2.5) and Snap (3.3b). Maybe it is better to upgrade your Pi to Bullseye as step 1 instead of 11.

In detail, there were many, many more steps:

Code: Select all

1. Backup Z-Wave data from Domoticz
		Most imporant data is:
		1. Security Network Key
		2. List of NodeID's and node names 
		3. The USB address of your Z-Wave usb stick.

2. Install Mosquitto according https://randomnerdtutorials.com/how-to-install-mosquitto-broker-on-raspberry-pi/ (en https://www.domoticz.com/wiki/MQTT)
	
		1. Update and upgrade system of Pi:
		sudo apt update && sudo apt upgrade

		2. Install Mosquitto:
		sudo apt install -y mosquitto mosquitto-clients
		
		3. Make Mosquitto auto start when the Raspberry Pi boots
		sudo systemctl enable mosquitto.service
		
		4. Start-up and version check:
		mosquitto -v  (Gives version 1.5.7, version 2.xx will be installed with Bullseye)
	
		5. Enable remote access without authentication:
		sudo nano /etc/mosquitto/mosquitto.conf
		Add these lines at the end:
		listener 1883
		allow_anonymous true
		Use CTRL-X to exit and save.
		
		6. Restart Mosquitto:
		sudo systemctl restart mosquitto
		
		7. Test status of Mosquitto:
		sudo systemctl status mosquitto
		
		8. Check version:
		mosquitto -h | grep version    (again version 1.5.7)
		
3.  Install Snap according https://snapcraft.io/docs/installing-snap-on-raspbian en https://community.home-assistant.io/t/install-and-setup-zwave-js-ui-with-snap-on-a-raspberry-pi/486484
		1. Update system:
		sudo apt update
		
		2. Install snap
		sudo apt install snapd
		
		3. Work around a bug which seems to exist only on Raspberry Pi OS 32-bit system: https://stackoverflow.com/questions/42443273/raspberry-pi-libarmmem-so-cannot-open-shared-object-file-error/50958615#50958615 en https://github.com/zwave-js/zwave-js-ui/discussions/1216
		3a
		sudo nano /etc/ld.so.preload
		Comment out this line:
		(Change /usr/lib/arm-linux-gnueabihf/libarmmem.so to #/usr/lib/arm-linux-gnueabihf/libarmmem.so)
		3b
		sudo visudo
		add :/snap/bin to the end of the secure_path, BUT before the closing quote ". Note the :-separator!
				
		4. Reboot Pi
		sudo reboot
		
		5. After this, install the core snap in order to get the latest snapd.
		sudo snap install --channel=stable core
		
		6. Enable hotplug support and restart:
		sudo snap set system experimental.hotplug=true
		sudo systemctl restart snapd
		
		7. To test your system, install the hello-world snap and make sure it runs correctly:
		sudo snap install hello-world
		hello-world
		
4.  Install Z-Wave JS UI according https://www.domoticz.com/wiki/Zwave-JS-UI en https://zwave-js.github.io/zwave-js-ui/#/getting-started/other-methods and https://community.home-assistant.io/t/install-and-setup-zwave-js-ui-with-snap-on-a-raspberry-pi/486484
		1. Install zwave-js-ui
		sudo snap install --channel=stable zwave-js-ui
		
		2. Give the package access to use USB devices and observe hardware:
		sudo snap connect zwave-js-ui:raw-usb
		
		3. Needed for the program to list available devices in the UI:
		sudo snap connect zwave-js-ui:hardware-observe
		
		4. Open help to see some info about commands:
		zwave-js-ui.help	
		
		5. To access the UI from outside your Pi:
		sudo snap set zwave-js-ui server.host=0.0.0.0
		
		6. Then we need to connect the serial-port to the plug zwave-js-ui. First list available serial slots:
		sudo snap interface serial-port
		
		7. Then use this command to connect the correct serial slot to zwave-js-ui (use correct core: from list you got in previous step):
		sudo snap connect zwave-js-ui:serial-port core:aeotecz-stickgen5zw0
		
		8.Turn service on:
		sudo zwave-js-ui.enable

5.	Disable (not delete!) OpenZwave gateway (USB stick) in Domoticz (menu Setup - hardware)
		Idea is that the old devices are not deleted.
		Sadly this did not work. All my old devices disappeared. Maybe I should have upgraded Domoticz from 2022.1 to 2022.2 first. See also https://www.domoticz.com/forum/viewtopic.php?p=297183&sid=8601aab4dc1990f1d0199e8caced281b#p297183
	
6.	Configure Z-Wave JS UI (from https://www.domoticz.com/wiki/Zwave-JS-UI)

		1. Browse to http://192.168.178.41:8091 
		
		2. Menu settings → MQTT: 
		Retain on
		
		3. Menu settings → Gateway:
		Use nodes names on
		Ignore location on
		Include Node info on
		
		4. Menu settings → Home Assistant:
		MQTT Discovery on
		Retained discovery on (not mentioned in text, but that's according picture)
		
		5. Menu settings → Z-Wave
		Get the key from Domoticz (mine was just "0102030405060708090A0B0C0D0E0F10") and enter as S2 Unauthenticated. 
		Enter the right Serial Port address. In my case: /dev/ttyUSB-ZwaveStick
		I also had to enter something at S0 legacy to get rid of an error message regarding the security status of a Qubino ZMNHDD. I just pressed the button to generate a random key. Result was 643294277C1E50FAEA0C497F116F9897.
		
		6. Menu settings 
		Save settings (Press "save" at the bottom)

		7. Menu Control Panel:
		Give all nodes a useful name based on their Node ID and the info you saved in step 1

7. 	Install MQTT Auto Discover Client gateway in Domoticz (see https://www.domoticz.com/wiki/MQTT#Add_hardware_.22MQTT_Auto_Discovery_Client_Gateway.22)
		
		1. Domoticz → Menu Setup → Hardware 
		Name = MQTT Auto Discovery
		Type = MQTT Auto Discover Client Gateway with LAN interface
		Data Timeout: Disabled
		Remote Address: localhost
		Username: Leave empty when mqtt broker has no user accounts setup else give mqtt broker account name
		Password: Leave empty when mqtt broker has no user accounts setup else give mqtt broker account password
		Auto Discovery Prefix: homeassistant
		
		2. Make sure it is enabled and press "add".

		3. New devices are created in Domoticz by MQTT AutoDiscover
		(After renaming the devices in Z-Wave JS UI I should have gotten nice names, but sadly that didn't work...)
		
		4. Domoticz → Menu Setup → Devices
		Manually rename all new devices to something usefull

8.	Replace old Z-Wave devices with new ones
		If you want to keep the history logging of the old devices then you need to replace the old device with the new one if identical devices are created. Use the replace function in Edit device, see wiki https://www.domoticz.com/wiki/Managing_Devices#Replace_device Devices that were replaced will get the old name and old IDX, no need to change scripts.
	
9. 	Delete old Z-wave controller in Domoticz.
		1. Domoticz → Menu Setup → Hardware
		Select old Z-wave controller (Aeotec USB stick) and press Delete.
		
		2. Reboot pi
		sudo reboot 

10. Upgrade Domoticz to 2022.2 according https://www.domoticz.com/forum/viewtopic.php?t=39291
		1. Backup version 2022.1
		sudo service domoticz stop
		sudo cp -R /home/pi/domoticz /home/pi/domoticz_2022.1  (may take while...)
		sudo service domoticz start

		2. Make sure you're on the Stable Release Channel
		Menu Setup → Settings → Software Updates → Release Channel → Stable
		
		3. Update to 2022.2 (called #14606 in dialogue box...)
		Menu Setup → Check for updates → OK
		
11. Upgrade Pi to Bullseye according https://pimylifeup.com/upgrade-raspberry-pi-os-bullseye/ and https://linuxhint.com/upgrade-raspberry-pi-os-buster-to-bullseye/
		1. Backup your Pi.
		
		1. Check your current version:
		lsb_release -a
		
		2. Update Raspberry Pi Repositories List
		sudo apt update
		
		3. Upgrade Packages on Raspberry Pi
		sudo apt dist-upgrade -y
		
		4. Upgrade Firmware
		sudo rpi-update
		sudo reboot
		
		5. Edit Raspberry Pi Source Lists
		In /etc/apt/sources.list replace all instances of "buster" by "bullseye".
		sudo nano /etc/apt/sources.list or use WinSCP
		Do the same for any other sources lists in the /etc/apt/sources.list.d directory:
		sudo nano /etc/apt/sources.list.d/raspi.list
		sudo nano /etc/apt/sources.list.d/vscode.list
		
		6. Update package lists
		sudo apt update
		
		7. Install missing packages:
		sudo apt install -y libgcc-8-dev gcc-8-base
		(enter yes if asked if services have to be automatically restarted)
		
		8. Upgrade to Bullseye
		sudo apt full-upgrade
		
			Ran into Error:
			E: Failed to fetch http://mirror.serverius.net/raspbian/raspbian/pool/main/p/protobuf-c/libprotobuf-c1_1.3.3-1+b2_armh              f.deb  Undetermined Error [IP: 5.255.95.70 80]
			E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
			Decided to rerun command, second time it worked OK.
			
			Installer reported change conflict in 3 files. Backed up all three and let installler use new versions.
			/etc/default/useradd
			/etc/sudoers
			/etc/mosquitto/mosquitto.conf

			Decided not to do anything about useradd
			Fixed /etc/sudoers with command sudo visudo (see snap configuration above)
			Fixed conflict in /etc/mosquitto/mosquitto.conf by adding the two missing lines (see mosquitto configuration above)
		
		9. Fix error in /etc/systemd/system/dhcpcd.service.d/wait.conf
		Check if file exists:
		sudo stat /etc/systemd/system/dhcpcd.service.d/wait.conf
		Edit the file
		sudo nano /etc/systemd/system/dhcpcd.service.d/wait.conf
		Replace
		ExecStart=/usr/lib/dhcpcd5/dhcpcd -q -w
		by
		ExecStart=/usr/sbin/dhcpcd -q -w
		Exit and save.
		
		10. Modify Boot config
		sudo nano /boot/config.txt
		In section [pi4] comment out dtoverlay=vc4-fkms-v3d (put a # in front of the line)
		In section [all] add the line dtoverlay=vc4-kms-v3d
		Exit and save.
		
		11. Reboot Pi.
		sudo reboot
		
		12. Check version to see if upgrade was successful:
		lsb_release -a
		
		13. Cleanup (if everything works)
		sudo apt autoclean

		14. Reinstall dev version of Python plugin to get plugins working
		sudo apt install python3-dev

		15. Restart Domoticz
		sudo service domoticz restart
I hope this guide is useful for anyone who still has to do the same upgrade. If you like it, please let me know.
Did you ever manage to replace the devices from the dashboard pages?
AutoUlf
Posts: 3
Joined: Sunday 26 November 2017 18:11
Target OS: Raspberry Pi / ODroid
Domoticz version: 2020.2
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by AutoUlf »

andrehj wrote: Sunday 15 January 2023 12:30
andrehj wrote: Saturday 14 January 2023 13:02 Thanks! That guide looks very promising! After everything (hopefully) works, I'll write a full guide here.
Today I successfully finished my upgrade. Pi is now running Domoticz 2022.2 with ZWave-JS-UI (via SNAP) and Bullseye OS.
Since there is no complete guide for this upgrade process, I decided to make my own.
The basics steps I made were:
1. Backup Z-Wave data
2. Install Mosquitto
3. Install Snap
4. Install Z-Wave JS UI
5. Disable OpenZwave gateway
6. Configure Z-Wave JS UI
7. Install MQTT Auto Discover Client gateway in Domoticz
8. Replace old Z-Wave devices
9. Delete old Z-wave controller
10. Upgrade Domoticz to 2022.2
11. Upgrade Pi from Buster to Bullseye

According viewtopic.php?p=296307#p296307 the upgrade to bullseye should be done after the Domoticz upgrade to 2022.2, but in step 11 I ran into some minor conflicts which made me have to redo two of the installation steps of Mosquitto (2.5) and Snap (3.3b). Maybe it is better to upgrade your Pi to Bullseye as step 1 instead of 11.

In detail, there were many, many more steps:

Code: Select all

1. Backup Z-Wave data from Domoticz
		Most imporant data is:
		1. Security Network Key
		2. List of NodeID's and node names 
		3. The USB address of your Z-Wave usb stick.

2. Install Mosquitto according https://randomnerdtutorials.com/how-to-install-mosquitto-broker-on-raspberry-pi/ (en https://www.domoticz.com/wiki/MQTT)
	
		1. Update and upgrade system of Pi:
		sudo apt update && sudo apt upgrade

		2. Install Mosquitto:
		sudo apt install -y mosquitto mosquitto-clients
		
		3. Make Mosquitto auto start when the Raspberry Pi boots
		sudo systemctl enable mosquitto.service
		
		4. Start-up and version check:
		mosquitto -v  (Gives version 1.5.7, version 2.xx will be installed with Bullseye)
	
		5. Enable remote access without authentication:
		sudo nano /etc/mosquitto/mosquitto.conf
		Add these lines at the end:
		listener 1883
		allow_anonymous true
		Use CTRL-X to exit and save.
		
		6. Restart Mosquitto:
		sudo systemctl restart mosquitto
		
		7. Test status of Mosquitto:
		sudo systemctl status mosquitto
		
		8. Check version:
		mosquitto -h | grep version    (again version 1.5.7)
		
3.  Install Snap according https://snapcraft.io/docs/installing-snap-on-raspbian en https://community.home-assistant.io/t/install-and-setup-zwave-js-ui-with-snap-on-a-raspberry-pi/486484
		1. Update system:
		sudo apt update
		
		2. Install snap
		sudo apt install snapd
		
		3. Work around a bug which seems to exist only on Raspberry Pi OS 32-bit system: https://stackoverflow.com/questions/42443273/raspberry-pi-libarmmem-so-cannot-open-shared-object-file-error/50958615#50958615 en https://github.com/zwave-js/zwave-js-ui/discussions/1216
		3a
		sudo nano /etc/ld.so.preload
		Comment out this line:
		(Change /usr/lib/arm-linux-gnueabihf/libarmmem.so to #/usr/lib/arm-linux-gnueabihf/libarmmem.so)
		3b
		sudo visudo
		add :/snap/bin to the end of the secure_path, BUT before the closing quote ". Note the :-separator!
				
		4. Reboot Pi
		sudo reboot
		
		5. After this, install the core snap in order to get the latest snapd.
		sudo snap install --channel=stable core
		
		6. Enable hotplug support and restart:
		sudo snap set system experimental.hotplug=true
		sudo systemctl restart snapd
		
		7. To test your system, install the hello-world snap and make sure it runs correctly:
		sudo snap install hello-world
		hello-world
		
4.  Install Z-Wave JS UI according https://www.domoticz.com/wiki/Zwave-JS-UI en https://zwave-js.github.io/zwave-js-ui/#/getting-started/other-methods and https://community.home-assistant.io/t/install-and-setup-zwave-js-ui-with-snap-on-a-raspberry-pi/486484
		1. Install zwave-js-ui
		sudo snap install --channel=stable zwave-js-ui
		
		2. Give the package access to use USB devices and observe hardware:
		sudo snap connect zwave-js-ui:raw-usb
		
		3. Needed for the program to list available devices in the UI:
		sudo snap connect zwave-js-ui:hardware-observe
		
		4. Open help to see some info about commands:
		zwave-js-ui.help	
		
		5. To access the UI from outside your Pi:
		sudo snap set zwave-js-ui server.host=0.0.0.0
		
		6. Then we need to connect the serial-port to the plug zwave-js-ui. First list available serial slots:
		sudo snap interface serial-port
		
		7. Then use this command to connect the correct serial slot to zwave-js-ui (use correct core: from list you got in previous step):
		sudo snap connect zwave-js-ui:serial-port core:aeotecz-stickgen5zw0
		
		8.Turn service on:
		sudo zwave-js-ui.enable

5.	Disable (not delete!) OpenZwave gateway (USB stick) in Domoticz (menu Setup - hardware)
		Idea is that the old devices are not deleted.
		Sadly this did not work. All my old devices disappeared. Maybe I should have upgraded Domoticz from 2022.1 to 2022.2 first. See also https://www.domoticz.com/forum/viewtopic.php?p=297183&sid=8601aab4dc1990f1d0199e8caced281b#p297183
	
6.	Configure Z-Wave JS UI (from https://www.domoticz.com/wiki/Zwave-JS-UI)

		1. Browse to http://192.168.178.41:8091 
		
		2. Menu settings → MQTT: 
		Retain on
		
		3. Menu settings → Gateway:
		Use nodes names on
		Ignore location on
		Include Node info on
		
		4. Menu settings → Home Assistant:
		MQTT Discovery on
		Retained discovery on (not mentioned in text, but that's according picture)
		
		5. Menu settings → Z-Wave
		Get the key from Domoticz (mine was just "0102030405060708090A0B0C0D0E0F10") and enter as S2 Unauthenticated. 
		Enter the right Serial Port address. In my case: /dev/ttyUSB-ZwaveStick
		I also had to enter something at S0 legacy to get rid of an error message regarding the security status of a Qubino ZMNHDD. I just pressed the button to generate a random key. Result was 643294277C1E50FAEA0C497F116F9897.
		
		6. Menu settings 
		Save settings (Press "save" at the bottom)

		7. Menu Control Panel:
		Give all nodes a useful name based on their Node ID and the info you saved in step 1

7. 	Install MQTT Auto Discover Client gateway in Domoticz (see https://www.domoticz.com/wiki/MQTT#Add_hardware_.22MQTT_Auto_Discovery_Client_Gateway.22)
		
		1. Domoticz → Menu Setup → Hardware 
		Name = MQTT Auto Discovery
		Type = MQTT Auto Discover Client Gateway with LAN interface
		Data Timeout: Disabled
		Remote Address: localhost
		Username: Leave empty when mqtt broker has no user accounts setup else give mqtt broker account name
		Password: Leave empty when mqtt broker has no user accounts setup else give mqtt broker account password
		Auto Discovery Prefix: homeassistant
		
		2. Make sure it is enabled and press "add".

		3. New devices are created in Domoticz by MQTT AutoDiscover
		(After renaming the devices in Z-Wave JS UI I should have gotten nice names, but sadly that didn't work...)
		
		4. Domoticz → Menu Setup → Devices
		Manually rename all new devices to something usefull

8.	Replace old Z-Wave devices with new ones
		If you want to keep the history logging of the old devices then you need to replace the old device with the new one if identical devices are created. Use the replace function in Edit device, see wiki https://www.domoticz.com/wiki/Managing_Devices#Replace_device Devices that were replaced will get the old name and old IDX, no need to change scripts.
	
9. 	Delete old Z-wave controller in Domoticz.
		1. Domoticz → Menu Setup → Hardware
		Select old Z-wave controller (Aeotec USB stick) and press Delete.
		
		2. Reboot pi
		sudo reboot 

10. Upgrade Domoticz to 2022.2 according https://www.domoticz.com/forum/viewtopic.php?t=39291
		1. Backup version 2022.1
		sudo service domoticz stop
		sudo cp -R /home/pi/domoticz /home/pi/domoticz_2022.1  (may take while...)
		sudo service domoticz start

		2. Make sure you're on the Stable Release Channel
		Menu Setup → Settings → Software Updates → Release Channel → Stable
		
		3. Update to 2022.2 (called #14606 in dialogue box...)
		Menu Setup → Check for updates → OK
		
11. Upgrade Pi to Bullseye according https://pimylifeup.com/upgrade-raspberry-pi-os-bullseye/ and https://linuxhint.com/upgrade-raspberry-pi-os-buster-to-bullseye/
		1. Backup your Pi.
		
		1. Check your current version:
		lsb_release -a
		
		2. Update Raspberry Pi Repositories List
		sudo apt update
		
		3. Upgrade Packages on Raspberry Pi
		sudo apt dist-upgrade -y
		
		4. Upgrade Firmware
		sudo rpi-update
		sudo reboot
		
		5. Edit Raspberry Pi Source Lists
		In /etc/apt/sources.list replace all instances of "buster" by "bullseye".
		sudo nano /etc/apt/sources.list or use WinSCP
		Do the same for any other sources lists in the /etc/apt/sources.list.d directory:
		sudo nano /etc/apt/sources.list.d/raspi.list
		sudo nano /etc/apt/sources.list.d/vscode.list
		
		6. Update package lists
		sudo apt update
		
		7. Install missing packages:
		sudo apt install -y libgcc-8-dev gcc-8-base
		(enter yes if asked if services have to be automatically restarted)
		
		8. Upgrade to Bullseye
		sudo apt full-upgrade
		
			Ran into Error:
			E: Failed to fetch http://mirror.serverius.net/raspbian/raspbian/pool/main/p/protobuf-c/libprotobuf-c1_1.3.3-1+b2_armh              f.deb  Undetermined Error [IP: 5.255.95.70 80]
			E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
			Decided to rerun command, second time it worked OK.
			
			Installer reported change conflict in 3 files. Backed up all three and let installler use new versions.
			/etc/default/useradd
			/etc/sudoers
			/etc/mosquitto/mosquitto.conf

			Decided not to do anything about useradd
			Fixed /etc/sudoers with command sudo visudo (see snap configuration above)
			Fixed conflict in /etc/mosquitto/mosquitto.conf by adding the two missing lines (see mosquitto configuration above)
		
		9. Fix error in /etc/systemd/system/dhcpcd.service.d/wait.conf
		Check if file exists:
		sudo stat /etc/systemd/system/dhcpcd.service.d/wait.conf
		Edit the file
		sudo nano /etc/systemd/system/dhcpcd.service.d/wait.conf
		Replace
		ExecStart=/usr/lib/dhcpcd5/dhcpcd -q -w
		by
		ExecStart=/usr/sbin/dhcpcd -q -w
		Exit and save.
		
		10. Modify Boot config
		sudo nano /boot/config.txt
		In section [pi4] comment out dtoverlay=vc4-fkms-v3d (put a # in front of the line)
		In section [all] add the line dtoverlay=vc4-kms-v3d
		Exit and save.
		
		11. Reboot Pi.
		sudo reboot
		
		12. Check version to see if upgrade was successful:
		lsb_release -a
		
		13. Cleanup (if everything works)
		sudo apt autoclean

		14. Reinstall dev version of Python plugin to get plugins working
		sudo apt install python3-dev

		15. Restart Domoticz
		sudo service domoticz restart
I hope this guide is useful for anyone who still has to do the same upgrade. If you like it, please let me know.
I followed your guide and everything went well. Thank you so much.
thomasbaetge
Posts: 153
Joined: Wednesday 02 October 2019 11:47
Target OS: Linux
Domoticz version: 2023.1
Location: DE / BY / LT
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by thomasbaetge »

Hi,

just a quick question, is MQTT Auto Discover Client gateway supposed to replace the (in my system) already existing MQTT Client gateway with LAN interface, or are they supposed to coexist in the system?
(I have a lot of MQTT stuff already and don't want to break it)

thanks!
User avatar
waltervl
Posts: 5148
Joined: Monday 28 January 2019 18:48
Target OS: Linux
Domoticz version: 2024.7
Location: NL
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by waltervl »

They can coexist together. You can also setup an extra separate mqtt AD gateway for each integration if you want to.
Domoticz running on Udoo X86 (on Ubuntu)
Devices/plugins: ZigbeeforDomoticz (with Xiaomi, Ikea, Tuya devices), Nefit Easy, Midea Airco, Omnik Solar, Goodwe Solar
Ayep
Posts: 15
Joined: Friday 27 March 2020 8:16
Target OS: Raspberry Pi / ODroid
Domoticz version: 2023.1
Location: France
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by Ayep »

elzorrovega wrote: Monday 02 January 2023 19:24
What is the best way to Start Docker Containers Automatically After a Reboot?
Hello there, did you ever figure this out?

I'm currently running in the terminal the following command, which seems to work great so far :

Code: Select all

sudo docker run --rm -it -p 8091:8091 -p 3000:3000 -e TZ=Europe/Paris --device=/dev/serial/by-id/usb-0658_0200-if00:/dev/zwave --mount source=zwave-js-ui,target=/usr/src/app/store zwavejs/zwave-js-ui:latest
Can I stick this in the rc.local file?

Many thanks.

Edit : I should mention I am running domoticz on a raspberry pi 4.
Ayep
Posts: 15
Joined: Friday 27 March 2020 8:16
Target OS: Raspberry Pi / ODroid
Domoticz version: 2023.1
Location: France
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by Ayep »

Hi all,

I created a docker-compose.yml file, in ~/store/.

Code: Select all

docker-compose up -d 
indeed launches a new instance, with automatically resumes after reboot. However, I have lost all of my settings and configs. Before doing any damage, how I can transfer the settings that were in the initial command, into this new instance?
Initial command was :

Code: Select all

sudo docker run --rm -it -p 8091:8091 -p 3000:3000 -e TZ=Europe/Paris --device=/dev/serial/by-id/usb-0658_0200-if00:/dev/zwave --mount source=zwave-js-ui,target=/usr/src/app/store zwavejs/zwave-js-ui:latest
If I reconfigure the new instance, I will get another new load of zwave devices, and will have to retransfer and reconfigure everything I assume?

Many thanks for the advice.
User avatar
JackD
Posts: 68
Joined: Monday 02 November 2020 20:53
Target OS: NAS (Synology & others)
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by JackD »

Yesterday I updated to beta15109 because of a usefull RFXcom update.
But because of the depreciation of OpenZwave always a stressful moment.
But I am happy to say that beta15109 did not break my OpenZwave :D :D
OpenZwave and the other parts of my Domoticz system still work fine.......
User avatar
madpatrick
Posts: 636
Joined: Monday 26 December 2016 12:17
Target OS: Linux
Domoticz version: 2024.7
Location: Netherlands
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by madpatrick »

JackD wrote: Saturday 04 March 2023 13:05 Yesterday I updated to beta15109 because of a usefull RFXcom update.
But because of the depreciation of OpenZwave always a stressful moment.
But I am happy to say that beta15109 did not break my OpenZwave :D :D
OpenZwave and the other parts of my Domoticz system still work fine.......
I think they will make an announcement when OZW will be depreciated
(hopely not very soon.....)
-= HP server GEN8 Xeon(R) E3-1220L_V2 -=- OZW -=- Toon2 (rooted) -=- Domoticz v2024.7 -=- Dashticz v3.12b on Tab8" =-
Benneton
Posts: 111
Joined: Thursday 08 December 2016 9:46
Target OS: Raspberry Pi / ODroid
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by Benneton »

HI
I am still reading into this change tho ZWave-JS-UI.
I noticed that in one go ZWave-JS-UI is installed on the PI directly and in another guide it is installed in a docker / as docker image.
What would the benefit be to install in Docker?
My setup has MQTT and node red running to scrape my solar panel monitoring box, which works fine.
Can I not just add/install the ZWave-JS-UI and feed that into MQTT then Domoticz?
I am not a complete noob but this is getting and taking more and more time to maintain and keep running.
When I started with Domoticz it was (my opinion) simple and straight forward to install, and add RFX, Z-Wave and Zigbee (Hue).
Now it seems to get to more and more add on's (which can be a good way to go) which require in depth knowledge of Linux, and some programming skills. My biggest fear is when I get this installed, how to maintain and keep up to date.
For me as simple user, it would be great if within Domoticz you could select the various packages and have it working, instead of installing multiple bits and pieces and then hope it will work in Domoticz.

Thank you all for letting me know on the Docker bit as I get somewhat confused.

Bernard
User avatar
JackD
Posts: 68
Joined: Monday 02 November 2020 20:53
Target OS: NAS (Synology & others)
Domoticz version:
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by JackD »

For me the big positive thing about software in a docker container is that it is extremely easy to revert back to the previous version if a update has bugs in it and does not work correctly. That is why I also run Domoticz in a Docker container.

On the other subject, I think that it would help many Domoticz/Zwave users if Zwave-JS-UI could be integrated in Domoticz, and not a extra layer of "external stuff" like it is now. But do not know if this is technically possible within a resalable amount of effort. The same could be said for a MQTT broker.
rron
Posts: 223
Joined: Sunday 30 March 2014 15:24
Target OS: Linux
Domoticz version: Beta
Location: Waterland
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by rron »

Benneton wrote: Sunday 05 March 2023 11:50 HI
I am still reading into this change tho ZWave-JS-UI.
I noticed that in one go ZWave-JS-UI is installed on the PI directly and in another guide it is installed in a docker / as docker image.
What would the benefit be to install in Docker?
My setup has MQTT and node red running to scrape my solar panel monitoring box, which works fine.
Can I not just add/install the ZWave-JS-UI and feed that into MQTT then Domoticz?
I am not a complete noob but this is getting and taking more and more time to maintain and keep running.
When I started with Domoticz it was (my opinion) simple and straight forward to install, and add RFX, Z-Wave and Zigbee (Hue).
Now it seems to get to more and more add on's (which can be a good way to go) which require in depth knowledge of Linux, and some programming skills. My biggest fear is when I get this installed, how to maintain and keep up to date.
For me as simple user, it would be great if within Domoticz you could select the various packages and have it working, instead of installing multiple bits and pieces and then hope it will work in Domoticz.

Thank you all for letting me know on the Docker bit as I get somewhat confused.

Bernard
I agree with you. For some users like me it is better too have only one packet to install and to maintain :D
Rpi, RFXcom, klikaan klikuit switch,thermosmart, z-wave, espeasy, smartevse
User avatar
Domoberry
Posts: 116
Joined: Tuesday 30 May 2017 19:00
Target OS: Raspberry Pi / ODroid
Domoticz version: 2024.7
Contact:

Re: Easiest way to migrate Openzwave to ZWave-JS-UI

Post by Domoberry »

Reading this post with interest, multiple relevant tips while updating from OZW! After some challenges I am now at the point where zwave-js-ui runs in Docker and I’m able to see its messages using an MQTT tool.
Practical asks:
- is there a dependency on Mosquitto version? (I have 1.5.7)
- I have the MQTT gateway for some other devices (Tasmota, EMS-ESP), I understood from this thread that I can add the MQTT AD gateway next to the existing one and configure it with the Prefix of zwave-js-ui from HA settings section, no need to enter the zwave-js-ui prefix from MQTT settings section as the AD process will handle this. Correct?
Thanks in advance for any replies!
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest