diff --git a/addons/hw_drivers/controllers/driver.py b/addons/hw_drivers/controllers/driver.py index 0304f02a750..7d2896802d1 100755 --- a/addons/hw_drivers/controllers/driver.py +++ b/addons/hw_drivers/controllers/driver.py @@ -342,15 +342,17 @@ class Manager(Thread): x_screen = 0 for match in finditer('Display Number (\d), type HDMI (\d)', displays): display_id, hdmi_id = match.groups() - display_name = subprocess.check_output(['tvservice', '-nv', display_id]).decode().rstrip().split('=')[1] - display_identifier = sub('[^a-zA-Z0-9 ]+', '', display_name).replace(' ', '_') + "_" + str(hdmi_id) - iot_device = IoTDevice({ - 'identifier': display_identifier, - 'name': display_name, - 'x_screen': str(x_screen), - }, 'display') - display_devices[display_identifier] = iot_device - x_screen += 1 + tvservice_output = subprocess.check_output(['tvservice', '-nv', display_id]).decode().rstrip() + if tvservice_output: + display_name = tvservice_output.split('=')[1] + display_identifier = sub('[^a-zA-Z0-9 ]+', '', display_name).replace(' ', '_') + "_" + str(hdmi_id) + iot_device = IoTDevice({ + 'identifier': display_identifier, + 'name': display_name, + 'x_screen': str(x_screen), + }, 'display') + display_devices[display_identifier] = iot_device + x_screen += 1 if not len(display_devices): # No display connected, create "fake" device to be accessed from another computer