Frage Das USB-Gamepad funktioniert nicht in Ubuntu 12.04


Ich versuche, ein billiges USB-Gamepad zu bekommen, um unter Ubuntu 12.04 zu arbeiten, das auf meinem Armchromebook läuft (chroot verwendend). Nach dem Einstecken des Gamepads zeigt dmesg:

[ 5879.411510] usb 2-1: new low-speed USB device number 8 using exynos-ohci
[ 5879.610530] usb 2-1: New USB device found, idVendor=0079, idProduct=0011
[ 5879.610560] usb 2-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[ 5879.610584] usb 2-1: Product: USB Gamepad

Ausgabe von lsusb ist:

Bus 001 Device 003: ID 0424:3503 Standard Microsystems Corp.
Bus 002 Device 008: ID 0079:0011 DragonRise Inc. Gamepad
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 2232:1037

Ich habe es nicht /dev/input/ls0 ls -l /dev/input:

drwxr-xr-x 2 root root    120 May 31 17:24 by-path
crw-rw---- 1 root  222 13, 64 May 31 17:24 event0
crw-rw---- 1 root  222 13, 65 May 31 17:24 event1
crw-rw---- 1 root  222 13, 66 May 31 17:24 event2
crw-rw---- 1 root  222 13, 67 May 31 17:24 event3
crw-rw---- 1 root  222 13, 68 May 31 17:24 event4
crw-rw---- 1 root  222 13, 69 May 31 17:24 event5

Irgendwelche Ideen?

Edit: Falls es hier hilft, was ich auf USB-Geräten sehe:

T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=1.5 MxCh= 0
D:  Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=0079 ProdID=0011 Rev=01.06
S:  Product=USB Gamepad 
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid

Edit2: Hier ist die Ausgabe von lsusb -v (der Abschnitt für das Gamepad)

Bus 002 Device 002: ID 0079:0011 DragonRise Inc. Gamepad
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0079 DragonRise Inc.
  idProduct          0x0011 Gamepad
  bcdDevice            1.06
  iManufacturer           0 
  iProduct                2 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           34
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode           33 US
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     101
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10

4
2018-06-01 06:40


Ursprung




Antworten:


DragonRise-Gamepads verwenden das hid_dr-Modul, mit dem geladen werden kann modprobe hid_dr. Wenn das Modul nicht verfügbar ist, müssen Sie es kompilieren, indem Sie die Option aktivieren HID_DRAGONRISE Kernel-Option (in menuconfig, finden Sie es unter Gerätetreiber -> HID-Unterstützung -> HID-Bus-Unterstützung -> Spezielle HID-Treiber -> DragonRise Inc. Game-Controller).

Wenn das Modul geladen ist, wird das Gerät ordnungsgemäß erkannt und / dev / input / js0 wird erstellt.

[19229.563797] usb 3-3: new low-speed USB device number 11 using xhci_hcd
[19229.706682] usb 3-3: New USB device found, idVendor=0079, idProduct=0011
[19229.706688] usb 3-3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[19229.706692] usb 3-3: Product: USB Gamepad 
[19229.706915] usb 3-3: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes
[19229.710302] input: USB Gamepad  as /devices/pci0000:00/0000:00:14.0/usb3/3-3/3-3:1.0/0003:0079:0011.000C/input/input13
[19229.710638] dragonrise 0003:0079:0011.000C: input,hidraw0: USB HID v1.10 Joystick [USB Gamepad ] on usb-0000:00:14.0-3/input0

3
2017-09-08 22:38





Andere als die fehlenden js0 es sieht gut aus. Versuchen modprobe joydev und sieh, ob das dir einen gibt /dev/input/js0. Wenn das fehlschlägt, installieren Sie evtest und dann:

evtest /dev/input/event1
evtest /dev/input/event2
evtest /dev/input/event3
...

bis du dein Gamepad gefunden hast. Post info das evtest Beim Start wird gedruckt, wenn bei der Erkennung als Joystick ein Fehler auftritt, liegt wahrscheinlich etwas an den Schaltflächennamen nicht.


1
2018-06-01 17:15



Danke für den Vorschlag grumbel, aber ich kann es immer noch nicht zum Laufen bringen :( Ich hatte Probleme beim Ausführen von modprobe joydev, aber es scheint jetzt zu funktionieren, wenn ich den Befehl gebe, gibt es keine Fehler oder irgendetwas, zu dem ich gerade zurückkomme die Eingabeaufforderung also nehme ich an, dass es funktioniert Nach dem Ausführen dieses Befehls sehe ich immer noch nicht js0 unter / dev / input, also habe ich etwas gelesen und es wurde vorgeschlagen, MAKEDEV js laufen zu lassen und dies hat eine Menge js erstellt, funktioniert aber immer noch nicht Irgendwelche anderen Vorschläge? TIA! - user163542
BTW Ich lief evtest / dev / input / event0-5 und versuchte auf jedem die Tasten auf dem Gamepad zu drücken und immer noch nichts. - user163542
Siehe Edit 2 oben für detaillierte Ausgabe von lsusb -v - user163542
Überprüfen Sie die Ausgabe von dmesg nachdem Sie das Gamepad angeschlossen haben, sollte es Ihnen einen Hinweis geben, was der Kernel damit macht. Wie für evtest, überprüfen Sie den Namen des Geräts, das oben auf dem gedruckt wird evtest Ausgabe, die dir sagen sollte, welches dein Gamepad ist, zeig was evtest Drucke. Oder wenn das nicht funktioniert, entferne das Gamepad und stecke es wieder ein, je nachdem was es ist /dev/input/eventX Datei verschwindet und erscheint wieder als Gamepad. - Grumbel
dmesg protokolliert nur das angeschlossene USB-Gerät und entfernt nicht zu viele Details. / dev / input / eventX-Dateien ändern sich nicht, wenn sie verbunden / entfernt werden - immer das gleiche eventX dort. Ich habe aufgegeben und ein anderes USB Gamepad gekauft (dieses amazon.com/gp/aw/d/B0034ZOAO0) und das funktioniert PERFEKT :) Sobald ich es anschließe, erscheint js0 unter / dev / input und Tonnen von nützlichen Informationen erscheinen in dmesg und das Gamepad wird über das Betriebssystem und in all meinen Spielen erkannt gib einfach das andere Gamepad an meinen Bruder, es kostet mich sowieso nur 5 Dollar :) - user163542