Forum: Mikrocontroller und Digitale Elektronik Arduino USB Host Shield 2.0 + 8BitDO SN30 pro USB


von Thomas W. (diddl)


Lesenswert?

Ich habe hier einen Arduino UNO R3 mit einem USB Host Shield 2.0.
Für das Shield gibt es eine ausgezeichnete Lib.
Damit laufen fast alle meine USB Controller (Joysticks und Gamepads).

Es funktionieren auch einige verschiedene Gamepads von 8BitDO.
Sowohl direkt über USB Kabel als auch wireless über den USB-BT Stick.

Von 8BitDo gibt es einige wireless Geräte und nur ein einziger mit USB 
Kabel.
Der 8BitDO SN30 pro USB.

Genau dieser will partout nicht funktionieren mit meinem Arduino.
Dabei läuft das Pad tadellos an meiner Windows 10 Kiste und auch am 
RetroPie.
Das Pad hat also keinen Fehler.

=======

Für das USB Host Shield 2 gibt es einen Sketch: USBHID_desc

Der Sketch zeigt Informationen sobald man ein HID Device anschließt.
Unter anderem auch Typ (zb. Gamepad) und welche Input zur Verfügung 
stehen.

Es funktioniert mit allen HID Geräten die ich besitze.
Auch mit dem 8BitDO SN30 pro USB.

Wenn man dann Tasten betätigt oder die Sticks bewegt werden sofort 
entsprechende Daten gesendet und in diesem Sketch angezeigt.

Nicht so bei dem 8BitDO SN30 pro USB.
Da wird nur das anstecken protokolliert, danach kommt da nichts mehr.

========

Muss man diesem HID device erst etwas senden damit es normal 
funktioniert?

Hat jemand schon ähnliche Erfahrungen gemacht?
Oder sogar evt. eine Lösung für mich?

von Thomas Z. (usbman)


Lesenswert?

Wie immer in solchen Fällen:
Wie sehen die Deskriptoren aus. Da du ja funktionierende und nicht 
funktionierende hast. Wo sind die Unterschiede bei den Deskriptoren.
Insbesondere ist der HidReportDeskriptor von Interesse, da dieser das 
Übertragungsformat definiert.

von Thomas W. (diddl)


Lesenswert?

Diese Information printet der Sketch <USB_desc> wenn man das Gamepad 
anschließt:




12:33:22.931 -> Start
12:33:28.789 ->
12:33:28.789 ->
12:33:28.789 -> 01
12:33:28.789 -> --
12:33:28.789 ->
12:33:28.789 -> Device descriptor:
12:33:28.789 -> Descriptor Length:  12
12:33:28.789 -> Descriptor type:  01
12:33:28.789 -> USB version:    0200
12:33:28.789 -> Device class:    FF
12:33:28.789 -> Device Subclass:  FF
12:33:28.789 -> Device Protocol:  FF
12:33:28.789 -> Max.packet size:  40
12:33:28.789 -> Vendor  ID:    045E
12:33:28.789 -> Product ID:    028E
12:33:28.789 -> Revision ID:    0114
12:33:28.789 -> Mfg.string index:  01
12:33:28.789 -> Prod.string index:  02
12:33:28.789 -> Serial number index:  03
12:33:28.823 -> Number of conf.:  01
12:33:28.823 ->
12:33:28.823 -> Configuration descriptor:
12:33:28.823 -> Total length:    008B
12:33:28.823 -> Num.intf:    04
12:33:28.823 -> Conf.value:    01
12:33:28.823 -> Conf.string:    00
12:33:28.823 -> Attr.:      A0
12:33:28.823 -> Max.pwr:    FA
12:33:28.823 ->
12:33:28.823 -> Interface descriptor:
12:33:28.823 -> Intf.number:    00
12:33:28.823 -> Alt.:      00
12:33:28.823 -> Endpoints:    02
12:33:28.823 -> Intf. Class:    FF
12:33:28.823 -> Intf. Subclass:    5D
12:33:28.823 -> Intf. Protocol:    01
12:33:28.823 -> Intf.string:    00
12:33:28.823 -> Unknown descriptor:
12:33:28.823 -> Length:    11
12:33:28.823 -> Type:    21
12:33:28.823 -> Contents:  1001012581140303030413020803030705
12:33:28.823 ->
12:33:28.823 -> Endpoint descriptor:
12:33:28.823 -> Endpoint address:  81
12:33:28.858 -> Attr.:      03
12:33:28.858 -> Max.pkt size:    0020
12:33:28.858 -> Polling interval:  04
12:33:28.858 ->
12:33:28.858 -> Endpoint descriptor:
12:33:28.858 -> Endpoint address:  02
12:33:28.858 -> Attr.:      03
12:33:28.858 -> Max.pkt size:    0020
12:33:28.858 -> Polling interval:  08
12:33:28.858 ->
12:33:28.858 -> Interface descriptor:
12:33:28.858 -> Intf.number:    01
12:33:28.858 -> Alt.:      00
12:33:28.858 -> Endpoints:    02
12:33:28.858 -> Intf. Class:    FF
12:33:28.858 -> Intf. Subclass:    5D
12:33:28.858 -> Intf. Protocol:    03
12:33:28.858 -> Intf.string:    00
12:33:28.858 -> Unknown descriptor:
12:33:28.858 -> Length:    1B
12:33:28.858 -> Type:    21
12:33:28.858 -> Contents: 
000101018340010420168500000000000016050000000000000705
12:33:28.899 ->
12:33:28.899 -> Endpoint descriptor:
12:33:28.899 -> Endpoint address:  83
12:33:28.899 -> Attr.:      03
12:33:28.899 -> Max.pkt size:    0020
12:33:28.899 -> Polling interval:  02
12:33:28.899 ->
12:33:28.899 -> Endpoint descriptor:
12:33:28.899 -> Endpoint address:  04
12:33:28.899 -> Attr.:      03
12:33:28.899 -> Max.pkt size:    0020
12:33:28.899 -> Polling interval:  04
12:33:28.899 ->
12:33:28.899 -> Interface descriptor:
12:33:28.899 -> Intf.number:    02
12:33:28.899 -> Alt.:      00
12:33:28.899 -> Endpoints:    01
12:33:28.899 -> Intf. Class:    FF
12:33:28.899 -> Intf. Subclass:    5D
12:33:28.899 -> Intf. Protocol:    02
12:33:28.899 -> Intf.string:    00
12:33:28.899 -> Unknown descriptor:
12:33:28.899 -> Length:    09
12:33:28.899 -> Type:    21
12:33:28.899 -> Contents:  000101228607000705
12:33:28.899 ->
12:33:28.899 -> Endpoint descriptor:
12:33:28.928 -> Endpoint address:  86
12:33:28.928 -> Attr.:      03
12:33:28.928 -> Max.pkt size:    0020
12:33:28.928 -> Polling interval:  10
12:33:28.928 ->
12:33:28.928 -> Interface descriptor:
12:33:28.928 -> Intf.number:    03
12:33:28.928 -> Alt.:      00
12:33:28.928 -> Endpoints:    00
12:33:28.928 -> Intf. Class:    FF
12:33:28.928 -> Intf. Subclass:    FD
12:33:28.928 -> Intf. Protocol:    13
12:33:28.928 -> Intf.string:    04
12:33:28.928 -> Unknown descriptor:
12:33:28.928 -> Length:    06
12:33:28.928 -> Type:    41
12:33:28.928 -> Contents:  0001010313BC
12:33:28.928 ->
12:33:28.928 ->
12:33:28.928 -> Addr:1(0.0.1)

von Thomas W. (diddl)


Lesenswert?

Im Vergleich dazu der 8BitDO SF30 pro von derselben Hersteller Firma:

(der funktioniert tadellos)


12:39:00.213 -> Start
12:39:00.992 ->
12:39:00.992 ->
12:39:00.992 -> 01
12:39:00.992 -> --
12:39:00.992 ->
12:39:00.992 -> Device descriptor:
12:39:00.992 -> Descriptor Length:  12
12:39:00.992 -> Descriptor type:  01
12:39:00.992 -> USB version:    0200
12:39:00.992 -> Device class:    00
12:39:00.992 -> Device Subclass:  00
12:39:00.992 -> Device Protocol:  00
12:39:00.992 -> Max.packet size:  40
12:39:00.992 -> Vendor  ID:    057E
12:39:00.992 -> Product ID:    2009
12:39:00.992 -> Revision ID:    0200
12:39:00.992 -> Mfg.string index:  01
12:39:00.992 -> Prod.string index:  02
12:39:00.992 -> Serial number index:  03
12:39:00.992 -> Number of conf.:  01
12:39:00.992 ->
12:39:00.992 -> Configuration descriptor:
12:39:01.026 -> Total length:    0029
12:39:01.026 -> Num.intf:    01
12:39:01.026 -> Conf.value:    01
12:39:01.026 -> Conf.string:    00
12:39:01.026 -> Attr.:      A0
12:39:01.026 -> Max.pwr:    FA
12:39:01.026 ->
12:39:01.026 -> Interface descriptor:
12:39:01.026 -> Intf.number:    00
12:39:01.026 -> Alt.:      00
12:39:01.026 -> Endpoints:    02
12:39:01.026 -> Intf. Class:    03
12:39:01.026 -> Intf. Subclass:    00
12:39:01.026 -> Intf. Protocol:    00
12:39:01.026 -> Intf.string:    00
12:39:01.026 -> Unknown descriptor:
12:39:01.026 -> Length:    09
12:39:01.026 -> Type:    21
12:39:01.026 -> Contents:  1101000122CB000705
12:39:01.026 ->
12:39:01.026 -> Endpoint descriptor:
12:39:01.026 -> Endpoint address:  81
12:39:01.026 -> Attr.:      03
12:39:01.061 -> Max.pkt size:    0040
12:39:01.061 -> Polling interval:  08
12:39:01.061 ->
12:39:01.061 -> Endpoint descriptor:
12:39:01.061 -> Endpoint address:  02
12:39:01.061 -> Attr.:      03
12:39:01.061 -> Max.pkt size:    0040
12:39:01.061 -> Polling interval:  08
12:39:01.061 ->
12:39:01.061 ->
12:39:01.061 -> Addr:1(0.0.1)

von S. R. (svenska)


Lesenswert?

Thomas W. schrieb:
> 2:33:28.789 -> Device class:    FF
> 12:33:28.789 -> Device Subclass:  FF
> 12:33:28.789 -> Device Protocol:  FF

Das ist kein HID-Gerät.

von Thomas Z. (usbman)


Lesenswert?

Ich hab ehrlich gesagt nicht so richtig Lust aus dem Listing die Werte 
zusammenzusuchen. Besorg dir bitte UsbdevView und zeige was das Tool an 
Deskriptoren auswirft.
Beim nicht funktionierenden Gerät ist im Device Deskriptor Class, 
Subclass, Protokoll auf 0xFF gestellt.
Das ist unüblich bis falsch da so ein Device Vendor defined ist.
Welcher Treiber wird denn für das Pad unter win geladen?

von Thomas W. (diddl)


Lesenswert?

Thomas Z. schrieb:
> Besorg dir bitte UsbdevView und zeige was das Tool an
> Deskriptoren auswirft.

Ah, ja gut mach ich.


Thomas Z. schrieb:
> Welcher Treiber wird denn für das Pad unter win geladen?

Treiber?
Muss ich schauen.
Es musste nichts extra installiert werden.
Beide Pads werden als XBOX Controller erkannt.

von S. R. (svenska)


Lesenswert?

Thomas W. schrieb:
> Treiber?
> Muss ich schauen.
> Es musste nichts extra installiert werden.

Da sich das Gerät nicht als HID-Class identifiziert, brauchst du einen 
speziellen Treiber. Kann natürlich sein, dass das trotzdem ein HID-Gerät 
ist und Windows (bzw. dessen HID-Treiber) das weiß, oder eben auch 
nicht.

Du solltest im Geräte-Manager die relevanten Informationen finden 
können.

von Thomas W. (diddl)


Lesenswert?

Das USBdeview zeigt zwei neue Zeilen sobald man den Controller ansteckt:


Controller  Xbox 360 Controller for Windows  Vendor Specific  Yes  Yes 
No  No    Controller  01.09.2020 13:24:10  28.08.2020 16:38:27  045e 
028e  1.14  ff  5d  01    TOMMY-I7      9&6d06f10&0  xusb22 
@xusb22.inf,%XUSB22.ServiceName%;Xbox 360 Wireless Receiver Driver 
Service 22  xusb22.sys    Microsoft    6 mA  2.00  Xbox 360 Controller 
for Windows  10.0.18362.1  CC_Install  xusb22.inf 
USB\VID_045E&PID_028E\Controller  Removable, UniqueID, SurpriseRemovalOK




XBOX_360_DEVICE_00:00  USB Input Device  HID (Human Interface Device) 
Yes  Yes  No  No      01.09.2020 13:24:10  01.09.2020 13:24:10  045e 
028e  0.00  03  00  00    TOMMY-I7      a&fb45c7a&0  HidUsb 
@input.inf,%HID.SvcDesc%;Microsoft HID Class Driver  hidusb.sys 
(Standard system devices)        USB Input Device  10.0.18362.175 
HID_Inst.NT  input.inf  USB\VID_045E&PID_028E&IG_00\9&6d06f10&0&00 
SurpriseRemovalOK

von Thomas W. (diddl)


Angehängte Dateien:

Lesenswert?

hier noch als HTML

von Thomas Z. (usbman)


Lesenswert?

Thomas W. schrieb:
> Das USBdeview zeigt zwei neue Zeilen sobald man den Controller ansteckt:

Ganz sicher nicht nur .... Das Fenster hat auch einen Scrollbalken. Wenn 
man runterscrollst kommen die Deskriptoren.

von Thomas W. (diddl)


Lesenswert?

Es gibt schon noch mehr Zeilen.
Aber die sind auch schon vorher da.

Keyboard, Maus, Netzwerk, USB Festplatte ...


==================================================
Device Name       : 0000.001a.0000.001.002.001.000.000.000
Description       : USB Input Device
Device Type       : HID (Human Interface Device)
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     :
Registry Time 1   : 01.09.2020 15:38:41
Registry Time 2   : 01.09.2020 15:38:41
VendorID          : 046d
ProductID         : c335
Firmware Revision : 6.02
USB Class         : 03
USB SubClass      : 01
USB Protocol      : 01
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : 9&324fd1ad&0
Service Name      : HidUsb
Service Description: @input.inf,%HID.SvcDesc%;Microsoft HID Class Driver
Driver Filename   : hidusb.sys
Device Class      :
Device Mfg        : (Standard system devices)
Friendly Name     :
Power             :
USB Version       :
Driver Description: USB Input Device
Driver Version    : 10.0.18362.175
Driver InfSection : HID_Inst.NT
Driver InfPath    : input.inf
Instance ID       : USB\VID_046D&PID_C335&MI_00\8&39b32e8&0&0000
Capabilities      : SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : 0000.001a.0000.001.002.001.000.000.000
Description       : USB Input Device
Device Type       : HID (Human Interface Device)
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     :
Registry Time 1   : 01.09.2020 15:38:41
Registry Time 2   : 01.09.2020 15:38:41
VendorID          : 046d
ProductID         : c335
Firmware Revision : 6.02
USB Class         : 03
USB SubClass      : 00
USB Protocol      : 00
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : 9&1f1fb56f&0
Service Name      : HidUsb
Service Description: @input.inf,%HID.SvcDesc%;Microsoft HID Class Driver
Driver Filename   : hidusb.sys
Device Class      :
Device Mfg        : (Standard system devices)
Friendly Name     :
Power             :
USB Version       :
Driver Description: USB Input Device
Driver Version    : 10.0.18362.175
Driver InfSection : HID_Inst.NT
Driver InfPath    : input.inf
Instance ID       : USB\VID_046D&PID_C335&MI_01\8&39b32e8&0&0001
Capabilities      : SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : 0000.001a.0000.001.002.004.000.000.000
Description       : USB Input Device
Device Type       : HID (Human Interface Device)
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     :
Registry Time 1   : 01.09.2020 15:38:41
Registry Time 2   : 01.09.2020 15:38:41
VendorID          : 046d
ProductID         : c07d
Firmware Revision : 88.02
USB Class         : 03
USB SubClass      : 01
USB Protocol      : 02
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : 8&166c890c&0
Service Name      : HidUsb
Service Description: @input.inf,%HID.SvcDesc%;Microsoft HID Class Driver
Driver Filename   : hidusb.sys
Device Class      :
Device Mfg        : (Standard system devices)
Friendly Name     :
Power             :
USB Version       :
Driver Description: USB Input Device
Driver Version    : 10.0.18362.175
Driver InfSection : HID_Inst.NT
Driver InfPath    : input.inf
Instance ID       : USB\VID_046D&PID_C07D&MI_00\7&98d012d&1&0000
Capabilities      : SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : 0000.001a.0000.001.002.004.000.000.000
Description       : USB Input Device
Device Type       : HID (Human Interface Device)
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     :
Registry Time 1   : 01.09.2020 15:38:41
Registry Time 2   : 01.09.2020 15:38:41
VendorID          : 046d
ProductID         : c07d
Firmware Revision : 88.02
USB Class         : 03
USB SubClass      : 00
USB Protocol      : 00
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : 8&299ca54a&0
Service Name      : HidUsb
Service Description: @input.inf,%HID.SvcDesc%;Microsoft HID Class Driver
Driver Filename   : hidusb.sys
Device Class      :
Device Mfg        : (Standard system devices)
Friendly Name     :
Power             :
USB Version       :
Driver Description: USB Input Device
Driver Version    : 10.0.18362.175
Driver InfSection : HID_Inst.NT
Driver InfPath    : input.inf
Instance ID       : USB\VID_046D&PID_C07D&MI_01\7&98d012d&1&0001
Capabilities      : SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : Controller
Description       : Xbox 360 Controller for Windows
Device Type       : Vendor Specific
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     : Controller
Registry Time 1   : 01.09.2020 15:34:46
Registry Time 2   : 28.08.2020 16:38:27
VendorID          : 045e
ProductID         : 028e
Firmware Revision : 1.14
USB Class         : ff
USB SubClass      : 5d
USB Protocol      : 01
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : 9&6d06f10&0
Service Name      : xusb22
Service Description: @xusb22.inf,%XUSB22.ServiceName%;Xbox 360 Wireless 
Receiver Driver Service 22
Driver Filename   : xusb22.sys
Device Class      :
Device Mfg        : Microsoft
Friendly Name     :
Power             : 6 mA
USB Version       : 2.00
Driver Description: Xbox 360 Controller for Windows
Driver Version    : 10.0.18362.1
Driver InfSection : CC_Install
Driver InfPath    : xusb22.inf
Instance ID       : USB\VID_045E&PID_028E\Controller
Capabilities      : Removable, UniqueID, SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : Gaming Keyboard G910
Description       : Logitech Download Assistant
Device Type       : Unknown
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     : 0179385A3135
Registry Time 1   : 01.09.2020 15:38:41
Registry Time 2   : 17.08.2020 17:45:21
VendorID          : 046d
ProductID         : c335
Firmware Revision : 6.02
USB Class         : 00
USB SubClass      : 00
USB Protocol      : 00
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : 8&39b32e8&0
Service Name      : usbccgp
Service Description: @oem33.inf,%GenericParent.SvcDesc%;Microsoft USB 
Generic Parent Driver
Driver Filename   : usbccgp.sys
Device Class      :
Device Mfg        : Logitech (x64)
Friendly Name     : Gaming Keyboard G910
Power             : 500 mA
USB Version       : 2.00
Driver Description: Logitech Download Assistant
Driver Version    : 1.10.77.0
Driver InfSection : LogiLDA
Driver InfPath    : oem33.inf
Instance ID       : USB\VID_046D&PID_C335\0179385A3135
Capabilities      : Removable, UniqueID, SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : Gaming Mouse G502
Description       : Logitech Download Assistant
Device Type       : Unknown
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     : 157C33533733
Registry Time 1   : 01.09.2020 15:38:41
Registry Time 2   : 22.01.2020 21:50:19
VendorID          : 046d
ProductID         : c07d
Firmware Revision : 88.02
USB Class         : 00
USB SubClass      : 00
USB Protocol      : 00
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : 7&98d012d&1
Service Name      : usbccgp
Service Description: @oem33.inf,%GenericParent.SvcDesc%;Microsoft USB 
Generic Parent Driver
Driver Filename   : usbccgp.sys
Device Class      :
Device Mfg        : Logitech (x64)
Friendly Name     : Gaming Mouse G502
Power             : 300 mA
USB Version       : 2.00
Driver Description: Logitech Download Assistant
Driver Version    : 1.10.77.0
Driver InfSection : LogiLDA
Driver InfPath    : oem33.inf
Instance ID       : USB\VID_046D&PID_C07D\157C33533733
Capabilities      : Removable, UniqueID, SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : Mass Storage Device
Description       : Multiple Card  Reader USB Device
Device Type       : Mass Storage
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      : I:
Serial Number     : 058F63666433
Registry Time 1   : 28.08.2020 09:56:05
Registry Time 2   : 08.07.2019 00:58:31
VendorID          : 058f
ProductID         : 6366
Firmware Revision : 1.00
USB Class         : 08
USB SubClass      : 06
USB Protocol      : 50
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   :
Service Name      : USBSTOR
Service Description: @usbstor.inf,%USBSTOR.SvcDesc%;USB Mass Storage 
Driver
Driver Filename   : USBSTOR.SYS
Device Class      :
Device Mfg        : Compatible USB storage device
Friendly Name     :
Power             : 100 mA
USB Version       : 2.00
Driver Description: USB Mass Storage Device
Driver Version    : 10.0.18362.1
Driver InfSection : USBSTOR_BULK.NT
Driver InfPath    : usbstor.inf
Instance ID       : USB\VID_058F&PID_6366\058F63666433
Capabilities      : UniqueID, SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : MEDION HDDrive2GO
Description       : TOSHIBA DT01ABA300 USB Device
Device Type       : Mass Storage
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      : D:
Serial Number     : 11400000000000011BB2
Registry Time 1   : 28.08.2020 09:56:03
Registry Time 2   : 08.07.2019 00:56:14
VendorID          : 174c
ProductID         : 55aa
Firmware Revision : 1.00
USB Class         : 08
USB SubClass      : 06
USB Protocol      : 50
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   :
Service Name      : USBSTOR
Service Description: @usbstor.inf,%USBSTOR.SvcDesc%;USB Mass Storage 
Driver
Driver Filename   : USBSTOR.SYS
Device Class      :
Device Mfg        : Compatible USB storage device
Friendly Name     :
Power             : 0 mA
USB Version       : 3.00
Driver Description: USB Mass Storage Device
Driver Version    : 10.0.18362.1
Driver InfSection : USBSTOR_BULK.NT
Driver InfPath    : usbstor.inf
Instance ID       : USB\VID_174C&PID_55AA\11400000000000011BB2
Capabilities      : Removable, UniqueID, SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : RTL8191S WLAN Adapter
Description       : Realtek RTL8191SU Wireless LAN 802.11n USB 2.0 
Network Adapter
Device Type       : Vendor Specific
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     : 00e04c000001
Registry Time 1   : 28.08.2020 09:56:06
Registry Time 2   : 08.07.2019 00:58:38
VendorID          : 13d3
ProductID         : 3306
Firmware Revision : 2.00
USB Class         : ff
USB SubClass      : ff
USB Protocol      : ff
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : 7&34906522&0
Service Name      : RTL8192su
Service Description: 
@net8192su64.inf,%RTL8192su.DeviceDesc.DispName%;Realtek RTL8192SU 
Wireless LAN 802.11n USB 2.0 Network Adapter
Driver Filename   : RTL8192su.sys
Device Class      :
Device Mfg        : Realtek Semiconductor Corp.
Friendly Name     : Realtek RTL8191SU Wireless LAN 802.11n USB 2.0 
Network Adapter
Power             : 500 mA
USB Version       : 0.2e
Driver Description: Realtek RTL8191SU Wireless LAN 802.11n USB 2.0 
Network Adapter
Driver Version    : 1086.51.328.2013
Driver InfSection : RTL8192su.ndi.NT
Driver InfPath    : net8192su64.inf
Instance ID       : USB\VID_13D3&PID_3306\00e04c000001
Capabilities      : Removable, UniqueID, SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

==================================================
Device Name       : XBOX_360_DEVICE_01:01
Description       : USB Input Device
Device Type       : HID (Human Interface Device)
Connected         : Yes
Safe To Unplug    : Yes
Disabled          : No
USB Hub           : No
Drive Letter      :
Serial Number     :
Registry Time 1   : 01.09.2020 15:34:46
Registry Time 2   : 01.09.2020 15:34:46
VendorID          : 045e
ProductID         : 028e
Firmware Revision : 0.00
USB Class         : 03
USB SubClass      : 00
USB Protocol      : 00
Hub / Port        :
Computer Name     : TOMMY-I7
Vendor Name       :
Product Name      :
ParentId Prefix   : a&2b0ce92&0
Service Name      : HidUsb
Service Description: @input.inf,%HID.SvcDesc%;Microsoft HID Class Driver
Driver Filename   : hidusb.sys
Device Class      :
Device Mfg        : (Standard system devices)
Friendly Name     :
Power             :
USB Version       :
Driver Description: USB Input Device
Driver Version    : 10.0.18362.175
Driver InfSection : HID_Inst.NT
Driver InfPath    : input.inf
Instance ID       : USB\VID_045E&PID_028E&IG_01\9&6d06f10&0&01
Capabilities      : SurpriseRemovalOK
Install Time      :
First Install Time:
Connect Time      :
Disconnect Time   :
==================================================

von Thomas Z. (usbman)


Lesenswert?

OK dann ist es halt so...
Ohne lesbare Deskriptoren kann ich dir nicht weiterhelfen.

von S. R. (svenska)


Lesenswert?

Glaube mir doch, dass das Teil kein HID-Gerät ist. Der Windows-Treiber 
ist xusb22.inf, das ist nicht der Standard-HID-Treiber.

von Thomas Z. (usbman)


Lesenswert?

Das sehe ich selbst. Das Ding hat ja 4 Interfaces. Trotzdem ist ein 
classdescriptor drin der auf HID deutet.
Es ist also nicht ganz ausgeschlossen, dass der TO das Ding mit einer 
angepassten hostlib ans laufen bekommen kann.

von Thomas W. (diddl)


Lesenswert?

Es geht exakt um dieses GamePad von 8BitDO, das einzige Gerät das Kabel 
hat.

https://www.8bitdo.com/sn30-pro-usb-gamepad/

Ich finde es ja lustig, dass alle anderen (kabellosen) tadellos laufen.
Sowohl mit Ladekabel als auch mit dem Wireless BT Stick.

von Thomas W. (diddl)


Lesenswert?

Was kann ich tun?
Welche Infos soll ich posten?

Das UsbDeview Programm zeigt sonst nur inaktive Zeilen an.
Würden vielleicht die etwas nützen?

von Thomas Z. (usbman)


Lesenswert?

Ich hab's ja schon mehrfach geschrieben. Poste die Deskriptoren. 
UsbDevView zeigt die auch an. Ich verstehe nicht was jetzt so schwer ist 
den entsprechenden Port anzuklicken und im rechten Fenster solange 
runterzuscrollen bis die Deskriptoren kommen.

von S. R. (svenska)


Lesenswert?

Wenn ich bei Google einfach mal nach "045e:028e" suche, dann finde ich 
mehrere Posts, die Probleme mit dem Teil unter Linux beschreiben.

Selbst, wenn es teilweise HID-kompatibel ist, wirst du es nicht 
vollständig nutzen können. Linux hat dafür den "xpad"-Treiber bzw. 
"xboxdrv". Siehe auch 
https://stackoverflow.com/questions/52088857/i-need-some-help-to-understand-usb-game-controllers-hid-devices.

Besorge dir einen anderen Controller.

von Thomas W. (diddl)


Lesenswert?

S. R. schrieb:
> Besorge dir einen anderen Controller.

Es geht dabei nicht um mich selbst.
Ich habe inzwischen zig USB Controller und Joysticks da.

Wir wollen moderne USB Controller an alte Retro Computer hängen.
Weil es diese alten Controller, speziell analoge Joysticks, kaum noch 
gibt.
Das funktioniert jetzt auch soweit sehr gut.
Natürlich wäre es schön, wenn JEDES USB Gerät funktionieren würde.

Aber wenn es nicht geht, auch kein wirkliches Problem.

: Bearbeitet durch User
von Thomas W. (diddl)


Lesenswert?

S. R. schrieb:
> Selbst, wenn es teilweise HID-kompatibel ist, wirst du es nicht
> vollständig nutzen können. Linux hat dafür den "xpad"-Treiber bzw.
> "xboxdrv". Siehe auch
> 
https://stackoverflow.com/questions/52088857/i-need-some-help-to-understand-usb-game-controllers-hid-devices.

Aber danke für den link.
XINPUT
Das ist genau der Begriff der mich etwas weiter bringt.
Es gibt einige Artikel die sich damit beschäftigen:

https://www.instructables.com/id/Controlling-Arduino-with-Gamepad/

von S. R. (svenska)


Lesenswert?

Thomas W. schrieb:
> Natürlich wäre es schön, wenn JEDES USB Gerät funktionieren würde.

Das geht schon aus Prinzip nicht. :-)

Du kannst natürlich für jedes Gerät einen eigenen Treiber schreiben, und 
vielleicht ist das für so einen Xbox360-Controller noch sinnvoll, aber 
irgendwo wirst du eine Grenze ziehen müssen.

Thomas W. schrieb:
> XINPUT
> Das ist genau der Begriff der mich etwas weiter bringt.

Nein, das ist die Linux-API, die du benutzt, wenn du den Controller an 
einen Linux-PC anschließt. Du willst den Controller nicht an einen 
Linux-PC anschließen, sondern an einen Arduino.

Thomas W. schrieb:
> Es gibt einige Artikel die sich damit beschäftigen:
> https://www.instructables.com/id/Controlling-Arduino-with-Gamepad/

Und der Artikel benutzt einen Linux-PC mit einem Linux-Programm, welches 
den Controller mit dem Linux-Treiber ausliest, um dann serielle Daten an 
einen Arduino zu schicken. Der Controller wird dabei nicht am Arduino 
angeschlossen.

Aber ich merke schon, ich rede mit einer Wand.

Viel Spaß noch.

von Thomas W. (diddl)


Lesenswert?

Danke, es ist gelöst.
Man sendet dem Controller eine Sequenz, danach funktioniert er genau wie 
alle anderen auch. Es gibt auch Daten Pakete die das Rumble schalten, 
aber das benötige ich nicht.



S. R. schrieb:
> Das geht schon aus Prinzip nicht. :-)

Häh, warum sollte das nicht gehen?
Jeder Controller der unter Windows läuft, kann auch am Arduino laufen.

Es gehen jedenfall alle die ich besitze. :-)

von S. R. (svenska)


Lesenswert?

Thomas W. schrieb:
>> Das geht schon aus Prinzip nicht. :-)
> Häh, warum sollte das nicht gehen?

Du sprachst von USB-Geräten, nicht von Gamepads und Joysticks. :-)

> Jeder Controller der unter Windows läuft, kann auch am Arduino laufen.

Wenn du dich nur auf HID-Controller beschränkst, dann ja.
Ansonsten ist das nur theoretisch ja, praktisch nein.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.