USB Stick passthrough nach reconnect nicht wiederholt

KrawallKurt

Member
Dec 18, 2023
47
4
13
Hallo,
Ich habe eine Home Assistant VM auf meinem Proxmox Host laufen und reiche über USB Passthrough (über Vendor/Device ID) einen Bluetooth Stick an die VM durch. Alle paar Tage, sehr unregelmäßig und keinem Muster folgend, verbindet sich der Bluetooth Stick anscheinend neu (vermute Spannungsschwankungen am USB oder so) und wird danach nicht mehr von Proxmox an die VM durch gereicht. Im PVE Log findet sich dann folgendes:

Code:
[Fri Oct 16 16:08:20 2026] usb 1-3: USB disconnect, device number 27
[Fri Oct 16 16:08:21 2026] usb 1-3: new full-speed USB device number 28 using xhci_hcd
[Fri Oct 16 16:08:21 2026] usb 1-3: New USB device found, idVendor=0a12, idProduct=0001, bcdDevice=88.91
[Fri Oct 16 16:08:21 2026] usb 1-3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[Fri Oct 16 16:08:21 2026] usb 1-3: Product: CSR8510 A10

Beim Versuch Bluetooth in der VM zu reloaden, sagt er mir dann, dass der Stick nicht angeschlossen ist. Daraus schließe ich, dass er nicht mehr sauber durchgereicht wird. Meine erste Vermutung war, dass Proxmox sich den Stick selbst schnappt und er dann busy ist, deshalb habe ich `bluetooth` und `btusb` blacklisted. Das hat aber nix gebracht.

Um des Problem zu fixen, muss ich dann manuell power cyclen, also den Stick einmal abziehen und wieder rein stecken, dann wird er wieder durchgereicht und ich kann Bluetooth in der VM reloaden. Beim manuellen power cycle sieht der Log ganz ähnlich aus wie oben. nur mit einer zusätzlichen Zeile am Ende

Code:
[Fri Oct 16 22:38:13 2026] usb 1-3: USB disconnect, device number 28
[Fri Oct 16 22:38:16 2026] usb 1-3: new full-speed USB device number 29 using xhci_hcd
[Fri Oct 16 22:38:16 2026] usb 1-3: New USB device found, idVendor=0a12, idProduct=0001, bcdDevice=88.91
[Fri Oct 16 22:38:16 2026] usb 1-3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[Fri Oct 16 22:38:16 2026] usb 1-3: Product: CSR8510 A10
[Fri Oct 16 22:38:18 2026] usb 1-3: reset full-speed USB device number 29 using xhci_hcd

Hat jemand eine Idee, wie man Proxmox dazu bringen könnte, den Bluetooth Stick immer durchzureichen, wenn er mal zwischendurch verloren geht?
 
Servus,

a) Welche Hardware wird hier genau verwendet?

b) ich würde mal ein BIOS-Upgrade machen und vorher auch die BIOS-Batterie wechseln.

c) Wenn das nicht fused, mal ein anderes Mainboard kaufen - neu - und die CPU dort einbauen.#

d) Evtl. auch mal ein neues Netzteil ATX einbauen, z.B. das FSP VITA GD 550W (8x 15-Pin-SATA)
 
Ein ChatGPT lieferte noch ein Hinweis:
Code:
Häufige Ursachen und Lösungen bei Ausfällen oder Problemen mit CSR8510 A10 USB-Bluetooth-Dongles:

Häufige Ursachen

* USB-3.x-Interferenzen: CSR8510-Sticks sind anfällig für elektromagnetische Störungen durch USB-3.0/3.1-Ports.
* Treiber-Konflikte (Windows): Die veraltete und oft fehlerhafte CSR Harmony Wireless Software verursacht Gerätefehler (z. B. Code 10 oder Code 43 im Gerätemanager).

* USB-Autosuspend (Linux/macOS): Das Betriebssystem schaltet den Port in den Energiesparmodus, wodurch der Controller nach dem Standby oder Booten nicht mehr initialisiert wird (Timeout-Fehler -110).

* Gefälschte oder fehlerhafte Hardware: Billig-Nachbauten (z. B. No-Name-Produkte von Marktplätzen) nutzen oft minderwertige Chips oder fehlerhafte Firmware.


Bewährte Lösungen

1. Unter Windows

...

2. Unter Linux (z. B. bei Initialisierungsfehlern / -110-Timeout)

* USB-Autosuspend deaktivieren: Wenn der Stick nach dem Aufwachen oder Booten nicht startet, fügen Sie usbcore.autosuspend=-1 den Kernel-Boot-Parametern hinzu (da Modul-Konfigurationen bei fest einkerneltem usbcore oft wirkungslos bleiben).

3. Allgemein (Hardware-Check)

* Dongle neu pairen / Reset: Ziehen Sie den Stick bei heruntergefahrenem Rechner ab, starten Sie neu und stecken Sie ihn frisch ein.
* Qualität prüfen: Wenn es sich um einen extrem günstigen No-Name-Stick handelt, hilft oft nur der Umstieg auf einen verlässlicheren Marken-Adapter (z. B. von Ugreen oder Marken mit Intel/Broadcom-Chipsatz).
 
Guten Abend,

mach es dir einfach und lass den Stick weg, Einfach einen ESP32 oder Shelly als Bluetooth Proxy.

MfG
 
Es ist ein Esprimo D958. Nicht der aktuellste PC, aber sparsam und für meine Zwecke mehr als ausreichend. BIOS ist aktuell.

Zu c, d: Ja, die Verbindungsabbrüche zu lösen, wäre natürlich optimal, aber ein Umbau im proprietären 10 Liter Gehäuse PC ist schwierig. Deswegen würde ich das Problem gerne in Software lösen. Da der PC auch 10 USB Ports hat und ich nur 3 Geräte dran habe, gehe ich aber eigentlich auch nicht davon aus, dass ich da nah am Limit sein sollte.
 
Dann gibt es noch USB Verlängerungskabel, die man zum Absetzen des USB Sticks verwenden könnte.
Aber ich nutze ein andere Bluetooth Dolngle, als den "CSR8510 A10" .
Mediamarkt hat da etwas von :

a) ASUS USB-BT500 Bluetooth USB-Adapter
b) ASUS USB-BT540 Bluetooth USB-Adapter, **

Den Type b) würde ich mir mal mit einer USB Verlängerung zulegen.
PS nutze ich selbst und Linux.

So etwas meine ich: goobay USB 2.0 Verlängerungskabel
 
Last edited:
Es ist ein Esprimo D958. Nicht der aktuellste PC, aber sparsam und für meine Zwecke mehr als ausreichend. BIOS ist aktuell.

Zu c, d: Ja, die Verbindungsabbrüche zu lösen, wäre natürlich optimal, aber ein Umbau im proprietären 10 Liter Gehäuse PC ist schwierig. Deswegen würde ich das Problem gerne in Software lösen. Da der PC auch 10 USB Ports hat und ich nur 3 Geräte dran habe, gehe ich aber eigentlich auch nicht davon aus, dass ich da nah am Limit sein sollte.
Welche CPU, wie viel RAM und welcher Speicher: SSD, HDD oder NVMe sind verbaut?
 
Last edited:
mach es dir einfach und lass den Stick weg, Einfach einen ESP32 oder Shelly als Bluetooth Proxy.
Wäre ein Workaround, allerdings sind die Teile von der Reichweite immer eher etwas schwach, da bräuchte ich dann mindestens 2 für meine Geräte.

Dann gibt es noch USB Verlängerungskabel, die man zum Absetzen des USB Sticks verwenden könnte.
Das mache ich sowieso, um Interferenzen mit dem Zigbee Stick zu minimieren. Habe auch schon diverse Kabel ausprobiert, weil ich dachte, vielleicht liegt es daran. Der Zigbee Stick hat übrigens keine Verbindungsabbrüche. Als drittes Gerät hängt noch ein RTL-SDR Stick für 433 MHz am PC. Der hatte auch mal einen Abbruch, aber das war eine einmalige Sache. Möglich, dass da jemand dagegen gekommen ist oder so.
Btw, das ist der BT Stick, den ich nutze: https://www.amazon.de/dp/B00VWEK4IG
 
Interessant ist die letzte Zeile beim manuellen Umstecken: reset full-speed USB device. Den Reset macht QEMU, wenn es sich das Gerät schnappt. Beim spontanen Reconnect fehlt die Zeile, QEMU hat den Stick also gar nicht mehr übernommen. Das liegt wahrscheinlich daran, dass Disconnect und Reconnect nur ca. 1 Sekunde auseinanderliegen. Da hängt QEMU vermutlich noch am alten Handle.

Zwei Sachen würde ich probieren. Erstens das Durchreichen von Vendor/Product-ID auf Port umstellen (host=1-3), dann noch den Haken bei USB3 setzen, falls er noch nicht drin ist. Das qemu-xhci kommt mit Hotplug besser klar. Zweitens beim nächsten Abbruch statt Umstecken mal einen Software-Replug testen:
Code:
echo '1-3' > /sys/bus/usb/drivers/usb/unbind
sleep 3
echo '1-3' > /sys/bus/usb/drivers/usb/bind
Wenn er danach wieder in der VM landet, kannst du das automatisieren. Eine udev-Regel auf "add" würde ich dafür nicht nehmen, weil der Rebind selbst wieder ein "add" auslöst und du dir damit eine Schleife baust. Besser ist ein kleines Skript per Timer, das mit qm monitor <vmid> und dann info usb prüft, ob der Stick noch in der VM hängt. Falls nicht, macht es den Rebind. Autosuspend würde ich für den Stick auch abschalten (power/control auf on).

Welche PVE-Version läuft bei dir?
 
@Bu66as danke für die Vorschläge, das werde ich ausprobieren! Es kann durchaus 1-2 Wochen dauern, bis ich mich mit einem Ergebnis zurückmelde. Das ganze passiert wie gesagt nur sehr sporadisch, aber trotzdem häufig genug, um nervig zu sein.

dann noch den Haken bei USB3 setzen
ist leider ausgegraut. Ich nehme an, das ist, weil der Stick selbst kein USB 3 Gerät ist?

Autosuspend würde ich für den Stick auch abschalten (power/control auf on).
das? Hatte ich schon.
Code:
# cat /sys/bus/usb/devices/usb1/1-3/power/control
on

Welche PVE-Version läuft bei dir?
9.2.18
 
Ohh, so schnell kanns gehen. Hab von ID auf Port umgestellt, neu gestartet und nach ein paar Minuten schon den ersten Dropout. Kein Reset

Code:
[Sat Oct 17 21:47:39 2026] usb 1-3: USB disconnect, device number 37
[Sat Oct 17 21:47:39 2026] usb 1-3: new full-speed USB device number 38 using xhci_hcd
[Sat Oct 17 21:47:40 2026] usb 1-3: New USB device found, idVendor=0a12, idProduct=0001, bcdDevice=88.91
[Sat Oct 17 21:47:40 2026] usb 1-3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[Sat Oct 17 21:47:40 2026] usb 1-3: Product: CSR8510 A10

In der VM aber anscheinend immer noch gelistet.

Code:
# qm monitor 110
Entering QEMU Monitor for VM 110 - type 'help' for help
qm> info usb
  Device 1.1, Port 1, Speed 480 Mb/s, Product RTL2838UHIDIR, ID: usb0
  Device 1.3, Port 3, Speed 12 Mb/s, Product Sonoff Zigbee 3.0 USB Dongle Pl, ID: usb2
  Device 1.2, Port 2, Speed 12 Mb/s, Product CSR8510 A10, ID: usb1

Das OS in der VM sagt aber, er kennt den Stick nicht mehr.

Software-Replug testen:
Code:
echo '1-3' > /sys/bus/usb/drivers/usb/unbind
sleep 3
echo '1-3' > /sys/bus/usb/drivers/usb/bind
Dabei passiert gar nix. keine neuen Outputs in `dmesg`