Meu teclado sem fio Logitech Wave se apresenta como dois dispositivos para o kernel. Um é um teclado normal que funciona bem, mas todas as teclas adicionais aparecem como um mouse de evento, tal que
cat /dev/input/by-id/usb-Logitech_USB_Receiver-if01-event-mouse
produz o lixo esperado quando os botões são pressionados, mas xev não registra nada.
Eu tentei hidpoint que não quer correr em OpenSuse Tumbleweed, e eu tentei
%código%
nos parâmetros do kernel para forçar o reconhecimento de 'multi-identidade', mas eu estou fora da minha profundidade neste momento, então pode não entender corretamente o que estou fazendo
Alguma sugestão sobre como melhor persuadir o kernel a reconhecer o dispositivo extra como um teclado em vez de um mouse?
Mais informações conforme solicitado:
lsusb: usbhid.quirks=0x46d:0xc517:0x40
dmsg:
Bus 001 Device 007: ID 046d:c517 Logitech, Inc. LX710 Cordless Desktop Laser
$ evtest /dev/input/by-id/usb-Logitech_USB_Receiver-if01-event-mouse > evtestdump
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x46d product 0xc517 version 0x110
Input device name: "Logitech USB Receiver"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 1 (KEY_ESC)
Event code 28 (KEY_ENTER)
Event code 74 (KEY_KPMINUS)
Event code 78 (KEY_KPPLUS)
Event code 103 (KEY_UP)
...
Event code 241 (KEY_VIDEO_NEXT)
Event code 244 (KEY_BRIGHTNESS_ZERO)
Event code 256 (BTN_0)
Event code 272 (BTN_LEFT)
Event code 273 (BTN_RIGHT)
Event code 274 (BTN_MIDDLE)
Event code 275 (BTN_SIDE)
Event code 276 (BTN_EXTRA)
Event code 277 (BTN_FORWARD)
Event code 278 (BTN_BACK)
Event code 279 (BTN_TASK)
Event code 352 (KEY_OK)
Event code 353 (KEY_SELECT)
Event code 354 (KEY_GOTO)
Event code 358 (KEY_INFO)
Event code 362 (KEY_PROGRAM)
Event code 366 (KEY_PVR)
Event code 370 (KEY_SUBTITLE)
Event code 371 (KEY_ANGLE)
Event code 372 (KEY_ZOOM)
Event code 374 (KEY_KEYBOARD)
Event code 376 (KEY_PC)
Event code 377 (KEY_TV)
Event code 378 (KEY_TV2)
...
Event code 431 (KEY_DISPLAYTOGGLE)
Event code 432 (KEY_SPELLCHECK)
Event code 433 (KEY_LOGOFF)
Event code 439 (KEY_MEDIA_REPEAT)
Event code 442 (KEY_IMAGES)
Event code 478 (KEY_FN_1)
Event code 479 (KEY_FN_2)
Event code 576 (KEY_BUTTONCONFIG)
Event code 577 (KEY_TASKMANAGER)
Event code 578 (KEY_JOURNAL)
Event code 579 (KEY_CONTROLPANEL)
Event code 580 (KEY_APPSELECT)
Event code 581 (KEY_SCREENSAVER)
Event code 582 (KEY_VOICECOMMAND)
Event code 592 (KEY_BRIGHTNESS_MIN)
Event code 593 (KEY_BRIGHTNESS_MAX)
Event code 608 (KEY_KBDINPUTASSIST_PREV)
Event code 609 (KEY_KBDINPUTASSIST_NEXT)
Event code 610 (KEY_KBDINPUTASSIST_PREVGROUP)
Event code 611 (KEY_KBDINPUTASSIST_NEXTGROUP)
Event code 612 (KEY_KBDINPUTASSIST_ACCEPT)
Event code 613 (KEY_KBDINPUTASSIST_CANCEL)
Event type 2 (EV_REL)
Event code 0 (REL_X)
Event code 1 (REL_Y)
Event code 6 (REL_HWHEEL)
Event code 7 (REL_DIAL)
Event code 8 (REL_WHEEL)
Event type 3 (EV_ABS)
Event code 32 (ABS_VOLUME)
Value 0
Min 1
Max 4173
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Properties:
Testing ... (interrupt to exit)
Event: time 1498324926.500910, type 4 (EV_MSC), code 4 (MSC_SCAN), value c101c
Event: time 1498324926.500910, type 1 (EV_KEY), code 154 (KEY_CYCLEWINDOWS), value 1
Event: time 1498324926.500910, -------------- SYN_REPORT ------------
Event: time 1498324926.644944, type 4 (EV_MSC), code 4 (MSC_SCAN), value c101c
Event: time 1498324926.644944, type 1 (EV_KEY), code 154 (KEY_CYCLEWINDOWS), value 0
Event: time 1498324926.644944, -------------- SYN_REPORT ------------
Event: time 1498324926.932933, type 4 (EV_MSC), code 4 (MSC_SCAN), value c101f
Event: time 1498324926.932933, type 1 (EV_KEY), code 419 (KEY_ZOOMOUT), value 1
Event: time 1498324926.932933, -------------- SYN_REPORT ------------
Event: time 1498324927.052921, type 4 (EV_MSC), code 4 (MSC_SCAN), value c101f
Event: time 1498324927.052921, type 1 (EV_KEY), code 419 (KEY_ZOOMOUT), value 0
Event: time 1498324927.052921, -------------- SYN_REPORT ------------
Event: time 1498324927.396932, type 4 (EV_MSC), code 4 (MSC_SCAN), value c1020
Event: time 1498324927.396932, type 1 (EV_KEY), code 418 (KEY_ZOOMIN), value 1
Event: time 1498324927.396932, -------------- SYN_REPORT ------------
Event: time 1498324927.548930, type 4 (EV_MSC), code 4 (MSC_SCAN), value c1020
Event: time 1498324927.548930, type 1 (EV_KEY), code 418 (KEY_ZOOMIN), value 0
Event: time 1498324927.548930, -------------- SYN_REPORT ------------
Event: time 1498324927.916944, type 4 (EV_MSC), code 4 (MSC_SCAN), value c103d
Event: time 1498324927.916944, type 1 (EV_KEY), code 240 (KEY_UNKNOWN), value 1
Event: time 1498324927.916944, -------------- SYN_REPORT ------------
Event: time 1498324928.084925, type 4 (EV_MSC), code 4 (MSC_SCAN), value c103d
Event: time 1498324928.084925, type 1 (EV_KEY), code 240 (KEY_UNKNOWN), value 0
Event: time 1498324928.084925, -------------- SYN_REPORT ------------
Event: time 1498324928.460914, type 4 (EV_MSC), code 4 (MSC_SCAN), value c1005
Event: time 1498324928.460914, type 1 (EV_KEY), code 212 (KEY_CAMERA), value 1
Event: time 1498324928.460914, -------------- SYN_REPORT ------------
Event: time 1498324928.628903, type 4 (EV_MSC), code 4 (MSC_SCAN), value c1005
Event: time 1498324928.628903, type 1 (EV_KEY), code 212 (KEY_CAMERA), value 0
Event: time 1498324928.628903, -------------- SYN_REPORT ------------
Event: time 1498324930.876924, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b6
Event: time 1498324930.876924, type 1 (EV_KEY), code 165 (KEY_PREVIOUSSONG), value 1
Event: time 1498324930.876924, -------------- SYN_REPORT ------------
Event: time 1498324930.908915, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b6
Event: time 1498324930.908915, type 1 (EV_KEY), code 165 (KEY_PREVIOUSSONG), value 0
Event: time 1498324930.908915, -------------- SYN_REPORT ------------
Event: time 1498324931.684927, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b5
Event: time 1498324931.684927, type 1 (EV_KEY), code 163 (KEY_NEXTSONG), value 1
Event: time 1498324931.684927, -------------- SYN_REPORT ------------
Event: time 1498324931.724935, type 4 (EV_MSC), code 4 (MSC_SCAN), value c00b5
Event: time 1498324931.724935, type 1 (EV_KEY), code 163 (KEY_NEXTSONG), value 0
Event: time 1498324931.724935, -------------- SYN_REPORT ------------
Event: time 1498324932.652916, type 4 (EV_MSC), code 4 (MSC_SCAN), value c0183
Event: time 1498324932.652916, type 1 (EV_KEY), code 226 (KEY_MEDIA), value 1
Event: time 1498324932.652916, -------------- SYN_REPORT ------------
Event: time 1498324932.812954, type 4 (EV_MSC), code 4 (MSC_SCAN), value c0183
Event: time 1498324932.812954, type 1 (EV_KEY), code 226 (KEY_MEDIA), value 0
Event: time 1498324932.812954, -------------- SYN_REPORT ------------
Event: time 1498324933.748907, type 4 (EV_MSC), code 4 (MSC_SCAN), value c0192
Event: time 1498324933.748907, type 1 (EV_KEY), code 140 (KEY_CALC), value 1
Event: time 1498324933.748907, -------------- SYN_REPORT ------------
Event: time 1498324933.884934, type 4 (EV_MSC), code 4 (MSC_SCAN), value c0192
Event: time 1498324933.884934, type 1 (EV_KEY), code 140 (KEY_CALC), value 0
Event: time 1498324933.884934, -------------- SYN_REPORT ------------
Event: time 1498324938.084936, type 4 (EV_MSC), code 4 (MSC_SCAN), value 10082
Event: time 1498324938.084936, type 1 (EV_KEY), code 142 (KEY_SLEEP), value 1
Event: time 1498324938.084936, -------------- SYN_REPORT ------------
Event: time 1498324938.100912, type 4 (EV_MSC), code 4 (MSC_SCAN), value 10082
Event: time 1498324938.100912, type 1 (EV_KEY), code 142 (KEY_SLEEP), value 0
Event: time 1498324938.100912, -------------- SYN_REPORT ------------
(II) config/udev: Adding input device Logitech USB Receiver (/dev/input/mouse1)
(**) Logitech USB Receiver: Applying InputClass "system-keyboard"
(**) Logitech USB Receiver: Applying InputClass "Logitech USB TrackBall"
(**) Logitech USB Receiver: Applying InputClass "Logitech M570 Trackball"
(II) Using input driver 'evdev' for 'Logitech USB Receiver'
(**) Option "SendCoreEvents" "true"
(**) Logitech USB Receiver: always reports core events
(**) evdev: Logitech USB Receiver: Device: "/dev/input/by-id/usb-Logitech_USB_Receiver-if02-event-mouse"
(WW) evdev: Logitech USB Receiver: device file is duplicate. Ignoring.
(EE) PreInit returned 8 for "Logitech USB Receiver"
(II) UnloadModule: "evdev"
(II) config/udev: Adding input device Logitech USB Receiver (/dev/input/event11)
(**) Logitech USB Receiver: Applying InputClass "evdev keyboard catchall"
(**) Logitech USB Receiver: Applying InputClass "system-keyboard"
(**) Logitech USB Receiver: Applying InputClass "evdev keyboard catchall"
(**) Logitech USB Receiver: Applying InputClass "libinput keyboard catchall"
(II) Using input driver 'libinput' for 'Logitech USB Receiver'
(**) Logitech USB Receiver: always reports core events
(**) Option "Device" "/dev/input/event11"
(**) Option "_source" "server/udev"
(II) event11 - (II) Logitech USB Receiver: (II) is tagged by udev as: Keyboard
(II) event11 - (II) Logitech USB Receiver: (II) device is a keyboard
(II) event11 - (II) Logitech USB Receiver: (II) device removed
(**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:14.0/usb1/1-6/1-6:1.0/0003:046D:C517.000D/input/input18/event11"
(II) XINPUT: Adding extended input device "Logitech USB Receiver" (type: KEYBOARD, id 11)
(**) Option "xkb_model" "microsoftpro"
(**) Option "xkb_layout" "gb"
(**) Option "xkb_options" "terminate:ctrl_alt_bksp"
(II) event11 - (II) Logitech USB Receiver: (II) is tagged by udev as: Keyboard
(II) event11 - (II) Logitech USB Receiver: (II) device is a keyboard
(II) config/udev: Adding input device Logitech USB Receiver (/dev/input/event12)
(**) Logitech USB Receiver: Applying InputClass "evdev pointer catchall"
(**) Logitech USB Receiver: Applying InputClass "evdev keyboard catchall"
(**) Logitech USB Receiver: Applying InputClass "system-keyboard"
(**) Logitech USB Receiver: Applying InputClass "evdev pointer catchall"
(**) Logitech USB Receiver: Applying InputClass "evdev keyboard catchall"
(**) Logitech USB Receiver: Applying InputClass "Logitech USB TrackBall"
(**) Logitech USB Receiver: Applying InputClass "Logitech M570 Trackball"
(**) Logitech USB Receiver: Applying InputClass "libinput pointer catchall"
(**) Logitech USB Receiver: Applying InputClass "libinput keyboard catchall"
(II) Using input driver 'libinput' for 'Logitech USB Receiver'
(**) Option "SendCoreEvents" "true"
(**) Logitech USB Receiver: always reports core events
(**) Option "Device" "/dev/input/by-id/usb-Logitech_USB_Receiver-if02-event-mouse"
(**) Option "_source" "server/udev"
(EE) Failed to look up path '/dev/input/event13'
(II) event13: opening input device '/dev/input/event13' failed (No such device).
(II) event13 - failed to create input device '/dev/input/event13'.
(EE) libinput: Logitech USB Receiver: Failed to create a device for /dev/input/by-id/usb-Logitech_USB_Receiver-if02-event-mouse
(EE) PreInit returned 2 for "Logitech USB Receiver"
(II) UnloadModule: "libinput"
Eu também tenho um trackball M570 que o receptor está obviamente conectando, embora já esteja conectado através de um receptor universal.