[Solved] Conbee 2 fails to connect to ZHA (HA in Unraid VM)

Hello all,

I am running Home Assistant in a VM using unraid. While it seems that I can pass the Conbee2 stick to Hass, ZHA cannot initalize with error: Failed to probe the usb device

This is all very frustrating because it worked for a long time.

I have seen threads like this: Passthrough of ConBee II Zigbee USB Gateway to Home Assistant Virtual Machine - Page 2 - VM Engine (KVM) - Unraid. Where you can change the config of your VM, but I dont think I am having this issue, as Hass can see the device.

Any insight on this would be fantastic. Thanks for reading.

Details:

Home Assistant Core 2022.6.6
Home Assistant Supervisor 2022.05.3
Home Assistant OS 8.2
Conbee2 stick FW: 26780700

Click these for more detail:

Relevant Home Assistant Logs
2022-06-15 11:25:38 DEBUG (MainThread) [zigpy.appdb] SQLite version for <module 'sqlite3' from '/usr/local/lib/python3.9/sqlite3/__init__.py'>: 3.34.1

2022-06-15 11:28:03 DEBUG (MainThread) [zigpy_znp.zigbee.application] Probing /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00

2022-06-15 11:28:03 DEBUG (MainThread) [zigpy_znp.uart] Connecting to /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 at 115200 baud

2022-06-15 11:28:03 DEBUG (MainThread) [zigpy_znp.uart] Opened /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 serial port

2022-06-15 11:28:03 DEBUG (MainThread) [zigpy_znp.uart] Connected to /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 at 115200 baud

2022-06-15 11:28:03 DEBUG (MainThread) [zigpy_znp.api] Toggling RTS/DTR pins to skip bootloader or reset chip

2022-06-15 11:28:03 DEBUG (MainThread) [zigpy_znp.uart] Setting serial pin states: DTR=False, RTS=False

2022-06-15 11:28:13 DEBUG (MainThread) [zigpy_znp.api] Connection to /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 failed, cleaning up

2022-06-15 11:28:13 DEBUG (MainThread) [zigpy_znp.uart] Closing serial port

2022-06-15 11:28:13 DEBUG (MainThread) [zigpy_znp.zigbee.application] Failed to probe ZNP radio with config {'path': '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00', 'baudrate': 115200, 'flow_control': None}

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_znp/api.py", line 530, in _skip_bootloader

    result = await responses.get()

  File "/usr/local/lib/python3.9/asyncio/queues.py", line 166, in get

    await getter

asyncio.exceptions.CancelledError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_znp/zigbee/application.py", line 116, in probe

    await znp.connect()

  File "/usr/local/lib/python3.9/site-packages/zigpy_znp/api.py", line 572, in connect

    self.capabilities = (await self._skip_bootloader()).Capabilities

  File "/usr/local/lib/python3.9/site-packages/zigpy_znp/api.py", line 530, in _skip_bootloader

    result = await responses.get()

  File "/usr/local/lib/python3.9/site-packages/async_timeout/__init__.py", line 129, in __aexit__

    self._do_exit(exc_type)

  File "/usr/local/lib/python3.9/site-packages/async_timeout/__init__.py", line 212, in _do_exit

    raise asyncio.TimeoutError

asyncio.exceptions.TimeoutError

2022-06-15 11:28:13 DEBUG (MainThread) [bellows.ezsp] Resetting EZSP

2022-06-15 11:28:16 DEBUG (MainThread) [bellows.ezsp] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 75, in _probe

    await self.reset()

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 98, in reset

    await self._gw.reset()

asyncio.exceptions.CancelledError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 490, in wait_for

    return fut.result()

asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 59, in probe

    await asyncio.wait_for(ezsp._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for

    raise exceptions.TimeoutError() from exc

asyncio.exceptions.TimeoutError

2022-06-15 11:28:16 DEBUG (MainThread) [bellows.ezsp] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/serial/serialposix.py", line 322, in open

    self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK)

OSError: [Errno 5] I/O error: '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 59, in probe

    await asyncio.wait_for(ezsp._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 479, in wait_for

    return fut.result()

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 74, in _probe

    await self.connect()

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 92, in connect

    self._gw = await bellows.uart.connect(self._config, self)

  File "/usr/local/lib/python3.9/site-packages/bellows/uart.py", line 363, in connect

    protocol, connection_done = await thread.run_coroutine_threadsafe(

  File "/usr/local/lib/python3.9/site-packages/bellows/uart.py", line 340, in _connect

    transport, protocol = await serial_asyncio.create_serial_connection(

  File "/usr/local/lib/python3.9/site-packages/serial_asyncio/__init__.py", line 448, in create_serial_connection

    serial_instance = serial.serial_for_url(*args, **kwargs)

  File "/usr/local/lib/python3.9/site-packages/serial/__init__.py", line 90, in serial_for_url

    instance.open()

  File "/usr/local/lib/python3.9/site-packages/serial/serialposix.py", line 325, in open

    raise SerialException(msg.errno, "could not open port {}: {}".format(self._port, msg))

serial.serialutil.SerialException: [Errno 5] could not open port /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00: [Errno 5] I/O error: '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00'

2022-06-15 11:28:16 DEBUG (MainThread) [zigpy_deconz.api] Command Command.device_state (0, 0, 0)

2022-06-15 11:28:18 WARNING (MainThread) [zigpy_deconz.api] No response to 'Command.device_state' command with seq id '0x02'

2022-06-15 11:28:18 DEBUG (MainThread) [zigpy_deconz.api] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 490, in wait_for

    return fut.result()

asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 400, in probe

    await asyncio.wait_for(api._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 479, in wait_for

    return fut.result()

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 416, in _probe

    await self.device_state()

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 314, in _command

    return await asyncio.wait_for(fut, timeout=COMMAND_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for

    raise exceptions.TimeoutError() from exc

asyncio.exceptions.TimeoutError

2022-06-15 11:28:18 DEBUG (MainThread) [zigpy_zigate.api] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/serial/serialposix.py", line 322, in open

    self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK)

OSError: [Errno 5] I/O error: '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_zigate/api.py", line 258, in probe

    await asyncio.wait_for(api._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 479, in wait_for

    return fut.result()

  File "/usr/local/lib/python3.9/site-packages/zigpy_zigate/api.py", line 283, in _probe

    await self.connect()

  File "/usr/local/lib/python3.9/site-packages/zigpy_zigate/api.py", line 101, in connect

    self._uart = await zigpy_zigate.uart.connect(self._config, self)

  File "/usr/local/lib/python3.9/site-packages/zigpy_zigate/uart.py", line 153, in connect

    _, protocol = await serial_asyncio.create_serial_connection(

  File "/usr/local/lib/python3.9/site-packages/serial_asyncio/__init__.py", line 448, in create_serial_connection

    serial_instance = serial.serial_for_url(*args, **kwargs)

  File "/usr/local/lib/python3.9/site-packages/serial/__init__.py", line 90, in serial_for_url

    instance.open()

  File "/usr/local/lib/python3.9/site-packages/serial/serialposix.py", line 325, in open

    raise SerialException(msg.errno, "could not open port {}: {}".format(self._port, msg))

serial.serialutil.SerialException: [Errno 5] could not open port /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00: [Errno 5] I/O error: '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00'

2022-06-15 11:28:18 DEBUG (MainThread) [zigpy_xbee.api] at command: AP (2,)

2022-06-15 11:28:18 DEBUG (MainThread) [zigpy_xbee.api] Command at (b'AP', b'\x02')

2022-06-15 11:28:19 WARNING (MainThread) [zigpy_xbee.api] at: No response to AP command

2022-06-15 11:28:22 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:22 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 57600bps, trying 1200 next

2022-06-15 11:28:26 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:26 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 1200bps, trying 2400 next

2022-06-15 11:28:29 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:29 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 2400bps, trying 4800 next

2022-06-15 11:28:32 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:32 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 4800bps, trying 9600 next

2022-06-15 11:28:35 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:35 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 9600bps, trying 19200 next

2022-06-15 11:28:38 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:38 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 19200bps, trying 38400 next

2022-06-15 11:28:42 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:42 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 38400bps, trying 57600 next

2022-06-15 11:28:45 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:45 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 57600bps, trying 115200 next

2022-06-15 11:28:48 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:48 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 115200bps, trying 230400 next

2022-06-15 11:28:51 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:28:51 DEBUG (MainThread) [zigpy_xbee.api] Couldn't enter AT command mode at any known baudrate.Configure XBee manually for escaped API mode ATAP2

2022-06-15 11:28:51 DEBUG (MainThread) [zigpy_xbee.api] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 490, in wait_for

    return fut.result()

asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_xbee/api.py", line 597, in _probe

    await self._at_command("AP", 2)

  File "/usr/local/lib/python3.9/site-packages/zigpy_xbee/api.py", line 385, in _at_partial

    return await asyncio.wait_for(

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for

    raise exceptions.TimeoutError() from exc

asyncio.exceptions.TimeoutError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_xbee/api.py", line 579, in probe

    await asyncio.wait_for(api._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 479, in wait_for

    return fut.result()

  File "/usr/local/lib/python3.9/site-packages/zigpy_xbee/api.py", line 600, in _probe

    raise APIException("Failed to configure XBee for API mode")

zigpy.exceptions.APIException: Failed to configure XBee for API mode

2022-06-15 11:29:40 DEBUG (MainThread) [zigpy_deconz.api] Command Command.device_state (0, 0, 0)

2022-06-15 11:29:42 WARNING (MainThread) [zigpy_deconz.api] No response to 'Command.device_state' command with seq id '0x02'

2022-06-15 11:29:42 DEBUG (MainThread) [zigpy_deconz.api] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 490, in wait_for

    return fut.result()

asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 400, in probe

    await asyncio.wait_for(api._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 479, in wait_for

    return fut.result()

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 416, in _probe

    await self.device_state()

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 314, in _command

    return await asyncio.wait_for(fut, timeout=COMMAND_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for

    raise exceptions.TimeoutError() from exc

asyncio.exceptions.TimeoutError

2022-06-15 11:30:41 DEBUG (MainThread) [zigpy_znp.zigbee.application] Probing /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00

2022-06-15 11:30:41 DEBUG (MainThread) [zigpy_znp.uart] Connecting to /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 at 115200 baud

2022-06-15 11:30:41 DEBUG (MainThread) [zigpy_znp.uart] Opened /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 serial port

2022-06-15 11:30:41 DEBUG (MainThread) [zigpy_znp.uart] Connected to /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 at 115200 baud

2022-06-15 11:30:41 DEBUG (MainThread) [zigpy_znp.api] Toggling RTS/DTR pins to skip bootloader or reset chip

2022-06-15 11:30:41 DEBUG (MainThread) [zigpy_znp.uart] Setting serial pin states: DTR=False, RTS=False

2022-06-15 11:30:43 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.waze_lab_to_home is taking over 10 seconds

2022-06-15 11:30:47 INFO (SyncWorker_10) [WazeRouteCalculator.WazeRouteCalculator] Min  Max

33.93   50.40 minutes

29.54   36.22 km

2022-06-15 11:30:49 INFO (MainThread) [homeassistant.components.automation.failsafe_energy_plugs] Failsafe Energy Plugs: Running automation actions

2022-06-15 11:30:49 INFO (MainThread) [homeassistant.components.automation.failsafe_energy_plugs] Failsafe Energy Plugs: Choose at step 1: choice 5: Running automation actions

2022-06-15 11:30:49 INFO (MainThread) [homeassistant.components.automation.failsafe_energy_plugs] Failsafe Energy Plugs: Choose at step 1: choice 5: Executing step call service

2022-06-15 11:30:51 DEBUG (MainThread) [zigpy_znp.api] Connection to /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 failed, cleaning up

2022-06-15 11:30:51 DEBUG (MainThread) [zigpy_znp.uart] Closing serial port

2022-06-15 11:30:51 DEBUG (MainThread) [zigpy_znp.zigbee.application] Failed to probe ZNP radio with config {'path': '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00', 'baudrate': 115200, 'flow_control': None}

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_znp/api.py", line 530, in _skip_bootloader

    result = await responses.get()

  File "/usr/local/lib/python3.9/asyncio/queues.py", line 166, in get

    await getter

asyncio.exceptions.CancelledError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_znp/zigbee/application.py", line 116, in probe

    await znp.connect()

  File "/usr/local/lib/python3.9/site-packages/zigpy_znp/api.py", line 572, in connect

    self.capabilities = (await self._skip_bootloader()).Capabilities

  File "/usr/local/lib/python3.9/site-packages/zigpy_znp/api.py", line 530, in _skip_bootloader

    result = await responses.get()

  File "/usr/local/lib/python3.9/site-packages/async_timeout/__init__.py", line 129, in __aexit__

    self._do_exit(exc_type)

  File "/usr/local/lib/python3.9/site-packages/async_timeout/__init__.py", line 212, in _do_exit

    raise asyncio.TimeoutError

asyncio.exceptions.TimeoutError

2022-06-15 11:30:51 DEBUG (MainThread) [bellows.ezsp] Resetting EZSP

2022-06-15 11:30:54 DEBUG (MainThread) [bellows.ezsp] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 75, in _probe

    await self.reset()

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 98, in reset

    await self._gw.reset()

asyncio.exceptions.CancelledError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 490, in wait_for

    return fut.result()

asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 59, in probe

    await asyncio.wait_for(ezsp._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for

    raise exceptions.TimeoutError() from exc

asyncio.exceptions.TimeoutError

2022-06-15 11:30:54 DEBUG (MainThread) [bellows.ezsp] Resetting EZSP

2022-06-15 11:30:57 DEBUG (MainThread) [bellows.ezsp] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 75, in _probe

    await self.reset()

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 98, in reset

    await self._gw.reset()

asyncio.exceptions.CancelledError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 490, in wait_for

    return fut.result()

asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/bellows/ezsp/__init__.py", line 59, in probe

    await asyncio.wait_for(ezsp._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for

    raise exceptions.TimeoutError() from exc

asyncio.exceptions.TimeoutError

2022-06-15 11:30:57 DEBUG (MainThread) [zigpy_deconz.api] Command Command.device_state (0, 0, 0)

2022-06-15 11:30:59 WARNING (MainThread) [zigpy_deconz.api] No response to 'Command.device_state' command with seq id '0x02'

2022-06-15 11:30:59 DEBUG (MainThread) [zigpy_deconz.api] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 490, in wait_for

    return fut.result()

asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 400, in probe

    await asyncio.wait_for(api._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 479, in wait_for

    return fut.result()

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 416, in _probe

    await self.device_state()

  File "/usr/local/lib/python3.9/site-packages/zigpy_deconz/api.py", line 314, in _command

    return await asyncio.wait_for(fut, timeout=COMMAND_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for

    raise exceptions.TimeoutError() from exc

asyncio.exceptions.TimeoutError

2022-06-15 11:30:59 DEBUG (MainThread) [zigpy_zigate.api] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/serial/serialposix.py", line 322, in open

    self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK)

OSError: [Errno 5] I/O error: '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_zigate/api.py", line 258, in probe

    await asyncio.wait_for(api._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 479, in wait_for

    return fut.result()

  File "/usr/local/lib/python3.9/site-packages/zigpy_zigate/api.py", line 283, in _probe

    await self.connect()

  File "/usr/local/lib/python3.9/site-packages/zigpy_zigate/api.py", line 101, in connect

    self._uart = await zigpy_zigate.uart.connect(self._config, self)

  File "/usr/local/lib/python3.9/site-packages/zigpy_zigate/uart.py", line 153, in connect

    _, protocol = await serial_asyncio.create_serial_connection(

  File "/usr/local/lib/python3.9/site-packages/serial_asyncio/__init__.py", line 448, in create_serial_connection

    serial_instance = serial.serial_for_url(*args, **kwargs)

  File "/usr/local/lib/python3.9/site-packages/serial/__init__.py", line 90, in serial_for_url

    instance.open()

  File "/usr/local/lib/python3.9/site-packages/serial/serialposix.py", line 325, in open

    raise SerialException(msg.errno, "could not open port {}: {}".format(self._port, msg))

serial.serialutil.SerialException: [Errno 5] could not open port /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00: [Errno 5] I/O error: '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00'

2022-06-15 11:30:59 DEBUG (MainThread) [zigpy_xbee.api] at command: AP (2,)

2022-06-15 11:30:59 DEBUG (MainThread) [zigpy_xbee.api] Command at (b'AP', b'\x02')

2022-06-15 11:31:00 WARNING (MainThread) [zigpy_xbee.api] at: No response to AP command

2022-06-15 11:31:03 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:03 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 57600bps, trying 1200 next

2022-06-15 11:31:07 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:07 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 1200bps, trying 2400 next

2022-06-15 11:31:10 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:10 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 2400bps, trying 4800 next

2022-06-15 11:31:13 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:13 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 4800bps, trying 9600 next

2022-06-15 11:31:16 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:16 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 9600bps, trying 19200 next

2022-06-15 11:31:19 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:19 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 19200bps, trying 38400 next

2022-06-15 11:31:23 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:23 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 38400bps, trying 57600 next

2022-06-15 11:31:26 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:26 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 57600bps, trying 115200 next

2022-06-15 11:31:29 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:29 DEBUG (MainThread) [zigpy_xbee.api] Failed to enter AT command mode at 115200bps, trying 230400 next

2022-06-15 11:31:32 DEBUG (MainThread) [zigpy_xbee.api] Command mode no response to AT '+++' command

2022-06-15 11:31:32 DEBUG (MainThread) [zigpy_xbee.api] Couldn't enter AT command mode at any known baudrate.Configure XBee manually for escaped API mode ATAP2

2022-06-15 11:31:32 DEBUG (MainThread) [zigpy_xbee.api] Unsuccessful radio probe of '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00' port

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 490, in wait_for

    return fut.result()

asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_xbee/api.py", line 597, in _probe

    await self._at_command("AP", 2)

  File "/usr/local/lib/python3.9/site-packages/zigpy_xbee/api.py", line 385, in _at_partial

    return await asyncio.wait_for(

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for

    raise exceptions.TimeoutError() from exc

asyncio.exceptions.TimeoutError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/site-packages/zigpy_xbee/api.py", line 579, in probe

    await asyncio.wait_for(api._probe(), timeout=PROBE_TIMEOUT)

  File "/usr/local/lib/python3.9/asyncio/tasks.py", line 479, in wait_for

    return fut.result()

  File "/usr/local/lib/python3.9/site-packages/zigpy_xbee/api.py", line 600, in _probe

    raise APIException("Failed to configure XBee for API mode")

zigpy.exceptions.APIException: Failed to configure XBee for API mode
Hardware Detected by Home Assistant. (I removed the serial #)

Subsystem:tty

Device path:/dev/ttyACM0

ID:/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00

Attributes:

DEVLINKS: >- /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00 /dev/serial/by-path/pci-0000:00:07.0-usb-0:2:1.0 DEVNAME: /dev/ttyACM0 DEVPATH: /devices/pci0000:00/0000:00:07.0/usb2/2-2/2-2:1.0/tty/ttyACM0 ID_BUS: usb ID_MODEL: ConBee_II ID_MODEL_ENC: ConBee\x20II ID_MODEL_ID: ‘0030’ ID_PATH: pci-0000:00:07.0-usb-0:2:1.0 ID_PATH_TAG: pci-0000_00_07_0-usb-0_2_1_0 ID_REVISION: ‘0100’ ID_SERIAL: dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE ID_SERIAL_SHORT: DE ID_TYPE: generic ID_USB_DRIVER: cdc_acm ID_USB_INTERFACES: ‘:020201:0a0000:’ ID_USB_INTERFACE_NUM: ‘00’ ID_VENDOR: dresden_elektronik_ingenieurtechnik_GmbH ID_VENDOR_ENC: dresden\x20elektronik\x20ingenieurtechnik\x20GmbH ID_VENDOR_ID: 1cf1 MAJOR: ‘166’ MINOR: ‘0’ SUBSYSTEM: tty TAGS: ‘:systemd:’ USEC_INITIALIZED: ‘1366477’

Edit Nov 2024:
I ended up switching from running Home Assistant as a VM on Unraid to buying a dedicated NUC PC for Home assistant and Zigbee2MQTT, running on proxmox. I believe I used this guide: Easy Way To Install Home Assistant on Proxmox 8 - SmartHomeScene.

I recommend disconnecting your Home Assistant instance from your unraid server. I had often found myself restarting my unraid server and wishing I could keep Home Assistant running all that time. The unnecessary restarts would mess with automations or sensors.

3 Likes

Extra info that didn’t fit in the original post:

Unraid (Version: 6.10.3) VM Config
<?xml version='1.0' encoding='UTF-8'?>

<domain type='kvm' id='10'>

  <name>Home Assistant v2</name>

  <uuid>58fc4601-ab12-d110-1e09-4e784dd59c48</uuid>

  <metadata>

    <vmtemplate xmlns="unraid" name="Linux" icon="linux.png" os="linux"/>

  </metadata>

  <memory unit='KiB'>4194304</memory>

  <currentMemory unit='KiB'>3145728</currentMemory>

  <memoryBacking>

    <nosharepages/>

  </memoryBacking>

  <vcpu placement='static'>4</vcpu>

  <cputune>

    <vcpupin vcpu='0' cpuset='2'/>

    <vcpupin vcpu='1' cpuset='8'/>

    <vcpupin vcpu='2' cpuset='5'/>

    <vcpupin vcpu='3' cpuset='11'/>

  </cputune>

  <resource>

    <partition>/machine</partition>

  </resource>

  <os>

    <type arch='x86_64' machine='pc-q35-6.2'>hvm</type>

    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>

    <nvram>/etc/libvirt/qemu/nvram/58fc4601-ab12-d110-1e09-4e784dd59c48_VARS-pure-efi.fd</nvram>

  </os>

  <features>

    <acpi/>

    <apic/>

  </features>

  <cpu mode='host-passthrough' check='none' migratable='on'>

    <topology sockets='1' dies='1' cores='2' threads='2'/>

    <cache mode='passthrough'/>

  </cpu>

  <clock offset='utc'>

    <timer name='rtc' tickpolicy='catchup'/>

    <timer name='pit' tickpolicy='delay'/>

    <timer name='hpet' present='no'/>

  </clock>

  <on_poweroff>destroy</on_poweroff>

  <on_reboot>restart</on_reboot>

  <on_crash>restart</on_crash>

  <devices>

    <emulator>/usr/local/sbin/qemu</emulator>

    <disk type='file' device='disk'>

      <driver name='qemu' type='qcow2' cache='writeback'/>

      <source file='/mnt/user/domains/hassos_ova-4.10.qcow2' index='1'/>

      <backingStore/>

      <target dev='hdc' bus='sata'/>

      <boot order='1'/>

      <alias name='sata0-0-2'/>

      <address type='drive' controller='0' bus='0' target='0' unit='2'/>

    </disk>

    <controller type='pci' index='0' model='pcie-root'>

      <alias name='pcie.0'/>

    </controller>

    <controller type='pci' index='1' model='pcie-root-port'>

      <model name='pcie-root-port'/>

      <target chassis='1' port='0x10'/>

      <alias name='pci.1'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>

    </controller>

    <controller type='pci' index='2' model='pcie-root-port'>

      <model name='pcie-root-port'/>

      <target chassis='2' port='0x11'/>

      <alias name='pci.2'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>

    </controller>

    <controller type='pci' index='3' model='pcie-root-port'>

      <model name='pcie-root-port'/>

      <target chassis='3' port='0x12'/>

      <alias name='pci.3'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>

    </controller>

    <controller type='pci' index='4' model='pcie-root-port'>

      <model name='pcie-root-port'/>

      <target chassis='4' port='0x13'/>

      <alias name='pci.4'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>

    </controller>

    <controller type='virtio-serial' index='0'>

      <alias name='virtio-serial0'/>

      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>

    </controller>

    <controller type='sata' index='0'>

      <alias name='ide'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>

    </controller>

    <controller type='usb' index='0' model='ich9-ehci1'>

      <alias name='usb'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>

    </controller>

    <controller type='usb' index='0' model='ich9-uhci1'>

      <alias name='usb'/>

      <master startport='0'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>

    </controller>

    <controller type='usb' index='0' model='ich9-uhci2'>

      <alias name='usb'/>

      <master startport='2'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>

    </controller>

    <controller type='usb' index='0' model='ich9-uhci3'>

      <alias name='usb'/>

      <master startport='4'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>

    </controller>

    <interface type='bridge'>

      <mac address='52:54:00:5f:b5:b2'/>

      <source bridge='br0'/>

      <target dev='vnet9'/>

      <model type='virtio'/>

      <alias name='net0'/>

      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>

    </interface>

    <serial type='pty'>

      <source path='/dev/pts/2'/>

      <target type='isa-serial' port='0'>

        <model name='isa-serial'/>

      </target>

      <alias name='serial0'/>

    </serial>

    <console type='pty' tty='/dev/pts/2'>

      <source path='/dev/pts/2'/>

      <target type='serial' port='0'/>

      <alias name='serial0'/>

    </console>

    <channel type='unix'>

      <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-10-Home Assistant v2/org.qemu.guest_agent.0'/>

      <target type='virtio' name='org.qemu.guest_agent.0' state='connected'/>

      <alias name='channel0'/>

      <address type='virtio-serial' controller='0' bus='0' port='1'/>

    </channel>

    <input type='tablet' bus='usb'>

      <alias name='input0'/>

      <address type='usb' bus='0' port='1'/>

    </input>

    <input type='mouse' bus='ps2'>

      <alias name='input1'/>

    </input>

    <input type='keyboard' bus='ps2'>

      <alias name='input2'/>

    </input>

    <graphics type='vnc' port='5901' autoport='yes' websocket='5701' listen='0.0.0.0' keymap='en-us'>

      <listen type='address' address='0.0.0.0'/>

    </graphics>

    <audio id='1' type='none'/>

    <video>

      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>

      <alias name='video0'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>

    </video>

    <hostdev mode='subsystem' type='usb' managed='no'>

      <source>

        <vendor id='0x1cf1'/>

        <product id='0x0030'/>

        <address bus='1' device='28'/>

      </source>

      <alias name='hostdev0'/>

      <address type='usb' bus='0' port='2'/>

    </hostdev>

    <memballoon model='virtio'>

      <alias name='balloon0'/>

      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>

    </memballoon>

  </devices>

  <seclabel type='dynamic' model='dac' relabel='yes'>

    <label>+0:+100</label>

    <imagelabel>+0:+100</imagelabel>

  </seclabel>

</domain>

Edit: 6/15/2022
Paddle on discord says:

 `OSError: [Errno 5] I/O error: '/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE-if00'`


There's an issue with your USB passthrough, the serial port isn't functional

It may have a USB descriptor but if software can't open the serial port and talk to it, it's likely a problem with your Unraid configuration

FINAL EDIT: My Solution.

The issue was how I was passing the USB through unraid to Hass.
Here’s what worked for me:

  1. Turn off your Hass Host in Hardware (Shutdown Host).
  2. Go into your VM Settings, ensure Hass is off. Edit the VM and if you have the Conbee stick selected, deselect it. Hit Apply.
  3. Go to this post: Passthrough of ConBee II Zigbee USB Gateway to Home Assistant Virtual Machine - Page 2 - VM Engine (KVM) - Unraid
    They recommend that you insert this code into your VM Config:
    <serial type='dev'>
      <source path='/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_3DE24#####'/>
      <target type='usb-serial' port='1'>
        <model name='usb-serial'/>
      </target>
      <alias name='serial0'/>
      <address type='usb' bus='0' port='4'/>
    </serial>
  1. Go back in to edit your VM. Switch to Advanced in the top right. Scroll until you find </interface>. Create a new line, and paste the code above.

  2. We need to find your source path to enter above. Open an unraid command prompt and enter

cd /dev/serial/by-id/.

Then enter

ls

If your Conbee2 USB is connected, you should get an entry:

usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE######-if00@

Select this to copy it, and paste that in your <source path='/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_3DE24#####'/>

  1. Next we should doublecheck the port in target. Navigate to your UnraidIP/Tools/SysDevs and look under USB devices. If your conbee stick is listed as Port 1–X, then I think in <target type='usb-serial' port='1'> your port is 1, and you can leave it as is.
    The <address type='usb' bus='0' port='4'/> Does not need to be changed as this is configuring what Hass will see the port as.

  2. Save/Apply and restart the Hass VM.

  3. Open your Home assistant and got to /config/hardware. Click the 3 dots, click “all Hardware” and look for your USB. For me, it no longer shows up as my Conbee… instead, it shows up as:

/dev/serial/by-id/usb-QEMU_QEMU_USB_SERIAL_1-0000:00:07.7-4-if00-port0

  1. Now you can go to your Integrations and set up ZHA. This worked for me and i got my network back. Albeit, I had to re-rename everything. Which was a pain.

Let me know if this helped you.

Some Extra Notes:

I switched back my VM to q35 v4.2, as per the post I linked. Unsure if that also helped.

When I open the log for my Hass VM, I am getting this error: Domain id=13 is tainted: custom-ga-command. It seems that despite this, everything is working correctly.

My FINAL WORKING Unraid VM config. I took out the serial after DE and replaced it wil #s
<?xml version='1.0' encoding='UTF-8'?>

<domain type='kvm'>

  <name>Home Assistant v2</name>

  <uuid>58fc4601-ab12-d110-1e09-4e784dd59c48</uuid>

  <metadata>

    <vmtemplate xmlns="unraid" name="Linux" icon="linux.png" os="linux"/>

  </metadata>

  <memory unit='KiB'>4194304</memory>

  <currentMemory unit='KiB'>3145728</currentMemory>

  <memoryBacking>

    <nosharepages/>

  </memoryBacking>

  <vcpu placement='static'>4</vcpu>

  <cputune>

    <vcpupin vcpu='0' cpuset='2'/>

    <vcpupin vcpu='1' cpuset='8'/>

    <vcpupin vcpu='2' cpuset='5'/>

    <vcpupin vcpu='3' cpuset='11'/>

  </cputune>

  <os>

    <type arch='x86_64' machine='pc-q35-4.2'>hvm</type>

    <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>

    <nvram>/etc/libvirt/qemu/nvram/58fc4601-ab12-d110-1e09-4e784dd59c48_VARS-pure-efi.fd</nvram>

  </os>

  <features>

    <acpi/>

    <apic/>

  </features>

  <cpu mode='host-passthrough' check='none' migratable='on'>

    <topology sockets='1' dies='1' cores='2' threads='2'/>

    <cache mode='passthrough'/>

  </cpu>

  <clock offset='utc'>

    <timer name='rtc' tickpolicy='catchup'/>

    <timer name='pit' tickpolicy='delay'/>

    <timer name='hpet' present='no'/>

  </clock>

  <on_poweroff>destroy</on_poweroff>

  <on_reboot>restart</on_reboot>

  <on_crash>restart</on_crash>

  <devices>

    <emulator>/usr/local/sbin/qemu</emulator>

    <disk type='file' device='disk'>

      <driver name='qemu' type='qcow2' cache='writeback'/>

      <source file='/mnt/user/domains/hassos_ova-4.10.qcow2'/>

      <target dev='hdc' bus='sata'/>

      <boot order='1'/>

      <address type='drive' controller='0' bus='0' target='0' unit='2'/>

    </disk>

    <controller type='pci' index='0' model='pcie-root'/>

    <controller type='pci' index='1' model='pcie-root-port'>

      <model name='pcie-root-port'/>

      <target chassis='1' port='0x10'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>

    </controller>

    <controller type='pci' index='2' model='pcie-root-port'>

      <model name='pcie-root-port'/>

      <target chassis='2' port='0x11'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>

    </controller>

    <controller type='pci' index='3' model='pcie-root-port'>

      <model name='pcie-root-port'/>

      <target chassis='3' port='0x12'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>

    </controller>

    <controller type='pci' index='4' model='pcie-root-port'>

      <model name='pcie-root-port'/>

      <target chassis='4' port='0x13'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>

    </controller>

    <controller type='virtio-serial' index='0'>

      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>

    </controller>

    <controller type='sata' index='0'>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>

    </controller>

    <controller type='usb' index='0' model='ich9-ehci1'>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>

    </controller>

    <controller type='usb' index='0' model='ich9-uhci1'>

      <master startport='0'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>

    </controller>

    <controller type='usb' index='0' model='ich9-uhci2'>

      <master startport='2'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>

    </controller>

    <controller type='usb' index='0' model='ich9-uhci3'>

      <master startport='4'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>

    </controller>

    <interface type='bridge'>

      <mac address='52:54:00:5f:b5:b2'/>

      <source bridge='br0'/>

      <model type='virtio'/>

      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>

    </interface>

    <serial type='pty'>

      <target type='isa-serial' port='0'>

        <model name='isa-serial'/>

      </target>

    </serial>

    <serial type='dev'>

      <source path='/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE########'/>

      <target type='usb-serial' port='1'>

        <model name='usb-serial'/>

      </target>

      <alias name='serial0'/>

      <address type='usb' bus='0' port='4'/>

    </serial>

    <console type='pty'>

      <target type='serial' port='0'/>

    </console>

    <channel type='unix'>

      <target type='virtio' name='org.qemu.guest_agent.0'/>

      <address type='virtio-serial' controller='0' bus='0' port='1'/>

    </channel>

    <input type='tablet' bus='usb'>

      <address type='usb' bus='0' port='1'/>

    </input>

    <input type='mouse' bus='ps2'/>

    <input type='keyboard' bus='ps2'/>

    <graphics type='vnc' port='-1' autoport='yes' websocket='-1' listen='0.0.0.0' keymap='en-us'>

      <listen type='address' address='0.0.0.0'/>

    </graphics>

    <audio id='1' type='none'/>

    <video>

      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/>

    </video>

    <memballoon model='virtio'>

      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>

    </memballoon>

  </devices>

</domain>
13 Likes

This worked for me, thank you.

1 Like

This also worked for me, as a note, my System Devices in Unraid is “Bus 002 Device 021 Port 2-1.2” and using port “2” worked fine.

1 Like

Got this working with port “2” in the config.

Do we have any idea why this is an issue with Unraid (is it an issue with Unraid)? It wasn’t an issue for me to pass through the device using Proxmox previously.

I tried these solutions. I can see and select it when installing ZHA but it will still fail to connect.

Which value should I put in the xaml based of this:

You Legend, you!
Thank you. I saw your solution and did some further research, where others came up with a similar solution.

My situation was a bit different though as I don’t use Unraid, but rather Ubuntu Server.
I upgraded from Ubuntu 20.04.4 LTS to 22.04 LTS and was met with this problem.
I am using QEMU (Virtual Machine Manager for the GUI-focused people).

Before I was using USB pass-through and it worked like a dream.
I managed to get HA to detect the USB pass-through by removing and re-adding it to a USB3 controller, but HA kept giving me errors such as failed to connect when ever it tried to access the device. Logs stated errors about the device not responding to requests.

After days of struggle and research (as I wanted to stick with the USB pass-through solution if possible) I came across a post that said that others were having this issue due to a bug in libvert > version 6.6, which I suppose is one of the changes from the two LTS versions. Anyway, this is a widespread bug, so, USB pass-through seems like it just won’t work.

Using your example <serial> configuration, I copied your configuration by using virsh edit (vm_name_here) and pasting it under the other default <serial>...</serial>

entry. For those using Virtual Machine Manager, you would be able to copy-paste the <serial>...</serial> XML code in if you enable XML editing in the app preferences and try adding a serial device, then switching to the XML tab. Unfortunately, the GUI doesn’t make it easy to add in a pass-through serial device.
My <source path="..."> was a bit different,

<source path='/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DXXXXXXXX-if00'/>

and I changed the usb port from “4” to “2” as others had. After a reboot of my host, HA now automatically detected the device.

Now, I had a different problem. HA still was expecting the device using the old path, which had now changed to the /dev/serial/by-id/usb-QEMU path. I tried to remove and re-add the integration, but all the entity ids were different. I had to restore to my most recent HA Core backup and then edit via SSH my config/.storage/core.config_entries file.

I replaced the path of the Conbee to the new one:

"data": {
          "radio_type": "deconz",
          "device": {
            "path": "/dev/serial/by-id/usb-QEMU_QEMU_USB_SERIAL_1-0000:00:02.0-2-if00-port0"
          }
        },

I then restarted my host again (overkill maybe, but I wanted to be sure it all worked from scratch). Well, everything did work! All entity IDs remain the same, and all my integrations and automations seem to be working!

So, TLDR:

  1. Update virtual machine config with my specific path, and setting the port of the pass-through USB to 2 (perhaps optional)
  2. Edit HA core.config_entries file with the newly passed through serial device path as confirmed in HA SSH
  3. Reboot everything

Hope my struggles and this post will also help some people using Ubuntu or other QEMU solution.

2 Likes

Had the same issue. I got advice in the forum that if using USB manager plugin (which I do use), you can now change type of passing the device as serial mode.
https://forums.unraid.net/topic/100511-plugin-usb_manager/page/9/#comment-1147207

I changed that for my conbee stick, shut down VM, started it again. Then just changed path for device in Z2M from /dev/serial/by-id/conbeeXYZ to /dev/serial/by-id/qemuXYZ and that was it. All of my zigbee network continued to work.

Upgraded now to 6.10.3 without any issues.

2 Likes

I had this thread up and was looking for a solution for about 2 hours when you posted your comment. This is the most elegant solution so far and has worked for me.

For ZHA, you’ll have to make changes (within the VM terminal) to ~/config/.storage/core.config_entries

@curreta Could you help me out?
What changes do I have to do? - cant find the old HW menu in HA anymore to validate the USB path?

https://community.home-assistant.io/t/unraid-vm-conbee-ii-stick-dev-path-change-configuration-problem/411424/12

Go to Settings > System > Hardware > then to the three dot menu up top > All Hardware

That should show you the full list of everything Hass can see.

@casperse Personally I do not pass port but the device. Enable serial method on device (see screenshots I posted above). After that, shut down the VM and start it again. If you enabled auto-attach, it should attach automatically upon VM start.
Also if you have terminal (in web ui) or ssh to your HA, navigate to /dev/serial/by-id/ and do “ls”. Device should show up. That is the path and device name you need to change in ZHA config

hey, I hope it’s ok if I describe my problem here again, because it’s also about Unraid, Conbee and Zigbee2MQTT.

Unfortunately the solutions don’t work for me. I have rebuilt Home Assistant in Unraid as a VM. I passed the Conbee II stick to the VM via the USB Manager in Unraid as described. Unfortunately Zigbe2MQTT does not start.

I am surprised that ZHA works immediately and without problems. This means that the stick must be present in the Home Assistant?!

Today I also installed the latest firmware on the Conbee II stick. In addition, I have reinstalled Mosquitto broker and Zigbee2MQTT in Home Assistant. ZHA I had always uninstalled.

Attached are a few screenshots with my settings:

Home Assistant Hardware Infos (Settings → System → Hardware)

Zigbee2MQTT Settings in Home Assistant:

And i only get this Messages in the error log from Z2M:

[19:05:53] INFO: Handing over control to Zigbee2MQTT Core ...
Zigbee2MQTT:info  2022-09-23 19:05:55: Logging to console and directory: '/config/zigbee2mqtt/log/2022-09-23.19-05-55' filename: log.txt
Zigbee2MQTT:info  2022-09-23 19:05:55: Starting Zigbee2MQTT version 1.27.2 (commit #unknown)
Zigbee2MQTT:info  2022-09-23 19:05:55: Starting zigbee-herdsman (0.14.53)
Zigbee2MQTT:info  2022-09-23 19:05:55: zigbee-herdsman started (resumed)
Zigbee2MQTT:info  2022-09-23 19:05:55: Coordinator firmware version: '{"meta":{"maintrel":0,"majorrel":38,"minorrel":114,"product":0,"revision":"0x26720700","transportrev":0},"type":"ConBee2/RaspBee2"}'
Zigbee2MQTT:info  2022-09-23 19:05:55: Currently 0 devices are joined:
Zigbee2MQTT:info  2022-09-23 19:05:55: Zigbee: disabling joining new devices.
Zigbee2MQTT:info  2022-09-23 19:05:57: Connecting to MQTT server at mqtt://core-mosquitto
Zigbee2MQTT:error 2022-09-23 19:05:57: MQTT failed to connect: Connection refused: Not authorized
Zigbee2MQTT:error 2022-09-23 19:05:57: Exiting...
Zigbee2MQTT:info  2022-09-23 19:05:57: Stopping zigbee-herdsman...
Zigbee2MQTT:info  2022-09-23 19:05:58: Stopped zigbee-herdsman

Does anyone have an idea and can help me with my problem? I have already tried everything possible?

@Pixelpaule seems like it cannot connect to MQTT. I did not even get there when I had issue with 6.10.3
My mqtt portion of config only has:

base_topic: zigbee2mqtt

I am using mosqito broker as addon inside HA

I’m using ZHA, so I don’t know the details of setting up Z2mqtt, but you definitely need MQTT set up and connected. Did you create a user for Z2MQTT to use? Which guide did you follow to set this up?

Hey, thanks for your reply. I use this guide for setting up zigbee2mqtt, mosquitto broker and HA. How to Install Zigbee2MQTT in Home Assistant - TUTORIAL - NEW VERSION - YouTube

What do your Mqtt logs show?
Your settings?

Hey, this is the mosquitto log:


s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
cont-init: info: running /etc/cont-init.d/mosquitto.sh
[17:28:52] INFO: SSL is not enabled
cont-init: info: /etc/cont-init.d/mosquitto.sh exited 0
cont-init: info: running /etc/cont-init.d/nginx.sh
cont-init: info: /etc/cont-init.d/nginx.sh exited 0
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
services-up: info: copying legacy longrun mosquitto (no readiness notification)
services-up: info: copying legacy longrun nginx (no readiness notification)
s6-rc: info: service legacy-services successfully started
[17:28:52] INFO: Starting NGINX for authentication handling...
[17:28:53] INFO: Starting mosquitto MQTT broker...
2022-09-24 17:28:53: Warning: Mosquitto should not be run as root/administrator.
2022-09-24 17:28:53: mosquitto version 2.0.11 starting
2022-09-24 17:28:53: Config loaded from /etc/mosquitto/mosquitto.conf.
2022-09-24 17:28:53: Loading plugin: /usr/share/mosquitto/go-auth.so
2022-09-24 17:28:53:  ├── Username/password checking enabled.
2022-09-24 17:28:53:  ├── TLS-PSK checking enabled.
2022-09-24 17:28:53:  └── Extended authentication not enabled.
2022-09-24 17:28:53: Opening ipv4 listen socket on port 1883.
2022-09-24 17:28:53: Opening ipv6 listen socket on port 1883.
2022-09-24 17:28:53: Opening websockets listen socket on port 1884.
2022-09-24 17:28:53: mosquitto version 2.0.11 running
2022-09-24 17:28:53: New connection from 172.30.33.3:56134 on port 1883.
error: received null username or password for unpwd check
[17:28:54] INFO: Successfully send discovery information to Home Assistant.
[17:28:54] INFO: Successfully send service information to the Supervisor.
2022-09-24 17:28:53: Client <unknown> disconnected, not authorised.
2022-09-24 17:28:53: New connection from 127.0.0.1:51320 on port 1883.
2022-09-24 17:28:53: Client <unknown> closed its connection.
2022-09-24 17:28:57: New connection from 172.30.33.3:50222 on port 1883.
error: received null username or password for unpwd check
2022-09-24 17:28:57: Client <unknown> disconnected, not authorised.
2022-09-24 17:28:58: New connection from 172.30.33.3:50228 on port 1883.
error: received null username or password for unpwd check
2022-09-24 17:28:58: Client <unknown> disconnected, not authorised.
2022-09-24 17:29:00: New connection from 172.30.32.1:57609 on port 1883.
2022-09-24 17:29:00: New client connected from 172.30.32.1:57609 as 7EbXvFLCqpMglodU1Srrqr (p2, c1, k60, u'homeassistant').
2022-09-24 17:29:03: New connection from 172.30.33.3:50230 on port 1883.
error: received null username or password for unpwd check

These are my configs in mqtt:

EDIT:
Okay, it works… It was a mistake in the configuration. In the first YouTube tutorial, the YouTuber did not specify a username or password in the Z2M configuration. (5) How to Install Zigbee2MQTT in Home Assistant - TUTORIAL - NEW VERSION - YouTube

In the updated version he does! So I had to put only the data from the mqtt-user in the configuration of Z2M! (5) How to Install Zigbee2MQTT with the Sonoff ZBDongle E in Home Assistant - Tutorial - YouTube

Now it seems to work!

1 Like

I tried to set up Home Assistant and the Conbee for the first time yesterday… this solved my issues so quickly!

Thanks!

1 Like

My f***en GOD! If only I’d found this like 6 hours ago. Idk who you are, idk what you want but you diserve a cookie! After 2 years lurking on the pages of this community this was it, this was the time for me to do an account and actually write something. Thank you man!

1 Like