web-dev-qa-db-fra.com

Impossible de faire fonctionner la manette USB sous Ubuntu 12.04

J'essaie de faire fonctionner un gamepad usb sous Ubuntu 12.04 sur mon bras chromebook (en utilisant chroot). Après avoir branché le gamepad, dmesg affiche:

[ 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

La sortie de lsusb est:

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

Je n'ai pas /dev/input/ls0ls -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

Des idées?

Edit: Si cela peut aider, voici ce que je vois dans les périphériques USB:

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: Voici la sortie de lsusb -v (la section du 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
user163542

Les manettes DragonRise utilisent le module hid_dr, qui peut être chargé avec modprobe hid_dr. Si le module n'est pas disponible, vous devez le compiler en activant l'option de noyau HID_DRAGONRISE (dans menuconfig, vous pouvez le trouver dans Pilotes de périphérique -> Prise en charge HID -> Prise en charge du bus HID -> Pilotes HID spéciaux -> DragonRise Contrôleur de jeu Inc.).

Avec le module chargé, le périphérique sera correctement reconnu et/dev/input/js0 sera créé.

[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
upuoth

Autre que le manquant js0 cela semble bon. Essayez modprobe joydev et voyez si cela vous donne un /dev/input/js0. Si cela échoue, installez evtest puis faites:

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

jusqu'à ce que vous ayez trouvé votre manette de jeu. Poster des informations que evtest imprime au démarrage, car si quelque chose ne fonctionne pas avec la détection du joystick, il y a probablement un problème avec les noms des boutons.

1
Grumbel