• Unraid keeps changing USB device number periodicaly (for Conbee 2)


    PeZet
    • Minor

    Setup:

    - Unraid ver. 6.9.2

    - Conbee 2 ver 2.05.77, 5/22/2020

     

    Issue description:

    As presented on below screenshot, Device number is being changed periodically for Conbee2 device only, all other devices are having rather "static" device number. By periodically I mean that sometimes after VM reboot (which is using conbee2), sometimes just without any action. This is getting annoyed, because my all zigbee network is down unexpectedly, whole home automation is not working.

    Hint: I was trying to find out whether issue is on conbee2 or unraid, but in my previous setup with same conbee2 stick on Proxmox, there was not issue at all. Thus my suspicion is that something on Unraid requires attention and possibly fixing.

     

     

    image.thumb.png.17cbb08c7eb915b1e2fc5bd679a02de3.png

    pezetserver-diagnostics-20210427-1024.zip




    User Feedback

    Recommended Comments

    @PeZet Usually as long as you don't change settings in your BIOS or add/remove USB devices, the IDs are kinda static. If you have a VM for example with a passed through USB controller which you often restart with changing USB devices connected, sooner or later you will see some IDs changing. As long as unraid itself always sees the same devices without adding or removing devices you shoud be ok.

     

    What you can do is passthrough a USB controller where the Conbee is connected to. Keep in mind, all connected devices will be disconnected from Unraid and handed over to the VM. Maybe get an extra pcie card for passthrough if you have no unused/ungrouped controllers.

     

    Link to comment

    @bastl - thanks for your reply, but I still don't understand what should I do. Adding extra pcie is not a case for me as don't have a space in my tiny PC case.

    But what is worrying me and don't think it is normal, is that conbee device ID is changing sometimes continuously without any action/trigger (like e.g. vm restart because of update). Please have a look on below logs:

     

    Apr 25 16:40:26 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 76
    Apr 25 16:40:27 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 77 using xhci_hcd
    Apr 25 16:40:27 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 16:40:31 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 77
    Apr 25 16:40:31 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 78 using xhci_hcd
    Apr 25 16:40:31 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 16:53:30 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 78
    Apr 25 16:53:30 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 79 using xhci_hcd
    Apr 25 16:53:30 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 16:53:34 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 79
    Apr 25 16:53:34 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 80 using xhci_hcd
    Apr 25 16:53:35 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 17:37:43 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 80
    Apr 25 17:37:43 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 81 using xhci_hcd
    Apr 25 17:37:44 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 17:37:48 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 81
    Apr 25 17:37:48 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 82 using xhci_hcd
    Apr 25 17:37:48 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 17:53:13 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 82
    Apr 25 17:53:13 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 83 using xhci_hcd
    Apr 25 17:53:13 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 17:53:17 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 83
    Apr 25 17:53:17 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 84 using xhci_hcd
    Apr 25 17:53:17 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 18:29:14 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 84
    Apr 25 18:29:14 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 85 using xhci_hcd
    Apr 25 18:29:14 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 18:29:18 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 85
    Apr 25 18:29:18 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 86 using xhci_hcd
    Apr 25 18:29:18 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 18:45:45 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 86
    Apr 25 18:45:45 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 87 using xhci_hcd
    Apr 25 18:45:45 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 18:45:49 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 87
    Apr 25 18:45:49 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 88 using xhci_hcd
    Apr 25 18:45:49 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 19:28:11 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 88
    Apr 25 19:28:11 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 89 using xhci_hcd
    Apr 25 19:28:11 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 19:28:15 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 89
    Apr 25 19:28:15 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 90 using xhci_hcd
    Apr 25 19:28:15 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 19:45:03 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 90
    Apr 25 19:45:03 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 91 using xhci_hcd
    Apr 25 19:45:03 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 19:45:07 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 91
    Apr 25 19:45:08 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 92 using xhci_hcd
    Apr 25 19:45:08 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 20:21:01 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 92
    Apr 25 20:21:01 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 93 using xhci_hcd
    Apr 25 20:21:01 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device
    Apr 25 20:21:05 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 93
    Apr 25 20:21:05 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 94 using xhci_hcd
    Apr 25 20:21:05 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM1: USB ACM device
    Apr 25 20:36:05 PeZetSERVER kernel: usb 1-6.1.2: USB disconnect, device number 94
    Apr 25 20:36:05 PeZetSERVER kernel: usb 1-6.1.2: new full-speed USB device number 95 using xhci_hcd
    Apr 25 20:36:05 PeZetSERVER kernel: cdc_acm 1-6.1.2:1.0: ttyACM0: USB ACM device

     

    As I mentioned, I'm not an expert, but strange thing here is that on Proxmox setup such case was never observed, here it's continous issue :/

     

    Thanks in advance for support

    Link to comment

    Why does device number inside of the VM actually matter? You should be good as long as it's passed through and the vm can see it, no?

    Edited by BRiT
    Device Number, not Device Id.
    Link to comment

    But once device ID starts being changed continuously, device (conbee2) get unaccessible inside VM, and only stoping and starting VM solves the problem .. at least for some time (few days).

    Link to comment
    2 hours ago, BRiT said:

    Why does device Id inside of the VM actually matter? You should be good as long as it's passed through and the vm can see it, no?

    It would need to be reconnected as id has changed.

     

     

    Edited by SimonF
    Link to comment
    1 hour ago, PeZet said:

    But once device ID starts being changed continuously, device (conbee2) get unaccessible inside VM, and only stoping and starting VM solves the problem .. at least for some time (few days).

    I have a plugin that will autoconnect a usb to a vm. Do you do anything apart from reboot vm. I would be worried about creating loop if usb stick problem

     

    Like disconnect usb and reconnect.

    Link to comment
    1 hour ago, SimonF said:

    It would need to be reconnected as id has changed.

     

     

    Shouldn't the mapping be done using the Device ID and not Bus and Device Numbers?

     

    That's why I'm curious.

     

     

    Seems like the real issue is the USB disconnects, as if the controller is going to sleep or doesn't have enough power for all devices which causes them to cycle.

    Edited by BRiT
    Link to comment
    52 minutes ago, BRiT said:

    Shouldn't the mapping be done using the Device ID and not Bus and Device Numbers?

     

    That's why I'm curious.

     

     

    Seems like the real issue is the USB disconnects, as if the controller is going to sleep or doesn't have enough power for all devices which causes them to cycle.

    I believe the mapping is created at vm start taking vendor:product and mapping their corresponding bus and devid.

     

    As the device seems to disconnect qemu will just remove from guest. There is no recovery process as far as i know.

     

    @PeZet have you tried libvirt hotplug to reattach rather than reboot.

    • Thanks 1
    Link to comment
    20 hours ago, PeZet said:

    Adding extra pcie is not a case for me as don't have a space in my tiny PC case.

    Looks like the "Intel Corporation 200 Series/Z370 Chipset Family USB 3.0 xHCI Controller" is the only one on your board. Most boards these days have at least 2 controllers. Kinda bad, if you don't have enough space for a simple pcie usb card. Even a cheap x1 card should work.

     

    Another question, what PSU are you using? Maybe it's at the limit and small spikes causing to drop connected USB devices.

     

    Depending how old your board is, you might check the pins/contacts for the used USB port. Clean them in case there are some corrosion. For some USB devices a small voltage drop is enogh to become unstable. I had a old external USB drive with 2 contact slightly differ in colour. Since I cleaned them with alcohol, contact issues are gone. Just an idea.

    Link to comment

    Thanks everyone for an answers.

     

    @BRiT - it seems that disconnecting is the issue here, but still don't know why it is getting disconnected

    @SimonF - yes, have it as well. But it is still manual work every few days, where my expectation is it's running 24/7 without my attention.

    @bastl - so as I understand up to now, issue is rather with my hardware and kind of physical connections than with unraid itself? I will try to check that and come back later

    PS. my HW is "Lenovo M710q USFF", which has not space inside (I believe) to attach another card

    Edited by PeZet
    Link to comment

    I just upgraded unraid from 6.8.3 to 6.9.2 and I have this issue as well and only with the conbee2 usb dongle. I experienced no issues what so ever like this on unraid 6.8.3. 

    I used conbee2 stick in a homeassistant docker container and the whole homeautomation platform goes down as soon as the conbee2 usb stick gets its device id changed. This is a showstopper for me. I might have to downgrade unraid back to 6.8.3 as I need to be able to rely on my homeautomation platform to be up and running 24/7 every day around the year. Unraid 6.9.2 will not provide the platform for that unfortunately. 😔

    Link to comment

    Same issue with "SONOFF Gateway Zigbee-3.0 USB-Dongle Plus". After unraid goes to sleep, the USB becomes unavailable in the homeassistant VM. Restarting homeassistant vm resolves the issue, but it is quite annoying that in the morning no automations are working. Are there any informations when this will be fixed in unraid?

    Link to comment

    Sme problem with CONBEE 2 and Unraid 6.10.0 RC2:
     

    Feb 21 08:34:31 Unraid kernel: usb 1-7: USB disconnect, device number 93
    Feb 21 08:34:32 Unraid kernel: usb 1-7: new full-speed USB device number 94 using xhci_hcd
    Feb 21 08:34:32 Unraid kernel: cdc_acm 1-7:1.0: ttyACM0: USB ACM device
    Feb 21 08:34:35 Unraid kernel: usb 1-7: USB disconnect, device number 94
    Feb 21 08:34:36 Unraid kernel: usb 1-7: new full-speed USB device number 95 using xhci_hcd
    Feb 21 08:34:36 Unraid kernel: cdc_acm 1-7:1.0: ttyACM0: USB ACM device
    Feb 21 09:34:36 Unraid kernel: usb 1-7: USB disconnect, device number 95
    Feb 21 09:34:36 Unraid kernel: usb 1-7: new full-speed USB device number 96 using xhci_hcd
    Feb 21 09:34:37 Unraid kernel: cdc_acm 1-7:1.0: ttyACM0: USB ACM device
    Feb 21 09:34:40 Unraid kernel: usb 1-7: USB disconnect, device number 96
    Feb 21 09:34:40 Unraid kernel: usb 1-7: new full-speed USB device number 97 using xhci_hcd
    Feb 21 09:34:40 Unraid kernel: cdc_acm 1-7:1.0: ttyACM0: USB ACM device

     

    Motherboard: Fujitsu D3642-B1.

    My Aeotec Z-Stick GEN 5+ is working fine.

    I will try using a powered USB hub next.

    Edited by Timmerman
    Link to comment

    Same here, CONBEE 2 on Unraid 6.9.2. Any news on this? Started to happen over night, nothing got updated.

     

    Mar 27 15:44:17 server kernel: usb 1-3: USB disconnect, device number 110
    Mar 27 15:44:18 server kernel: usb 1-3: new full-speed USB device number 111 using xhci_hcd
    Mar 27 15:44:18 server kernel: cdc_acm 1-3:1.0: ttyACM0: USB ACM device
    Mar 27 15:44:21 server kernel: usb 1-3: USB disconnect, device number 111
    Mar 27 15:44:22 server kernel: usb 1-3: new full-speed USB device number 112 using xhci_hcd
    Mar 27 15:44:27 server kernel: usb 1-3: unable to read config index 0 descriptor/all
    Mar 27 15:44:27 server kernel: usb 1-3: can't read configurations, error -110
    Mar 27 15:44:27 server kernel: usb 1-3: new full-speed USB device number 113 using xhci_hcd
    Mar 27 15:44:27 server kernel: cdc_acm 1-3:1.0: ttyACM0: USB ACM device
    Mar 27 15:44:55 server kernel: usb 1-3: USB disconnect, device number 113
    Mar 27 15:44:55 server kernel: usb 1-3: new full-speed USB device number 114 using xhci_hcd
    Mar 27 15:44:56 server kernel: cdc_acm 1-3:1.0: ttyACM0: USB ACM device
    Mar 27 15:44:59 server kernel: usb 1-3: USB disconnect, device number 114
    Mar 27 15:44:59 server kernel: usb 1-3: new full-speed USB device number 115 using xhci_hcd
    Mar 27 15:44:59 server kernel: cdc_acm 1-3:1.0: ttyACM0: USB ACM device

     

    Link to comment

    I also have this exact same problem, using Conbee II and on unRaid 6.10.0-rc4

     

    Has anyone found a fix / workaround? It makes the USB device unusable inside the VM.

    Link to comment


    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.
    Note: Your post will require moderator approval before it will be visible.

    Guest
    Add a comment...

    ×   Pasted as rich text.   Restore formatting

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


  • Status Definitions

     

    Open = Under consideration.

     

    Solved = The issue has been resolved.

     

    Solved version = The issue has been resolved in the indicated release version.

     

    Closed = Feedback or opinion better posted on our forum for discussion. Also for reports we cannot reproduce or need more information. In this case just add a comment and we will review it again.

     

    Retest = Please retest in latest release.


    Priority Definitions

     

    Minor = Something not working correctly.

     

    Urgent = Server crash, data loss, or other showstopper.

     

    Annoyance = Doesn't affect functionality but should be fixed.

     

    Other = Announcement or other non-issue.