Canales populares

Instalar Twin USB Gamepad en Linux (Kit 2 en 1 usb)

Recientemente adquirí un kit de controles, para un proyecto de Arcade con un equipo viejo.
(Es un Kit de 2 controles mediante 1 solo USB)
http:////kn3.net/comgunner/60-C-7-6-C-F-8-08F-JPG.html

Instalar Twin USB Gamepad Linux (Kit usb)

En Windows, evidentemente al conectarlo, detecto los 2 mandos sin problema. Pero en Arch me lleve la sorpresa que lo detecto como un solo control de 20 botones xD.

¿Como Solucionarlo?
Utilizando el controlador adecuado y no el generico, del siguiente modo:

[code]
sudo rmmod usbhid && sudo modprobe usbhid quirks=0x0810:0xe301:0x00000040

Donde:

Vendor:0810
ProdID :0xe301
define PF_FORKNOEXEC 0x00000040 /* forked but didn't exec */

(Más abajo, se explica de donde salen.)

[code] 
sudo nano /etc/modprobe.d/usbhid.config
options usbhid quirks=0x0810:0xe301:0x00000040

(Lo anterior no me funciono en Arch ;(, pero por servicio SI)

UTILERIAS:

[code]
yaourt -S joystick
yaourt -S jstest-gtk-git

El siguiente comando nos sirve para conocer el Vendor y ProdID

[code]
sudo cat /sys/kernel/debug/usb/devices | grep -E "^([TSPD]:.*|)$"

T:  Bus=08 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=0810 ProdID=e301 Rev= 1.06
S:  Product=Twin USB Gamepad

[code]
dmesg | grep Joystick

[    1.776843] hid-generic 0003:0810:E301.0003: input,hidraw2: USB HID v1.10 Joystick [Twin USB Gamepad      ] on usb-0000:00:1d.2-1/input0
[  320.913216] hid-generic 0003:0810:E301.0008: input,hidraw2: USB HID v1.10 Joystick [Twin USB Gamepad      ] on usb-0000:00:1d.2-1/input0
[  351.507953] hid-generic 0003:0810:E301.000D: input,hidraw2: USB HID v1.10 Joystick [Twin USB Gamepad      ] on usb-0000:00:1d.2-1/input0

Problemas con modprobe.d Arch.
Al reiniciar pierde los cambios aún configurado en modprobe.d.

Solución temporal

[code]
nano /usr/bin/hackusb.sh

Pegar lo siguiente en el archivo creado "hackusb.sh"
[code]
#!/bin/bash
rmmod usbhid
modprobe usbhid quirks=0x0810:0xe301:0x00000040

[code]
nano /etc/systemd/system/hackusb.service

[code]

[Unit]
Description=JoyhackTwinJoypads

[Service]
ExecStart=/usr/bin/hackusb.sh

[Install]
WantedBy=multi-user.target

[code]

sudo chmod 755 /usr/bin/hackusb.sh

sudo systemctl enable hackusb.service

sudo systemctl daemon-reload

sudo systemctl start hackusb.service

0No hay comentarios