Ajuda com regras do udev meu teclado acha que é um joystick

3

Estou usando o Archlinux e tenho um problema estranho. O meu "Microsoft Wired Keyboard 600" é escolhido como Joystick e Keyboard por algum motivo.

Note: Output trimmed
─$ xinput list
  Virtual core pointer                id=2[master pointer  (3)]
    ↳ Microsoft Wired Keyboard 600    id=9[slave  pointer  (2)]
  Virtual core keyboard               id=3[master keyboard (2)]
    ↳ Microsoft Wired Keyboard 600    id=8[slave  keyboard (3)]

O problema é que tenho um Controlador Xbox360 que eu uso para jogar e este outro "Joystick" está bagunçando as coisas.

Eu tenho uma solução alternativa, mas é manual e irritante eu uso isso.

sudo chmod 0000 /dev/input/event1 /dev/input/js0
sudo setfacl -b /dev/input/event1 /dev/input/js0

Agora eu sei que posso definir regras do udev para fazer coisas em dispositivos quando plugado e desativado ect ... e tentei fazê-lo funcionar, mas estou perdendo.

Eu gostaria que a parte Joystick deste teclado nem aparecesse em /dev/input , mas ainda assim o bit do teclado funcionasse.

O seguinte é uma saída de udevadm para este teclado, se alguém puder me ajudar, eu aprecio muito.

O teclado real

─$ udevadm info --query=all --name=/dev/input/event0                                                                            1 ↵
P: /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.0/0003:045E:0750.0007/input/input23/event0
N: input/event0
S: input/by-id/usb-Microsoft_Wired_Keyboard_600-event-kbd
S: input/by-path/pci-0000:00:1a.0-usb-0:1:1.0-event-kbd
E: DEVLINKS=/dev/input/by-path/pci-0000:00:1a.0-usb-0:1:1.0-event-kbd /dev/input/by-id/usb-Microsoft_Wired_Keyboard_600-event-kbd
E: DEVNAME=/dev/input/event0
E: DEVPATH=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.0/0003:045E:0750.0007/input/input23/event0
E: ID_BUS=usb
E: ID_INPUT=1
E: ID_INPUT_KEY=1
E: ID_INPUT_KEYBOARD=1
E: ID_MODEL=Wired_Keyboard_600
E: ID_MODEL_ENC=Wired\x20Keyboard\x20600
E: ID_MODEL_ID=0750
E: ID_PATH=pci-0000:00:1a.0-usb-0:1:1.0
E: ID_PATH_TAG=pci-0000_00_1a_0-usb-0_1_1_0
E: ID_REVISION=0110
E: ID_SERIAL=Microsoft_Wired_Keyboard_600
E: ID_TYPE=hid
E: ID_USB_DRIVER=usbhid
E: ID_USB_INTERFACES=:030101:030000:
E: ID_USB_INTERFACE_NUM=00
E: ID_VENDOR=Microsoft
E: ID_VENDOR_ENC=Microsoft
E: ID_VENDOR_ID=045e
E: LIBINPUT_DEVICE_GROUP=3/45e/750/111:usb-0000:00:1a.0-1
E: MAJOR=13
E: MINOR=64
E: SUBSYSTEM=input
E: USEC_INITIALIZED=4429367119

O fantasma engraçado Joystick

─$ udevadm info --query=all --name=/dev/input/event1
P: /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.1/0003:045E:0750.0008/input/input24/event1
N: input/event1
S: input/by-id/usb-Microsoft_Wired_Keyboard_600-if01-event-joystick
S: input/by-path/pci-0000:00:1a.0-usb-0:1:1.1-event-joystick
E: DEVLINKS=/dev/input/by-id/usb-Microsoft_Wired_Keyboard_600-if01-event-joystick /dev/input/by-path/pci-0000:00:1a.0-usb-0:1:1.1-event-joystick
E: DEVNAME=/dev/input/event1
E: DEVPATH=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1:1.1/0003:045E:0750.0008/input/input24/event1
E: ID_BUS=usb
E: ID_FOR_SEAT=input-pci-0000_00_1a_0-usb-0_1_1_1
E: ID_INPUT=1
E: ID_INPUT_JOYSTICK=1
E: ID_INPUT_KEY=1
E: ID_INPUT_KEYBOARD=1
E: ID_MODEL=Wired_Keyboard_600
E: ID_MODEL_ENC=Wired\x20Keyboard\x20600
E: ID_MODEL_ID=0750
E: ID_PATH=pci-0000:00:1a.0-usb-0:1:1.1
E: ID_PATH_TAG=pci-0000_00_1a_0-usb-0_1_1_1
E: ID_REVISION=0110
E: ID_SERIAL=Microsoft_Wired_Keyboard_600
E: ID_TYPE=hid
E: ID_USB_DRIVER=usbhid
E: ID_USB_INTERFACES=:030101:030000:
E: ID_USB_INTERFACE_NUM=01
E: ID_VENDOR=Microsoft
E: ID_VENDOR_ENC=Microsoft
E: ID_VENDOR_ID=045e
E: LIBINPUT_DEVICE_GROUP=3/45e/750/111:usb-0000:00:1a.0-1
E: MAJOR=13
E: MINOR=65
E: SUBSYSTEM=input
E: TAGS=:seat:uaccess:
E: USEC_INITIALIZED=4429367514
    
por DeMeNteD 02.08.2015 / 10:39

0 respostas