Configure o Apple IR Remote 16.04 MacBookPro6,2

0

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?

    
por Daniel Rodriguez 09.02.2018 / 05:01

0 respostas