MacBook Pro 2010, 4.13.0-32-genérico, 16.04.3 com todas as atualizações. Estou tentando reconfigurar as chaves de entrada geradas ao usar qualquer um dos controles remotos da apple com o receptor integrado. Para referência, aqui está uma imagem do controle remoto, quero dizer: Apple-Remote-Silver para o qual o mapa de teclado é o seguinte: up - > KEY_VOLUMEUP, abaixo - > KEY_VOLUMEDOWN, à esquerda - > KEY_BACK, certo - > KEY_FORWARD, botão central - > KEY_ENTER, menu - > KEY_MENU, reproduzir / pausar - > KEY_PLAYPAUSE
$ ir-keytable -d /dev/input/event6
Name: Apple Computer, Inc. IR Receiver
bus: 3, vendor/product: 05ac:8242, version: 0x0111
Observe que as informações que o ir-keytable fornece são muito curtas, contendo nada que não pudemos descobrir com o lsusb. Nenhum mapa de teclado é fornecido.
$ evtest /dev/input/event6
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0x5ac product 0x8242 version 0x111
Input device name: "Apple Computer, Inc. IR Receiver"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 28 (KEY_ENTER)
Event code 114 (KEY_VOLUMEDOWN)
Event code 115 (KEY_VOLUMEUP)
Event code 139 (KEY_MENU)
Event code 158 (KEY_BACK)
Event code 159 (KEY_FORWARD)
Event code 164 (KEY_PLAYPAUSE)
Key repeat handling:
Repeat type 20 (EV_REP)
Repeat code 0 (REP_DELAY)
Value 250
Repeat code 1 (REP_PERIOD)
Value 33
Properties:
Testing ... (interrupt to exit)
Não consigo obter o mapa de teclado usado desta forma:
sudo ir-keytable -r -d /dev/input/event6
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
scancode 0xc0000 = KEY_RESERVED (0x00)
Enabled protocols: lirc rc-5 jvc sony sanyo mce-kbd rc-6 sharp xmp
Especificar qualquer protocolo com -p
, exceto rc-5, resulta em um segfault sem saída de log.
Além disso, parece que o receptor de IR é detectado como um teclado, talvez explicando a falta de informações específicas de IR, ou informações específicas de remoto em geral:
$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ bcm5974 id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ Apple Inc. Apple Internal Keyboard / Trackpad id=10 [slave keyboard (3)]
↳ Built-in iSight: Built-in iSigh id=12 [slave keyboard (3)]
↳ Apple Computer, Inc. IR Receiver id=13 [slave keyboard (3)]
O controle remoto funciona, mas eu gostaria de poder remapear os botões em outra coisa. Isso parece incrivelmente difícil. ir-keytable executado apenas especificando um dispositivo produz uma saída de duas linhas sem informações úteis. É mesmo possível?