MacBook Pro 2010, 4.13.0-32-generic, 16.04.3 со всеми обновлениями. Я пытаюсь переконфигурировать ключи ввода, созданные при использовании любого из пультов Apple со встроенным приемником. Для справки, вот изображение пульта, я имею в виду: Apple-Remote-Silver, для которого имеется следующая комбинация клавиш: вверх -> KEY_VOLUMEUP, вниз -> KEY_VOLUMEDOWN, слева -> KEY_BACK, вправо -> KEY_FORWARD, центр -> KEY_ENTER, меню -> KEY_MENU, play / pause -> KEY_PLAYPAUSE
$ ir-keytable -d /dev/input/event6
Name: Apple Computer, Inc. IR Receiver
bus: 3, vendor/product: 05ac:8242, version: 0x0111
Обратите внимание, что информация, содержащаяся в ir-keytable, очень короткая, не содержащая ничего, что мы не могли понять с lsusb. Никакой keymap не предоставляется.
$ 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)
Кажется, что я не могу использовать эту комбинацию:
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
Задание любого протокола с -p, кроме rc- 5 приводит к segfault без выхода журнала. Кроме того, похоже, что ИК-приемник обнаружен как клавиатура, возможно, объясняя отсутствие информации, специфичной для IR, или информацию, относящуюся к удаленной конкретной ситуации:
$ 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)]
Пульт дистанционного управления работает, но я бы чтобы иметь возможность переназначить кнопки во что-то другое. Это кажется невероятно трудным. ir-keytable run, указывающий только устройство, создает двухстрочный вывод без полезной информации. Возможно ли это?