Комбинация клавиш: работает только половина кнопок MCE R6

Я только что установил Ubuntu 16.04.3 LTS на настольном ПК. Я использую этот компьютер в качестве медиа / игрового ПК. У меня есть пульт управления Harmony 350 Control IR (MCE R6), который используется в основном для управления мультимедийным приложением, однако я хотел бы использовать некоторые из кнопок на пульте дистанционного управления для запуска приложений и, в противном случае, управления ПК.

Я сопоставляю кнопки с командами, используя меню «Настройки системы -> Клавиатура ->« Ярлыки ». Я использовал файл / lib / udev / keymaps / rc6_mce и поместил его в / etc / rc_keymaps

Большинство кнопок работают. Например, я набрал кнопку «Медиа», чтобы запустить Spotify, нажимая кнопку «Audio Media» моего пульта, чтобы запустить ее.

Успешно сопоставлен с Media

Но я не могу нарисуйте кнопку INFO моего пульта, чтобы запустить Kodi. Когда я отправляюсь назначать его, приложение Mapboard Mapping не «видит» его.

Оба ключа находятся в файле / etc / rc_keymaps / rc6_mce:

0x800f040d KEY_MEDIA 0x800f040f KEY_INFO

И когда я использую ir-keytable -t, оба работают так, как ожидалось, поэтому компьютер получает их:

1515875517.689915: event type EV_MSC(0x04): scancode = 0x800f040d 1515875517.689915: event type EV_KEY(0x01) key_down: KEY_MEDIA(0x00e2) 1515875517.689915: event type EV_SYN(0x00). 1515875517.964577: event type EV_KEY(0x01) key_up: KEY_MEDIA(0x00e2) 1515875517.964577: event type EV_SYN(0x00). 1515875518.928910: event type EV_MSC(0x04): scancode = 0x800f040f 1515875518.928910: event type EV_KEY(0x01) key_down: KEY_INFO(0x0166) 1515875518.928910: event type EV_SYN(0x00). 1515875519.212562: event type EV_KEY(0x01) key_up: KEY_INFO(0x0166) 1515875519.212562: event type EV_SYN(0x00).

Но при попытке сопоставить их, приложение ярлыка клавиатуры увидит только KEY_MEDIA.

И снова это не только эти две кнопки. Эти два являются просто хорошими примерами, потому что они настолько похожи. Работает много других кнопок (FastForwrd, Rewind, Record и т. Д.), И много нет (вся цифровая панель, меню, руководство и т. Д.) С той же проблемой. ir-keytable отлично их видит, но приложение «Настройки клавиатуры» не работает.

Итак, что между клавишами и клавишами быстрого доступа, которые «едят», моя кнопка нажимает?

Спасибо.

0
задан 14 January 2018 в 00:34

2 ответа

Я понял это.

X11 понимает только коды сканирования до 255. Половина кнопок на пульте дистанционного управления использует более высокие scancodes. Итак, я сначала получил список всех scancodes, которые используют мои удаленные приложения:

ir-keytable --read --device = / dev / input / event19

(/ dev / input / event19 - это устройство, на котором мой пульт включен. Запуск ir-keytable без параметров скажет вам, какой у вас есть.)

Это создает список, подобный этому. Это число в скобках - это то, что нас интересует.

scancode 0x800f0410 = KEY_VOLUMEUP (0x73) scancode 0x800f0411 = KEY_VOLUMEDOWN (0x72) scancode 0x800f0412 = KEY_CHANNELUP (0x192) scancode 0x800f0413 = KEY_CHANNELDOWN (0x193) scancode 0x800f0414 = KEY_FASTFORWARD (0xd0)

Все, что в этом списке больше 0xFF, не будет работать. (Или, проще говоря, все, что имеет три цифры. Поэтому CHANNELUP (0x192) и CHANNELDOWN (0x193) в этом случае)

Затем я только что отредактировал файл / etc / rc_keymaps / rc6_mce и набрал эти кнопки для то, что я знал, было ниже.

Это также решило проблему, с которой я столкнулся с Kodi, когда некоторые кнопки не работали на моем пульте. KEY_INFO, KEY_STOP и некоторые другие. Я перенаправил их на обычные нажатия клавиш (KEY_INFO на KEY_I и т. Д.), И это тоже работает.

0
ответ дан 17 July 2018 в 23:08

Я понял это.

X11 понимает только коды сканирования до 255. Половина кнопок на пульте дистанционного управления использует более высокие scancodes. Итак, я сначала получил список всех scancodes, которые используют мои удаленные приложения:

ir-keytable --read --device = / dev / input / event19

(/ dev / input / event19 - это устройство, на котором мой пульт включен. Запуск ir-keytable без параметров скажет вам, какой у вас есть.)

Это создает список, подобный этому. Это число в скобках - это то, что нас интересует.

scancode 0x800f0410 = KEY_VOLUMEUP (0x73) scancode 0x800f0411 = KEY_VOLUMEDOWN (0x72) scancode 0x800f0412 = KEY_CHANNELUP (0x192) scancode 0x800f0413 = KEY_CHANNELDOWN (0x193) scancode 0x800f0414 = KEY_FASTFORWARD (0xd0)

Все, что в этом списке больше 0xFF, не будет работать. (Или, проще говоря, все, что имеет три цифры. Поэтому CHANNELUP (0x192) и CHANNELDOWN (0x193) в этом случае)

Затем я только что отредактировал файл / etc / rc_keymaps / rc6_mce и набрал эти кнопки для то, что я знал, было ниже.

Это также решило проблему, с которой я столкнулся с Kodi, когда некоторые кнопки не работали на моем пульте. KEY_INFO, KEY_STOP и некоторые другие. Я перенаправил их на обычные нажатия клавиш (KEY_INFO на KEY_I и т. Д.), И это тоже работает.

0
ответ дан 24 July 2018 в 13:40

Другие вопросы по тегам:

Похожие вопросы: