I am new here. I was loving HA for a time. Now I have had a catastrophic failure because I applied an update, and backups evidently do not actually work because after I tried to restore from backup I am not able to get to a working system. I am trying to find help, and none of the categories for the forum seem to be geared towards the problem I am experiencing. I guess I installed an update so this is an installation issue? I can no longer control my z-wave and UPB devices, and I have no idea how to move forward. On the plus side the HUE lights still work. How do I fix this? Is this a problem for others with the recent core OS updates?
An update to what and which versions (from and to)?
Actually they do, so there may be something else wrong with your system like a bad power supply or corrupt SD card. Though we have no details on your system so this is speculation. Please provide details on your hardware set up including (if running on a pi) power supply, any connected peripherals like SSDs or USB devices and which database you are using if not the default. Or details on your VM if using that installation method.
If in doubt put it in the Configuration category for maximum exposure, a moderator will move it if needed. Installation does fit in this case, so good choice.
Logs logs logs. Please provide as much detail as possible on any error messages from Settings → System → Logs. There are three logs of interest in this case, Core, Supervisor and Host, select them from the drop-down top right of the page. If you cant reach home assistant to view the logs, connect a monitor and keyboard to your system. The HA CLI may be used to gather this information.
Hi Tom,
First, thank you for responding! The first update that I think caused the issue was addon_a0d7b954_zwavejs2mqtt_1.5.0. Though prior to checking the system I also updated core_2023.1.6 as well. I both tried rolling back these updates, and updating past these. Neither option has worked. I had thought that the updates had scrambled the USB port numbers, though once I asigned the zwave controler the correct port I was only able to see zwave devices in the zwave-JS UI server. No HA zwave devices actually function.
For backups I am able to see the backups, I can restore to the backup state, so they do something. But did applying a backup restore me to a working system? No. So even though they did something, they did not perform the primary function of rolling back an update to get back to a functioning system. If there is something I can provide to help determining why this is please let me know.
My system is a rpi 4. It is setup with a new power supply that came with the canakit. Also added the heatsinks and a case fan just to overdo cooling. The whole system is new as of two months ago, and has not had any intermittent issues. Storage is a samsung miniSD card I think. I have a zooz 700 series zwave USB stick, and a USB to four port serial adapter that I have my UPB PIM and my RFXCom reciever plugged into.
I do not see the drop down on the top right of the logs window. I see the option to see and download full logs.
Here are full logs after I restarted:
2023-02-02 22:03:48.857 WARNING (MainThread) [bluetooth_auto_recovery.recover] Bluetooth adapter hci0 [DC:A6:32:AA:48:97] could not be reset due to timeout
2023-02-02 22:03:48.879 WARNING (MainThread) [homeassistant.config_entries] Config entry 'DC:A6:32:AA:48:97' for bluetooth integration not ready yet: hci0 (DC:A6:32:AA:48:97): Failed to start Bluetooth: [org.bluez.Error.NotReady] Resource Not Ready; Retrying in background
2023-02-02 22:04:01.851 WARNING (MainThread) [upb_lib.upb] Timeout communicating with PIM, is it connected?
2023-02-02 22:04:05.364 ERROR (Thread-2 (_connect)) [root] Uncaught thread exception
Traceback (most recent call last):
File "/usr/local/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
self.run()
File "/usr/local/lib/python3.10/threading.py", line 953, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.10/site-packages/RFXtrx/__init__.py", line 989, in _connect
self.set_recmodes(self._modes)
File "/usr/local/lib/python3.10/site-packages/RFXtrx/__init__.py", line 1027, in set_recmodes
data[5] = self._status.device.tranceiver_type
AttributeError: 'NoneType' object has no attribute 'device'
2023-02-02 22:04:11.856 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Master Bedroom Niki Switch' (71_1_0)
2023-02-02 22:04:20.510 ERROR (MainThread) [homeassistant.components.rfxtrx] Connection timeout: failed to receive response from RFXtrx device
2023-02-02 22:04:24.112 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Master Closet IO Module 0' (71_5_0)
2023-02-02 22:04:26.321 WARNING (MainThread) [bluetooth_auto_recovery.recover] Bluetooth adapter hci0 [DC:A6:32:AA:48:97] could not be reset due to timeout
2023-02-02 22:04:34.125 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Master Bedroom Jason Switch' (71_2_0)
2023-02-02 22:04:38.352 WARNING (MainThread) [upb_lib.upb] PIM at serial:///dev/ttyUSB0 disconnected
2023-02-02 22:04:41.616 WARNING (MainThread) [bluetooth_auto_recovery.recover] Bluetooth adapter hci0 [DC:A6:32:AA:48:97] could not be reset due to timeout
2023-02-02 22:04:49.505 WARNING (MainThread) [upb_lib.upb] Timeout communicating with PIM, is it connected?
2023-02-02 22:04:59.508 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Master Bedroom Niki Switch' (71_1_0)
2023-02-02 22:05:06.867 WARNING (MainThread) [bluetooth_auto_recovery.recover] Bluetooth adapter hci0 [DC:A6:32:AA:48:97] could not be reset due to timeout
2023-02-02 22:05:09.512 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Master Closet IO Module 0' (71_5_0)
2023-02-02 22:05:19.515 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Master Bedroom Jason Switch' (71_2_0)
2023-02-02 22:05:29.520 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Living Room Bar Lamp' (71_3_0)
2023-02-02 22:05:36.444 ERROR (MainThread) [homeassistant.core] Error executing service: <ServiceCall light.turn_off (c:01GRAY1Q9DMMFR9TW57XRAQG7P): entity_id=['light.ceiling_light'], params=>
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/core.py", line 1805, in catch_exceptions
await coro_or_task
File "/usr/src/homeassistant/homeassistant/core.py", line 1824, in _execute_service
await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 213, in handle_service
await service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 681, in entity_service_call
future.result() # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 968, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 721, in _handle_entity_call
await result
File "/usr/src/homeassistant/homeassistant/components/light/__init__.py", line 582, in async_handle_light_off_service
await light.async_turn_off(**filter_turn_off_params(light, params))
File "/usr/src/homeassistant/homeassistant/components/zwave_js/light.py", line 293, in async_turn_off
await self._async_set_brightness(0, kwargs.get(ATTR_TRANSITION))
File "/usr/src/homeassistant/homeassistant/components/zwave_js/light.py", line 350, in _async_set_brightness
await self.info.node.async_set_value(
File "/usr/local/lib/python3.10/site-packages/zwave_js_server/model/node/__init__.py", line 473, in async_set_value
result = await self.async_send_command(
File "/usr/local/lib/python3.10/site-packages/zwave_js_server/model/node/__init__.py", line 430, in async_send_command
result = await self.client.async_send_command(message, **kwargs)
File "/usr/local/lib/python3.10/site-packages/zwave_js_server/client.py", line 116, in async_send_command
return await future
zwave_js_server.exceptions.FailedZWaveCommand: Z-Wave error 200: Timeout while waiting for an ACK from the controller (ZW0200)
2023-02-02 22:05:39.524 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Front Porch Front Door Light' (71_4_0)
2023-02-02 22:05:49.527 WARNING (MainThread) [upb_lib.upb] Timeout communicating with UPB device 'Master Bedroom BlueMaster' (71_7_0)
2023-02-02 22:05:52.301 WARNING (MainThread) [bluetooth_auto_recovery.recover] Bluetooth adapter hci0 [DC:A6:32:AA:48:97] could not be reset due to timeout
2023-02-02 22:05:52.687 WARNING (MainThread) [upb_lib.upb] PIM at serial:///dev/ttyUSB0 disconnected
You should search for how to specify the USB zigbee stick by “serial id” rather than just specifying the the device (dev/tty…) as that can change.
Your backups may be working but the USB device may still be different than what is defined in the backup.
OK. Now I see that both z-wave and UPB are configured to the same USB0 device. searching for “serial id” with quotes does not bring up a direct guide on how to find and change to serial id.
Can you point me in the right direction? How do I change the PIM serial address for UPB? This setting is not part of the UI. For Z-wave I can select from a list. However, how do I set it to the serial id?
In the zwave configuration I can see that it is connected to the zwave stick. Hopefully the problem is that the UPB is configured to the same port.
If this problem is so common is there a plan to make this more user friendly? Specifically making device selection easy for integrations and making that device stick.
as Tom said:
f.e. my conbee for zigbee2mqtt:
instead of
port: /dev/ttyACM0
use
port: /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE2496787-if00
I am new to HA. What file do I edit? Where can I change this? I can see the serial id for all the devices under settings\hardware\show all hardware. And I can copy\paste this for the zwave device because that Add-on has a place to do that in the UI. But I do not see how to make this change for both UPB or rfxcom device because those integrations do not provide a way to configure after installing.
Also, somehow this update messed up my bluetooth integration too as that now cannot communicate with the bluetooth built into the rpi.
Is it common for non-beta updates to cause this much havoc?
Correct
maybe in the 3 dots in Devices & Services, but not sure, i don’t have them.
Yes and no. always read the update notes, in specific the breaking changes.
3 years ago it happened frequent, but it’s getting less and less.
Just make sure you have an backup (and download it from the device) before any update
For the UPB integration, you specify the port in the popup form that appears during initial configuration. You’re right that you can’t modify it afterwards. However it only takes a minute to remove your existing UPB integration and re-install it.
Yes, it would only take a few minutes to do that. But many more minutes to re-organize all of the UPB devices, and fix the automations that will break once I delete the devices. I hope it does not create more problems.
There is not a place to edit this setting? Where is the setting saved to? Obviously not configuration.yaml.
Every time an update is applied a backup is made. I had incorrectly assumed that that would allow me to get back to a working system if an update did what I am experiencing.
Are you talking about some other type of backup?
I’ve re-installed the UPB integration without the complications you’ve predicted.
The settings for all integrations installed via the Settings > Devices & Services > Integrations menu are stored in JSON format within the hidden .storage
directory. Unlike the YAML-based configuration.yaml
file, they’re not meant to be manually modified.
Do I remove the UPB integration and then add it, or do I just add it again?
Remove it first then re-add it.
Usually it would allow you to get back to a working system. The problem in this case is that it is the host machine settings that have changed. Backups only backup the software settings, like your core configuration, addons and the recorder database. It does not back up the Linux operating system running on the host machine. The assumption is that this can be replaced with a fresh install that you then restore the backup to.
However if running a VM install, a VM snapshot captures everything, including the host OS.
So just to reiterate, if I had used the serial id for my usb devices instead of the default usb path this problem would not have happened. Also the partial backups would work for most things that are related to the actual code being updated at the time the auto backups are initiated.
Does a manual full backup backup more than a core backup?
Is it possible to change device path selection to be device id instead of the way it is currently? This might be a good feature request?
Correct.
Yes it contains addons too.
Sure go for it.