diff --git a/supervisor/hardware/manager.py b/supervisor/hardware/manager.py index 30dc44b6f8b..6c154d45e3d 100644 --- a/supervisor/hardware/manager.py +++ b/supervisor/hardware/manager.py @@ -103,7 +103,13 @@ def _import_devices(self) -> None: # Exctract all devices for device in self._udev.list_devices(): # Skip devices without mapping - if not device.device_node or self.helper.hide_virtual_device(device): + try: + if not device.device_node or self.helper.hide_virtual_device(device): + continue + except UnicodeDecodeError as err: + # Some udev properties have an unkown/different encoding. This is a general + # problem with pyudev, see https://github.com/pyudev/pyudev/pull/230 + _LOGGER.warning("Ignoring udev device due to error: %s", err) continue self._devices[device.sys_name] = Device.import_udev(device)