diff --git a/hassio/misc/hardware.py b/hassio/misc/hardware.py index 4748d4a1a..eb79708e4 100644 --- a/hassio/misc/hardware.py +++ b/hassio/misc/hardware.py @@ -36,17 +36,14 @@ class Hardware: """Return all serial and connected devices.""" dev_list = set() for device in self.context.list_devices(subsystem="tty"): - if "ID_VENDOR" in device or RE_TTY.search(device.device_node): + if "ID_VENDOR" in device.properties or RE_TTY.search(device.device_node): dev_list.add(device.device_node) # Add /dev/serial/by-id devlink for current device - if "DEVLINKS" in device and device["DEVLINKS"]: - devlinks = [ - symlink - for symlink in device["DEVLINKS"].split(" ") - if symlink.startswith("/dev/serial/by-id") - ] - dev_list.update(devlinks) + for dev_link in device.device_links: + if not dev_link.startswith("/dev/serial/by-id"): + continue + dev_list.add(dev_link) return dev_list @@ -55,8 +52,8 @@ class Hardware: """Return all input devices.""" dev_list = set() for device in self.context.list_devices(subsystem="input"): - if "NAME" in device: - dev_list.add(device["NAME"].replace('"', "")) + if "NAME" in device.properties: + dev_list.add(device.properties["NAME"].replace('"', "")) return dev_list @@ -65,7 +62,7 @@ class Hardware: """Return all disk devices.""" dev_list = set() for device in self.context.list_devices(subsystem="block"): - if device.device_node.startswith("/dev/sd"): + if "ID_NAME" in device.properties: dev_list.add(device.device_node) return dev_list