Ubuntu HD VDR mittels TechnoTrend S2-6400 - IRTrans Infrared Control System

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Vorwort

In meinem verwendeten Gehäuse ist bereits ein Infrarot Empfänger verbaut. Dieser kann mit der irtrans Software eingerichtet und verwendet werden. Soll heißen ich verwende nicht die mitgeliferte Fernbedienung über die TV Karte.

Fernbedienung

Ich verwende eine Logitech Harmony 885 Fernbedienung. Die Konfigurationssoftware gibt es kostenfrei auf der Logitech Webseite. Nachdem die Software installiert ist und die Fernbedienung per USB mit der Software verbunden ist gehts es mit der Konfiguration weiter.

Gerät hinzufügen

  • Geräte -> Gerät hinzufügen ->
Gerät:       PVR
Hersteller:  KLS
Modell:      VDR 1.6
  • -> Weiter -> Weiter -> Ich möchte dieses Gerät immer eingeschaltet lassen -> Weiter -> Fertig

Gerät umbenennen

  • Geräte -> PVR -> Einstellungen -> Dieses Gerät umbenennen -> Weiter ->
Geben Sie den neuen Namen ein:  VDR
  • -> Speichern -> Fertig

Tasten anpassen

  • Geräte -> VDR -> Einstellungen -> Tasten anpassen -> Weiter ->

Standardtasten:

Stumm:              Mute(Stumm)
Lauter:             VolumeUp(Lauter)
Leiser:             VolumeDown(Leiser)
Rot:                Red(Rot)
Grün:               Green(Grün)
Gelb:               Yellow(Gelb)
Blau:               Blue(Blau)
Kanal-:             ChannelDown(Kanal-)
Kanal+:             ChannelUp(Kanal+)
Prev:               ChannelPrev(Vorh. Kanal)
Oben:               DirectionUp(Nach oben)
Unten:              DirectionDown(Nach unten)
Links:              DirectionLeft(Nach links)
Rechts:             DirectionRight(Nach rechts)
Ok:                 Ok(OK)
Menü:               Menu(Menü)
Beenden:            Exit(Beenden)
Verzeichnis:        Guide(Verzeichnis)
Info:               Info
Stopp:              Stop(Stopp)
Skip Back:          SkipBack
Springen vorwärts:  SkipForward(Vorspringen)
Wiedergabe:         Play(Wiedergabe)
Aufnahme:           Record(Aufnahme)
Zurückspulen:       Rewind(Zurückspulen)
Schneller Vorlauf:  FastForward(Schneller Vorlauf)
Pause:              Pause
1:                  1
2:                  2
3:                  3
4:                  4
5:                  5
6:                  6
7:                  7
8:                  8
9:                  9
Plus:
0:                  0
E:

Weitere Tasten:

Ein-/Ausschalten:   PowerToggle(Ein-/Ausschalten)
Audio:              Audio
Untertitel:         Subtitle(Untertitel)
Kanäle:             Channels
Timer:              Timer(Zeitgeber)
Aufzeichnungen:     Recordings
Einstellungen:      Setup
Befehle:            Commands
Benutzer1:          Cmd1
Benutzer2:          Cmd2
Benutzer3:          Cmd3
Benutzer4:          Cmd4
Benutzer5:          Cmd5
Benutzer6:          Cmd6
Benutzer7:          Cmd7
Benutzer8:          Cmd8
Benutzer9:          Cmd9
Ein:                PowerOn(Ein)
Aus:                PowerOff(Aus)
  • -> Fertig -> Fertig

Fernbedienung aktualisieren

Zum Schluss muss die Fernbedienung aktualisiert werden damit die Konfiguration übertragen wird.

IRTrans

Installationsdateien herunterladen

cd /data/installfiles/
mkdir irtrans
cd irtrans/
wget http://www.irtrans.de/download/Server/Linux/irserver.tar.gz

IRTrans Installieren

cd /tmp
mkdir irtrans
cd irtrans/
tar -xzf /data/installfiles/irtrans/irserver.tar.gz
sudo su -
cd /tmp/irtrans/
./install.sh
exit

IRTrans Server starten und Verbindungstest durchführen

cd /usr/local/irtrans/
sudo ./irserver64 -loglevel 4 -debug_code /dev/ttyUSB0

Nach dem starten des IRTrans Servers kann mittels drücken einer beliebigen Taste auf der Fernbedienung der Infrarotempfang getestet werden.

Beispiel:

Init Server Socket done
IRServer64 Version 6.08.37
Init Events done
Opening Device: /dev/ttyUSB0
IRTRans Send Done: 1
Name   : 
Version: D5.08.10
FW SNo : 14035
Capab  : Power On; 
FW Cap : 0x3c8019
USB SNo: 
Node   : /dev/ttyUSB0

Init communication ...
[ 0]:                      D5.08.10     SN: 14035
Chdir to DB OK
Read routing OK
Read Switches OK
Open DIR: 12
Get Dirent: 552
Remote mce-mouse            compiled:     1 Timings -      1 Commands
Remote dream                compiled:     0 Timings -     36 Commands
Error 11 reading DB-File mediacenter.rem
**** CCF Error: ac1 [Remote: ccf.rem]
Remote ccf                  compiled:    20 Timings -     20 Commands
Remote mce-keyboard         compiled:     1 Timings -     77 Commands
Remote pace                 compiled:     2 Timings -     38 Commands
Remote kathrein-ufs         compiled:     2 Timings -     36 Commands
Remote sky-digital          compiled:     1 Timings -     31 Commands
Error 11 reading DB-File irtrans.rem
Error 11 reading DB-File dbox2.rem
Remote harmony885           compiled:     1 Timings -     40 Commands
Remote sky-hd               compiled:     1 Timings -     34 Commands
Get Dirent: 0
Duplicate Commands for ccf.1:   ccf.2  ccf.3  ccf.4
Duplicate Commands for ccf.2:   ccf.3  ccf.4
Duplicate Commands for ccf.3:   ccf.4
Duplicate Commands for pace.0:   pace.0-
Total:   9 Remotes  -  29 Timings -  313 Commands -    0 Calib. Commands
        0 Togglec. -  19 CCF Data -   0 CCF RAW  -    1 CCF Error
IRTRans Send Done: 1
IRTRans Send Done: 1
Select Return: 1
Local Socket connection request
Local Client 0 accepted on 12



[0.0]: LEN: 14  11000000001010
[0.0]: LEN: 14  11000000001010
[0.0]: LEN: 14  11000000001011

IRTrans Server als Daemon starten

cd /usr/local/irtrans/
sudo ./irserver64 -daemon -logfile /usr/local/irtrans/irserver.log /dev/ttyUSB0

IRTrans Client starten und Konfigurationsdatei (rem) für die Fernbedienung erstellen

IRTrans Client starten

cd /usr/local/irtrans/
sudo ./irclient64 localhost

Konfigurationsdatei für Fernbedienung erstellen

Hier wird eine passende Konfigurationsdatei für eure Fernbedienung erstellt. Falls Ihr ebenfalls wie ich eine Logitech Harmony 885 verwendet könnt Ihr einfach die untige Konfiguration kopieren.

  • Learn
1 - Send
2 - Learn
3 - Status

99 - Exit

Select command 2
  • Select remote

Hier wird ein Name für die Konfigurationsdatei vergeben.

Selected Remote: []

1 - Select remote
2 - Learn Timing
3 - Learn Command [Based on timing]
4 - Learn Command [Command with timing]
5 - Learn Command [RAW Data]

99 - Exit

Select command 1

Enter Remote Name: harmony885
  • Learn Command [Command with timing]

Hier werden die einzelnen Tasten der Fernbedienung angelernt. Es wird erst der Name der Taste festgelegt und danach wird man aufgefordert die Taste auf der Fernbedienung zu drücken. Einfach alle Tasten der Fernbedienung wie im untigen Beispiel durchgehen.

Selected Remote: [harmony885]

1 - Select remote
2 - Learn Timing
3 - Learn Command [Based on timing]
4 - Learn Command [Command with timing]
5 - Learn Command [RAW Data]

99 - Exit

Select command 4


Command Name: Up
Command Name: Down
Command Name: Menu
Command Name: OK
Command Name: Exit
Command Name: Left
Command Name: Right
Command Name: Red
Command Name: Green
Command Name: Yellow
Command Name: Blue
Command Name: 0
Command Name: 1
Command Name: 2
Command Name: 3
Command Name: 4
Command Name: 5
Command Name: 6
Command Name: 7
Command Name: 8
Command Name: 9
Command Name: INFO
Command Name: PLAY
Command Name: PAUSE
Command Name: STOP
Command Name: REC
Command Name: FWD
Command Name: REW
Command Name: SKIP
Command Name: REPLAY
Command Name: POWER
Command Name: CH+
Command Name: CH-
Command Name: PREV
Command Name: VOL+
Command Name: VOL-
Command Name: MUTE
Command Name: Audio
Command Name: Subtitle
Command Name: GUIDE
Command Name: Channels
Command Name: Timer
Command Name: Recordings
Command Name: Setup
Command Name: Commands
Command Name: User1
Command Name: User2
Command Name: User3
Command Name: User4
Command Name: User5
Command Name: User6
Command Name: User7
Command Name: User8
Command Name: User9 

Press Remote Button to learn ....OK
99 - Exit

harmony885.rem Konfigurationsdatei

Die Datei wird erstellt und automatisch unter folgendem Verzeichnis abgelegt:

/usr/local/irtrans/remotes/harmony885.rem
[REMOTE]
  [NAME]harmony885

[TIMING]
  [0][N]0[RC]2[RP]87[FREQ]36[RC5]

[COMMANDS]
  [Volume+][T]0[D]11000000000001
  [Volume-][T]0[D]11000000000010
  [Channel+][T]0[D]11000000000100
  [Channel-][T]0[D]11000000000011
  [Clear][T]0[D]11000000100000
  [Enter][T]0[D]11000000100010
  [Up][T]0[D]10001011000100
  [Down][T]0[D]10001011000101
  [Menu][T]0[D]10001011001001
  [OK][T]0[D]10001011001000
  [Exit][T]0[D]10001011001010
  [Left][T]0[D]10001011000110
  [Right][T]0[D]10001011000111
  [Red][T]0[D]10001011000000
  [Green][T]0[D]10001011000001
  [Yellow][T]0[D]10001011000010
  [Blue][T]0[D]10001011000011
  [0][T]0[D]11001011000000
  [1][T]0[D]11001011000001
  [2][T]0[D]11001011000010
  [3][T]0[D]11001011000011
  [4][T]0[D]11001011000100
  [5][T]0[D]11001011000101
  [6][T]0[D]11001011000110
  [7][T]0[D]11001011000111
  [8][T]0[D]11001011001000
  [9][T]0[D]11001011001001
  [INFO][T]0[D]10001011001100
  [PLAY][T]0[D]11001011110101
  [PAUSE][T]0[D]11001011110011
  [STOP][T]0[D]11001011110110
  [REC][T]0[D]11001011110111
  [FWD][T]0[D]11001011110100
  [REW][T]0[D]11001011110010
  [SKIP][T]0[D]11001011110001
  [REPLAY][T]0[D]11001011110000
  [POWER][T]0[D]11001010001100
  [CH+][T]0[D]11001011100000
  [CH-][T]0[D]11001011100001
  [PREV][T]0[D]11001011100010
  [VOL+][T]0[D]11001011010000
  [VOL-][T]0[D]11001011010001
  [MUTE][T]0[D]11001011001101
  [Audio][T]0[D]10001011010001
  [Subtitle][T]0[D]10001011010010
  [GUIDE][T]0[D]10001011001011
  [Channels][T]0[D]10001011010011
  [Timer][T]0[D]10001011001111
  [Recordings][T]0[D]10001011001110
  [Setup][T]0[D]10001011010000
  [Commands][T]0[D]10001011001101
  [User1][T]0[D]10001011110000
  [User2][T]0[D]10001011110001
  [User3][T]0[D]10001011110010
  [User4][T]0[D]10001011110011
  [User5][T]0[D]10001011110100
  [User6][T]0[D]10001011110101
  [User7][T]0[D]10001011110110
  [User8][T]0[D]10001011110111
  [User9][T]0[D]10001011111000

VDR remote.conf erweitern

Ihr könnt euch die remote.conf mittels VDR über das OSD-Anlernprogramm erstellen. Wenn Ihr euch die remote.conf manuell erstellen möchtet müssen die VDR-LIRC Kommandos mit den Tasten aus der obigen Konfigurationsdatei zugeordnet werden. Achtung! Die Namen sind Case Sensitive.

cd /etc/vdr
vi remote.conf
LIRC.Up         up
LIRC.Down       down
LIRC.Menu       menu
LIRC.Ok         ok
LIRC.Back       exit
LIRC.Left       left
LIRC.Right      right
LIRC.Red        red
LIRC.Green      green
LIRC.Yellow     yellow
LIRC.Blue       blue
LIRC.0          0
LIRC.1          1
LIRC.2          2
LIRC.3          3
LIRC.4          4
LIRC.5          5
LIRC.6          6
LIRC.7          7
LIRC.8          8
LIRC.9          9
LIRC.Info       info
LIRC.Play       play
LIRC.Pause      pause
LIRC.Stop       stop
LIRC.Record     rec
LIRC.FastFwd    fwd
LIRC.FastRew    rew
LIRC.Next       skip
LIRC.Prev       replay
LIRC.Power      power
LIRC.Channel+   ch+
LIRC.Channel-   ch-
LIRC.PrevChannel prev
LIRC.Volume+    vol+
LIRC.Volume-    vol-
LIRC.Mute       mute
LIRC.Audio      audio
LIRC.Subtitles  subtitle
LIRC.Schedule   guide
LIRC.Channels   channels
LIRC.Timers     timer
LIRC.Recordings recordings
LIRC.Setup      setup
LIRC.Commands   commands
LIRC.User1      user1
LIRC.User2      user2
LIRC.User3      user3
LIRC.User4      user4
LIRC.User5      user5
LIRC.User6      user6
LIRC.User7      user7
LIRC.User8      user8
LIRC.User9      user9

IRTRans in den Autostart

Skript erstellen

cd /etc/init.d/
sudo vi irtrans
#! /bin/sh
#
# VDR initscript 
#
### BEGIN INIT INFO
# Provides:          IRTrans
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: IRTrans
# Description:       Start IRTrans Server
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="IRTrans Server"
NAME=irtrans
SCRIPTNAME=/etc/init.d/$NAME

set -e

case "$1" in
  start)
        echo -n "Starting $DESC: "
        sudo /usr/local/irtrans/irserver64 -daemon -logfile /var/log/irserver.log /dev/ttyUSB0
        if [ ! -h /var/run/lirc/lircd ] ; then mkdir /var/run/lirc ; ln -s /dev/lircd /var/run/lirc/lircd ; fi
        echo "$NAME."
        ;;
  stop)
        echo -n "Stopping $DESC: "
        sudo killall irserver64
        echo "$NAME."
        ;;
  restart|force-reload)
        echo -n "Restarting $DESC: "
        $0 stop
        sleep 1
        $0 start
        ;;
  *)
        N=/etc/init.d/$NAME
        # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
        echo "Usage: $N {start|stop|restart|force-reload}" >&2
        exit 1
        ;;
esac

exit 0

Skript ausführbar machen

cd /etc/init.d
sudo chmod +x irtrans

IRTrans in den Autostart aufnehmen

sudo update-rc.d irtrans defaults 99 99

IRTrans aus dem Autostart entfernen

Falls das Skript mal nicht funktionieren sollte kann man dieses wieder aus dem Autostart entfernen:

sudo update-rc.d -f irtrans remove

Skripte/Module mit Root-Rechten und ohne Passwortaufforderung ausführen

Damit der Benutzer vdruser die benötigten Skripte/Module mit Root-Rechten und ohne Passwortaufforderung ausführen kann muss dies mittels visudo konfiguriert werden. Achtung! Die Einträge müssen untereinander und am Ende der Datei eingefügt werden.

sudo visudo
vdruser ALL=(ALL) NOPASSWD: /usr/local/irtrans/irserver64
vdruser ALL=(ALL) NOPASSWD: /etc/init.d/irtrans

System neu starten

Nach dem Neustart sollte der VDR sich mittels Fernbedienung steuern lassen.

sudo init 6

Links

  1. Logitech Homepage
  2. IRTrans Homepage