Не можете заставить Kodi принимать ключи, испускаемые из python-uinput?
Я испускаю ключи из скрипта Python, используя python-uinput. Основные вещи, такие как вверх / вниз / ввод / выход.
Насколько я вижу, это прекрасно работает на моем рабочем столе, в терминале и с браузером. Но когда я запускаю Kodi, он, похоже, совсем не отвечает. Это как-то связано с тем, что это полноэкранное приложение?
NB: Я работаю с Raspbian на модели 3 Raspberry Pi.
1 ответ
Решение
Может быть, вам нужно сделать: sudo modprobe uinput
Следующий скрипт работает для меня, чтобы отправить функциональную клавишу 12 в тиски (эмулятор C64) на основе нажатия кнопки на GPIO:
import uinput
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(21, GPIO.IN, pull_up_down=GPIO.PUD_UP)
wasPressed=False
# set up keystroke input
device = uinput.Device([uinput.KEY_F12])
while True:
button_inactive = GPIO.input(21)
if not button_inactive and not wasPressed:
device.emit_click(uinput.KEY_F12)
print "sending F12"
wasPressed=True
if button_inactive:
wasPressed=False
time.sleep(0.1)
Обратите внимание, что я использовал uinput.KEY_F12 дважды. Скрипт должен быть запущен от имени пользователя root.