Downloads
Mit lircremote kann die IR - Funktion von Programmen die LIRC nutzen getestet werden ohne eine reale Fernbedienung einrichten zu müssen.Features
lircremote:- Fernbedienung über Netzwerk
- Testen von Programmen in einer Virtuellen Maschine
- emuliert lirc wahlweise über
- /var/run/lirc/lircd
- IP-Adresse:Port z.B. 127.0.0.1:8765
- Frei definierbares Tastenlayout
- zwischen mehreren Layouts umschaltbar
Beschreibung
Ein Programm, das eine an LIRC angeschlossene Fernbedienung nutzt kann mit lircremote auch ohne Hardware Fernbedienung getestet werden.
- Die LIRC Schnittstelle wird üblicherweise über einen Unix Domain Socket bereit (oft auch IPC Socket genannt), der üblicherweise als /var/run/lirc/lircd definiert ist.
- Möglich ist auch eine Netzwerkverbindung über IP-Nummer:Port zu verwenden. Beide Schnittstellen werden von lircremote unterstützt.
Schreibrechte für lircremote in /var/run/lirc müssen eingerichtet werden.
lircremote stellt für jeden Tastendruck einen Datensatz bereit, der so auch von lirc gesendet wird.
- <KeyNummer> <Wiederholung> <KeyName> <SenderName> <linefeed>
- <KeyNummer>
- Eine Tastennummer von 000001 bis 000xxx (Anzahl derTasten)
- <Wiederholung>
- Anzahl der Widerholungen solange die Taste gedrückt bleibt
- <KeyName>
- Den Tasten Namen der wie wie modernen LIRC Versionen immer mit KEY_ beginnt z.B. KEY_UP KEY_DOWN KEY_MENU ... und somit weitgehend identisch ist.
- <SenderName>
- Den Namen des gewählten Remote Layouts
- <linefeed>
Konfiguration
Die Konfiguration besteht aus den Teilen:
Server
Der Server sendet die Tastencodes an das Programm
- 1.Checkbox: Server
- Der Server wird nur gestartet, wenn aktiv
- 2.Eingabefeld : IP / Socket
- z.B. /var/run/lirc/lircd
- z.B. /tmp/lircremote
- z.B. 192.168.1.0/24 alle Clients im localen Netzwerk
- 3.Eingabefeld: Port
- Muss Leer bleiben wenn ein IPC Socket benutzt wird
- Sonst: die Portnummer, die ist üblicherweise 8765
- 4.Checkbox: Linefeed
- hängt an jeden Datensatz einen Zeilenumbruch (notwendig für LIRC als Client)
- 5.Eingabefeld: Key Repeat Time
- Wiederholung des Tastendruckes alle xxx ms, solange der Button gedrückt ist
Client
Der Client empfangt die Tastencodes vom Server oder auch von LIRC um die Funktion von LIRC zu testen.
- 1.Checkbox: Client
- Der Client wird nur gestartet, wenn aktiv
- 2.Eingabefeld : IP / Socket
- z.B. /var/run/lirc/lircd
- z.B. /tmp/lircremote
- z.B. 192.168.1.10 (Für den Server mit der Adresse 192.168.1.10)
- z.B. 127.0.0.1 (Localhost)
- 3.Eingabefeld:Port
- Muss Leer bleiben wenn ein IPC Socket benutzt wird
- Sonst: die Portnummer ist üblicherweise 8765
lircremote.conf
Die lircremote.conf wird im Ordner ~/EasyApps/lircremote gespeichert( bei Windows im Ordner von lircremote)
So wird das Layout der virtuellen Fernbedienung(en) definiert:
// Define buttons with ... // NEWREMOTE:remote_name // define of multible remotes is possible // NEWLAYOUT // Layout is a grid for the buttons // BUTTON=SIZE;width;height;iconWidth;iconHeight // Size for all following buttons // BUTTON=row;col;name;icon_filename BUTTON=NEWREMOTE:Extended Remote BUTTON=SIZE;45;40;30;30 BUTTON=0;0;KEY_TIMER;:/img/img/appointment-new.png // this is a comment BUTTON=0;2;KEY_POWER;:/img/img/process-stop.png BUTTON=1;0;KEY_EPG;:/img/img/edit-paste.png BUTTON=1;1;KEY_CHANNEL;:/img/img/system-search.png BUTTON=1;2;KEY_CHANNELUP;:/img/img/list-add.png BUTTON=2;0;KEY_INFO;:/img/img/help-browser.png BUTTON=2;1;KEY_UP;:/img/img/go-up.png BUTTON=2;2;KEY_CHANNELDOWN;:/img/img/list-remove.png BUTTON=3;0;KEY_LEFT;:/img/img/go-previous.png BUTTON=3;1;KEY_OK;:/img/img/lchecked-blue.png BUTTON=3;2;KEY_RIGHT;:/img/img/go-next.png BUTTON=4;0;KEY_BACK;:/img/img/system-log-out.png BUTTON=4;1;KEY_DOWN;:/img/img/go-down.png BUTTON=4;2;KEY_MENU;:/img/img/go-home.png BUTTON=NEWLAYOUT BUTTON=SIZE;33;33;24;24 BUTTON=0;0;KEY_PAUSE;:/img/img/media-playback-pause.png BUTTON=0;1;KEY_START;:/img/img/media-playback-start.png BUTTON=0;2;KEY_STOP;:/img/img/media-playback-stop.png BUTTON=0;3;KEY_RECORD;:/img/img/media-record.png BUTTON=1;0;KEY_VIDEO_PREV;:/img/img/media-skip-backward.png BUTTON=1;1;KEY_REWIND;:/img/img/media-seek-backward.png BUTTON=1;2;KEY_LAST;:/img/img/media-seek-forward.png BUTTON=1;3;KEY_VIDEO_NEXT;:/img/img/media-skip-forward.png BUTTON=NEWLAYOUT BUTTON=SIZE;45;40;30;30 BUTTON=0;0;KEY_1; BUTTON=0;1;KEY_2; BUTTON=0;2;KEY_3; BUTTON=1;0;KEY_4; BUTTON=1;1;KEY_5; BUTTON=1;2;KEY_6; BUTTON=2;0;KEY_7; BUTTON=2;1;KEY_8; BUTTON=2;2;KEY_9; BUTTON=3;0;KEY_SETUP;:/img/img/applications-system.png BUTTON=3;1;KEY_0; BUTTON=3;2;KEY_MACRO;:/img/img/go-jump.png BUTTON=NEWLAYOUT BUTTON=SIZE;33;33;24;24 BUTTON=0;0;KEY_RED;:/img/img/led-red.png BUTTON=0;1;KEY_GREEN;:/img/img/led-green.png BUTTON=0;2;KEY_YELLOW;:/img/img/led-yellow.png BUTTON=0;3;KEY_BLUE;:/img/img/led-blue.png BUTTON=NEWREMOTE:Simple Remote BUTTON=SIZE;45;40;30;30 BUTTON=0;0;KEY_POWER;:/img/img/process-stop.png BUTTON=2;0;KEY_INFO;:/img/img/help-browser.png BUTTON=2;1;KEY_UP;:/img/img/go-up.png BUTTON=2;2;KEY_EPG;:/img/img/edit-paste.png BUTTON=3;0;KEY_LEFT;:/img/img/go-previous.png BUTTON=3;1;KEY_OK;:/img/img/lchecked-blue.png BUTTON=3;2;KEY_RIGHT;:/img/img/go-next.png BUTTON=4;0;KEY_BACK;:/img/img/system-log-out.png BUTTON=4;1;KEY_DOWN;:/img/img/go-down.png BUTTON=4;2;KEY_MENU;:/img/img/go-home.png BUTTON=NEWLAYOUT BUTTON=SIZE;45;40;30;30 BUTTON=0;0;KEY_1; BUTTON=0;1;KEY_2; BUTTON=0;2;KEY_3; BUTTON=1;0;KEY_4; BUTTON=1;1;KEY_5; BUTTON=1;2;KEY_6; BUTTON=2;0;KEY_7; BUTTON=2;1;KEY_8; BUTTON=2;2;KEY_9; BUTTON=3;0;KEY_SETUP;:/img/img/applications-system.png BUTTON=3;1;KEY_0; BUTTON=3;2;KEY_MACRO;:/img/img/go-jump.png
Beispielszenario
PC1 mit VDR und LIRC als Remote Receiver an IP-Adresse 192.168.1.100starte LIRC mit:
lircd -c 192.168.1.111:8765
starte VDR
remote.conf
LIRC.Up KEY_UP
LIRC.Down KEY_DOWN
...
LIRC.Back KEY_BACK
...
...
LIRC.Down KEY_DOWN
...
LIRC.Back KEY_BACK
...
...
PC2 mit lircremote an IP-Adresse 192.168.1.111
- Nur Servereinstellungen auswählen mit:
Port Nummer: 8765