Unraid VM - Conbee II stick dev. path change configuration problem?

Hi All

I had to change the way Unraid VM works with USB sticks:
([6.10.0-rc1/6.10.0-rc2d] USB Passthrough to VM not working correctly [Manual XML solution available] - Prereleases - Unraid)

But after getting the VM with hassio up and running I cant find out how to fix the path in HA?
image

The configure buttons does not show any options?

This all worked before, but this serial passthrough is creating problems:

    <serial type='dev'>
      <source path='/dev/serial/by-id/usb-0000_0000-if00'/>
      <target type='usb-serial' port='1'>
        <model name='usb-serial'/>
      </target>
      <alias name='serial1'/>
      <address type='usb' bus='0' port='4'/>
    </serial>

Where in HA can I define the path:
/dev/serial/by-id/usb-0000_0000-if00

(The serial is not 0000_0000 I changed it as an example)

How to update this Device?

I know the path in Hassio is: /dev/ttyUSB0

And if I remove the Zigbee HA and reinstall it would work! - But I would loose all my devices!
And setting them up again would be a Pain, so how to change the path in HA?

SOLUTION:

Go to .storage and find the file “core.config_entries”

And edit the path example:

WRONG:

            {
                "entry_id": "2bb51ca17b7fa61b8d997ce1d3f2c8a2",
                "version": 3,
                "domain": "zha",
                "title": "ConBee II, s/n: DExxxxxxxx - dresden elektronik ingenieurtechnik GmbH",
                "data": {
                    "radio_type": "deconz",
                    "device": {
                        "path": "/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DExxxxxx-if00"
                    }
                },
				
				
New one:

            {
                "entry_id": "f7b6a5adccf7e8cbe7122a6daa5f7724",
                "version": 3,
                "domain": "zha",
                "title": "/dev/serial/by-id/usb-QEMU_QEMU_USB_SERIAL_1-0000:00:07.7-3-if00-port0",
                "data": {
                    "device": {
                        "path": "/dev/serial/by-id/usb-QEMU_QEMU_USB_SERIAL_1-0000:00:07.7-3-if00-port0"
                    },
                    "radio_type": "deconz"
                },


NEW WORKING (KEEP EXISTING ID from org Deconz):

            {
                "entry_id": "2bb51ca17b7fa61b8d997ce1d3f2c8a2",
                "version": 3,
                "domain": "zha",
                "title": "ConBee II, s/n: DExxxxxxx - dresden elektronik ingenieurtechnik GmbH",
                "data": {
					"device": {
                        "path": "/dev/serial/by-id/usb-QEMU_QEMU_USB_SERIAL_1-0000:00:07.7-3-if00-port0"
                    },
                    "radio_type": "deconz"
                },
1 Like

Thank you so much for this!

I had to do this as well.
This got the error of the main page but the devices are showing up as “Unavailable” now luckily its fixed after repairing and keeps the automation that I have

Well short Lived got a new stick mapped as you have within 48 Hrs it dropped with no other change.

Hi, I have the same problem but I do not understand where can I find the correct path
"path": "/dev/serial/by-id/usb-QEMU_QEMU_USB_SERIAL_1-0000:00:07.7-3-if00-port0"

Can you please elaborate some more details?

Thanks in advance

Never mind… I found it
So for other people who migh tnot understand

first place the xml (bellow </memballoon> to your vm (without selecting the usb from the gui). Use the bus and port as is
and then make the above change

<serial type='dev'>
      <source path='/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_XXXXXXXX-if00'/>
      <target type='usb-serial' port='1'>
        <model name='usb-serial'/>
      </target>
      <alias name='serial1'/>
      <address type='usb' bus='0' port='4'/>
    </serial>

Lastest version of Usb Manager from CA now supports serial passthrough, it solved the problem for me without editing the xml or core registry

3 Likes

I try but ask for a port. Always 04, I can’t change it. Maybe you have other USB manager version?

I have connected it via the plugin as a serial device. However in home assistant it doesn’t find the conbee. It does find usb-QEMU_QEMU_USB_SERIAL_1.

You mention you didn’t have to change anything, but it seems to me I need to replace something somewhere to use the new ID.

Can you explain how you fixed this?

Yes the USB manager now support this!
The latest Unraid update broke my existing work around to this problem in this thread!
So the new USB manager should show a link up like this:

Unfortunately the Zigbee CONBEE II dosen’t get recognized in HA after reboot

So we need to change this back…

      {
        "entry_id": "2bb51ca17b7fa61b8d997ce1d3f2c8a2",
        "version": 3,
        "domain": "zha",
        "title": "ConBee II, s/n: DEXXXX - dresden elektronik ingenieurtechnik GmbH",
        "data": {
          "device": {
            "path": "/dev/serial/by-id/usb-QEMU_QEMU_USB_SERIAL_XXXXXXXX"
          },
          "radio_type": "deconz"
        },

Back to:

"path": "/dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE00000000-if00"

But so far I still get the

image

I really would like for people to stop making so many changes, and its hard to keep fixing things :slight_smile:

So the new path/old one does not give a path not found instead I get this:

Logger: homeassistant.config_entries
Source: components/zha/core/gateway.py:172
First occurred: 4:57:02 PM (1 occurrences)
Last logged: 4:57:02 PM

Error setting up entry ConBee II, s/n: DE2421314 - dresden elektronik ingenieurtechnik GmbH for zha
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/asyncio/tasks.py", line 456, 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/src/homeassistant/homeassistant/config_entries.py", line 357, in async_setup
    result = await component.async_setup_entry(hass, self)
  File "/usr/src/homeassistant/homeassistant/components/zha/__init__.py", line 112, in async_setup_entry
    await zha_gateway.async_initialize()
  File "/usr/src/homeassistant/homeassistant/components/zha/core/gateway.py", line 185, in async_initialize
    raise exc
  File "/usr/src/homeassistant/homeassistant/components/zha/core/gateway.py", line 172, in async_initialize
    self.application_controller = await app_controller_cls.new(
  File "/usr/local/lib/python3.10/site-packages/zigpy/application.py", line 138, in new
    await app.startup(auto_form=auto_form)
  File "/usr/local/lib/python3.10/site-packages/zigpy/application.py", line 118, in startup
    await self.connect()
  File "/usr/local/lib/python3.10/site-packages/zigpy_deconz/zigbee/application.py", line 92, in connect
    self.version = await api.version()
  File "/usr/local/lib/python3.10/site-packages/zigpy_deconz/api.py", line 451, in version
    (self._proto_ver,) = await self.read_parameter(
  File "/usr/local/lib/python3.10/site-packages/zigpy_deconz/api.py", line 416, in read_parameter
    r = await self._command(Command.read_parameter, 1 + len(data), param, data)
  File "/usr/local/lib/python3.10/site-packages/zigpy_deconz/api.py", line 301, in _command
    return await asyncio.wait_for(fut, timeout=COMMAND_TIMEOUT)
  File "/usr/local/lib/python3.10/asyncio/tasks.py", line 458, in wait_for
    raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError

My homeassistant has found the conbee stick but I think i still need to change some things in a file. as you mentioned the path needs to be changed. I have no clue where I have to change this path. Could you point me in the right direction?

So after updating Unraid to v. 6.12.0 RC6 I ran into USB connection problems again!
(I use the USB manager and connect as serial USB) I found that the new path is now something like this in the folder .storage you will find the file “core.config_entries” and here it will add the:

{
    "entry_id": "1c7ac4a53b85198687c853f65f3a7fa6",
    "version": 3,
    "domain": "zha",
    "title": "/dev/ttyUSB0",
    "data": {
      "device": {
        "path": "/dev/serial/by-id/usb-QEMU_QEMU_USB_SERIAL_1-0000:00:07.0-4-if00-port0"
      },
      "radio_type": "deconz"
    },
    "options": {},
    "pref_disable_new_entities": false,
    "pref_disable_polling": false,
    "source": "user",
    "unique_id": null,
    "disabled_by": null
  }

SOLUTION: I took the courage to just remove the ZHA integration and add it again select use existing to restore all your Zigbee integration and then Go to System hardware to find the USB path and give it the path in my case it was : /dev/ttyUSB0 and hit enter this worked and I now have it running again
image