Inhalt
Installation
LibreElec installieren und erstmalig starten
Download von LibreElec und Installation auf SD-Karte wie hier beschrieben: https://libreelec.tv/downloads_new/
Dann den RaspberryPi mit der SD-Karte booten und Grundkonfiguration über Konfiguraitonsassistenten durchführen. Dabei ssh aktivieren.
Über ssh einloggen („tuxtv“ durch den Rechnernamen ersetzen, der im Konfigurationsassistenten eingegeben wurde):
ssh root@tuxtv
Sofern kein eigenes ssh-Passwort vergeben wurde, ist das Standard-Passwort libreelec
Freischaltcodes für Hardwaredecoder
Sofern Freischaltcodes für die Hardwaredecoder vorhanden sind, können diese in die config-Datei eingetragen werden:
mount -o remount,rw /flash vi /flash/config.txt
Im Bereich License keys
die entsprechenden Keys eintragen:
################################################################### # License keys to enable GPU hardware decoding for various codecs # # to obtain keys visit the shop at http://www.raspberrypi.com # ################################################################### decode_MPG2=0x00000000 decode_WVC1=0x00000000
Infrarotempfänger am GPIO einrichten
Der GPIO-Pin, an dem der Infrarotempfänger angeschlossen ist, muss in der config.txt
eingetragen werden:
mount -o remount,rw /flash vi /flash/config.txt
Dort im Abschnitt "End of default configuration"
folgendes eintragen (dabei die korrekte Pin-Nummer angeben):
################################ # End of default configuration # ################################ dtoverlay=gpio-ir,gpio_pin=17
System neu starten
mount -o remount,ro /flash reboot
Fernbedienung einrichten
Prinzipieller Funktionstest
Testen, ob GPIO-Konfiguration für lirc erkannt wurde:
dmesg | grep 'lirc'
[ 5.554017] rc rc0: lirc_dev: driver gpio_ir_recv registered at minor = 0, raw IR receiver, no transmitter
Testen, ob lirc-device vorhanden:
ls -l /dev/lirc*
Testen, ob Fernbedienung prinzipiell erkannt wird:
killall lircd mode2 -d /dev/lirc0
Zunächst wird das verwendet device ausgegeben (sollte mit dem zuvor ausgegebenen übereinstimmen):
Using driver default on device /dev/lirc0 Trying device: /dev/lirc0 Using device: /dev/lirc0
Wenn die Fernbedienung prinzipiell funktioniert, dann kommt beim Drücken von Tasten auf der Fernbedienung im Terminal Ausgaben ähnlich wie:
pulse 2670 space 804 pulse 505 space 396 pulse 482 space 394 pulse 454 space 847 pulse 451 space 850
Test beenden mit Strg+C und LibreElec neu starten:
reboot
Fernbedienung konfigurieren
Dienste stoppen:
systemctl stop kodi systemctl stop eventlircd
Mögliche Protokolle ermitteln:
ir-keytable
Supported protocols: other lirc rc-5 rc-5-sz jvc sony nec sanyo mce_kbd rc-6 sharp xmp
Scancodes der Fernbedienungstasten ermitteln:
ir-keytable -p <PROTOCOL> -t
Dabei die unterstützten Protokolle jeweils als <PROTOCOL>
eintragen. Jedes Protokoll muss separat getestet werden. Sofern das korrekte Protokoll eingegeben wurde, das die Fernbedienung benutzt, werden beim Drücken einer Taste auf der Fernbedienung Scancodes ausgegeben. Diese können dann in einer Codetabelle eingetragen werden.
Codetabelle erstellen:
vi /storage/.config/rc_keymaps/one-for-all
In der ersten Zeile wird der Name der Fernbedienung und das verwendete Protokoll eingetragen und in den Folgezeilen werden dann den jeweiligen Scancodes die entsprechenden Tasten zugeordnet, wie z. B.:
# table one-for-all, type: rc-6 0x800f0400 KEY_0 0x800f0401 KEY_1 0x800f0402 KEY_2 0x800f0403 KEY_3 0x800f0404 KEY_4 0x800f0405 KEY_5 0x800f0406 KEY_6 0x800f0407 KEY_7 0x800f0408 KEY_8 0x800f0409 KEY_9 0x800f040d KEY_MENU 0x800f0412 KEY_PAGEUP 0x800f0413 KEY_PAGEDOWN 0x800f041e KEY_UP 0x800f041f KEY_DOWN 0x800f0420 KEY_LEFT 0x800f0421 KEY_RIGHT 0x800f0422 KEY_OK 0x800f0423 KEY_BACK 0x800f0423 KEY_EXIT 0x800f0426 KEY_EPG 0x1010 KEY_VOLUMEUP 0x1011 KEY_VOLUMEDOWN 0x100d KEY_MUTE
Eine Datei mit allen möglichen Tastenbezeichnungen kann mit folgendem Befehl erstallt werden:
irrecord --list-namespace > namespace.txt
Die Codetabelle muss dann noch durch einen Eintag in der rc_maps.cfg
aktiviert werden:
vi /storage/.config/rc_maps.cfg
Dort den in der oben erstellten Keymap angegebenen Konfigurationsnamen (z. B. one-for-all) eintragen:
* * one-for-all
Konfiguration testen:
ir-keytable -c -w /storage/.config/rc_keymaps/one_for_all
ir-keytable -r
Mappingtabelle für KODI erstellen
Datei mit Mappingtabelle anlegen/bearbeiten:
vi /storage/.kodi/userdata/Lircmap.xml
<lircmap> <remote device="one-for-all-sat0847"> <up>KEY_UP</up> <Down>KEY_DOWN</Down> <Left>KEY_LEFT</Left> <Right>KEY_RIGHT</Right> <Select>KEY_OK</Select> <Back>KEY_BACK</Back> <Menu>KEY_MENU</Menu> <pageplus>KEY_PAGEUP</pageplus> <pageminus>KEY_PAGEDOWN</pageminus> <zero>KEY_0</zero> <one>KEY_1</one> <two>KEY_2</two> <three>KEY_3</three> <four>KEY_4</four> <five>KEY_5</five> <six>KEY_6</six> <seven>KEY_7</seven> <eight>KEY_8</eight> <nine>KEY_9</nine> <guide>KEY_GUIDE</guide> <stop>KEY_EXIT</stop> </remote> </lircmap>
System neu starten:
reboot
Fernbedienung testen
Erneut per ssh einloggen:
ssh root@tuxtv
Test der Fernbedienung starten:
irw
Bei einem Tastendruck auf der Fernbedienung sollte bei korrekter Konfiguration im Terminal eine entsprechende Meldung erscheinen, wie z. B.:
67 0 KEY_UP devinput