Ich versuche, drei verschiedene Sensoren gleichzeitig zu verwenden. Einer der Sensoren ist ein Microsoft Kinect-Sensor für Xbox One (also technisch gesehen zwei Sensoren) und die anderen beiden Sensoren sind ereignisbasierte Kameras vom Typ ATIS. Alle drei Sensoren sind über USB 3.0
jeweils einen eigenen USB-Anschluss ohne USB-Hub mit meinem Lenovo P51 Thinkpad verbunden. Die
gemeinsame Verwendung der beiden ATIS-Sensoren ist jetzt völlig problemlos. Aber wenn ich die Datenübertragung des Kinect-Sensors starte und dann versuche, einen der ATIS-Sensoren zu verwenden, erhalte ich die folgende Fehlermeldung
Eingabe-/AusgabefehlerUSB Fehler beim Senden
Fehler beim Senden beim Start
auf meiner Shell unter Ubuntu 18.04. Ich denke, es ist ein libusb-Fehler.
Meine Vermutung ist also, dass mein Mainboard (oder ein anderer Teil meiner Hardware?) nicht in der Lage ist, die Informationen von 3 USB-Geräten, die alle eine hohe Datenausgabe haben, schnell genug zu verarbeiten. Aber ich bin mir nicht sicher, ob es daran liegt, es ist nur meine Vermutung.
Meine Fragen sind also:
1. Ist das vermutlich ein Hardware- oder ein Softwareproblem?
2. Wenn es ein Hardwareproblem ist: Welches Teil schränkt mich ein und worauf müsste ich achten, um es zu ersetzen?
BEARBEITEN:
Die Ausgabe lsusb -t
ist:
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
|__ Port 1: Dev 4, If 0, Class=Hub, Driver=hub/1p, 5000M
|__ Port 1: Dev 5, If 0, Class=Vendor Specific Class, Driver=usbfs, 5000M
|__ Port 1: Dev 5, If 1, Class=Vendor Specific Class, Driver=usbfs, 5000M
|__ Port 1: Dev 5, If 2, Class=Audio, Driver=snd-usb-audio, 5000M
|__ Port 1: Dev 5, If 3, Class=Audio, Driver=snd-usb-audio, 5000M
|__ Port 5: Dev 2, If 0, Class=Vendor Specific Class, Driver=usbfs, 5000M
|__ Port 6: Dev 3, If 0, Class=Vendor Specific Class, Driver=usbfs, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
|__ Port 1: Dev 12, If 0, Class=Hub, Driver=hub/1p, 480M
|__ Port 2: Dev 9, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 11, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 1: Dev 11, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 3: Dev 10, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 8: Dev 4, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 8: Dev 4, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 9: Dev 5, If 0, Class=Vendor Specific Class, Driver=, 12M
|__ Port 11: Dev 6, If 0, Class=Chip/SmartCard, Driver=, 12M
|__ Port 13: Dev 7, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 14: Dev 8, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 14: Dev 8, If 1, Class=Wireless, Driver=btusb, 12M
Antwort1
Tatsächlich sind drei Ihrer Ports intern mit einem einzigen USB 3.0-Hub verbunden und teilen sich die USB 3.0-Bandbreite.
Um dieses Problem zu lösen, benötigen Sie einen zweiten USB 3.0-Controller. Sie verwenden wahrscheinlich einen Laptop, daher fürchte ich, dass Sie nichts tun können.