How to do a clean install for an existing system

Is there such a thing as a clean install, and what do I need to look out for, such as saving my zwave entities so I don’t have to redefine all of those?

I am troubleshooting a slow system (accessing pages and execution of automations), frequent disconnects, integrations like z-wave not staring successfully, and notified errors that I am unable to resolve (like go2rtc not working, though I have no cameras in my system, and ‘something is preventing HA from completing…’).

I have upgraded my hardware, resolved some issues with the help of this forum, working on others like purging ghost entities.

I am getting close to the end of my patience, and am wondering if a ‘clean’ install might help.

I have about 35 zwave devices, 6 tasmota devices, and 20 integrations.

I know how to copy files out of config, so I can save my automations, which are all in yaml files (I created this system prior to HA providing a UI for building automations).

Thanks for your guidance.

There is such a way! But the methods kinda vary depending on how you have HASS setup.

Do you mind giving some details on your installation method and how you have ZWave integrated (Zwave2mqtt, ZwaveJS, etc)?

1 Like

RPi 4
micro SD card
Aeotec Z stick

Home Assistant Operating System

Core 2025.1.2
Supervisor 2024.12.3
Operating System 14.1

1 Like

Alright cool! Lets start with ZWave

So if you go the addons page, you should see a ZWaveJS addon with the option to view the WebUI. Once you get into the WebUI, click the little hamburger button here.
Screenshot 2025-01-10 at 9.49.59 AM
Go to Advanced Options, Export (should be at the top of the page) and save that file. Scroll down a little further, and you should see an “NVM Management” option. Click the backup option and save the file again. You shouldn’t need to restore the file due to the nature of Zwave coordinator hardware, but this is just in case. For good measure, go to settings > Zwave and take a screenshot of all the encryption keys so that any network issues could be resolved.

HomeAssistant has the built in backup and restore function, but I assume you don’t want to use that if you’re starting fresh. How are the tasmota devices connected to HASS? I’m not familiar with those devices but I would make sure I have any QR codes/API keys/tokens saved and backed up just to make reconnecting them easier.

Once you have the important stuff backed up, you should be able to take the SD card and follow the instructions here again to do a clean install. Once you get everything installed and accounts setup, you can go back to the Zwave Addon (once installed) and follow the stops above to backup but clicking restore instead. Skip the NVM restore unless ZwaveJS says you should.

It turns out this is the ZwaveJS UI add on, which is different.

There are several threads and pages on switching to UI.
The github page
An HA page

I was able to download and start the UI add on. All of my devices showed up in the Control Panel.

I went back to Integrations to add the Z-wave integration. I put in ws://a0d7b954-zwavejs2mqtt:3000 per the github instructions, and got the error: “Failed to Connect”. I checked there were no spaces in the address as per this thread.

I assume that the UI add-on is working properly if it is seeing my devices.

So what am I doing wrong?

Did you change anything in ZUI’s Settings → Home Assistant? It should be not be modified:

That was the issue. I corrected that.

Current problem: Do I need to reconnect the official add-on to get a device listing per this community guide, or can I open a file in .storage or elsewhere to copy these out?

Here is the issue:

I should get the result as shown in this image, but I am not, so I am thinking I need to restart the official add-on (with UI add-on stopped; and note, I never finished creating a new Integration for the UI add-on).

In the integration, I check the box for using the Z-Wave JS Supervisor add-on. One observation is I have to check this box each time I try. I would think it should remember.

Another observation is if I never created a second Integration for the UI add-on per the instructions, why is its check-box not checked already?

On the next window, the USB device path radio button is on and showing ttyACM0 - /dev/serial/by-id/usb-0658_0200-if00, s/n: n/a - 0658:0200
This matches what I see in Hardware as well as the ZwaveJS add on. And the ZwaveJS add-on log shows communication with devices, no errors.

If there is another way to get the listing of devices, I can ignore all of this and proceed with the UI add-on, then proceed with the clean install. Please advise.

It doesn’t matter when you export and import the names.

Right now I cannot get an integration to work with either the official or the UI started.

And this is what the template returns:

I presume the integration needs to be loaded otherwise it can’t lookup the devices, I haven’t tried.

These are two repeating entries in the system log

DEBUG (MainThread) [homeassistant.config_entries] Config entry ‘Z-Wave JS’ for zwave_js integration not ready yet: Failed to connect: ; Retrying in 40 seconds

INFO (MainThread) [homeassistant.components.websocket_api.http.connection] [547410294480] Received unknown command: zwave_js/node_status

I don’t see any other z-wave entries.

Ignore. The integration must have started working sometime last night.

The fail to connect problem is probably a symptom of the other problem I am trying to troubleshoot.