Raspberry Pi 2 mit RemotePi Board um IR erweitern

Der Raspberry Pi 2 ist ja im Gegensatz zu seinem Vorgänger wesentlich performanter und spielt eigentlich jegliche Medien einwandfrei ab. Was mir jedoch noch zu einem vollwertigen Mediaplayer fehlt ist ein Infrarot Empfänger (CIR) um den Pi in den Standby zu schicken und Ihn daraus auch wieder zu wecken. Die Firma MSL Digital hat eine Steckkarte entwickelt die den Raspberry Pi genau um diese Funktionen erweitern soll. Wir haben uns angeschaut ob die aktuelle Platine, das RemotePi Board Plus 2015, den Raspberry Pi 2 um eben diese Funktion zuverlässig erweitert.

Lieferumfang


Das RemotePi Board Plus 2015 kommt in einer durchsichtigen Plastikbox zusammen mit 1 Schraube und 3 Muttern zu euch nach Hause. Die sehr stabile Plastikbox verhindert hierbei zuverlässig eine Beschädigung der Platine auf dem Transportweg.

Softwareinstallation unter OpenELEC - Teil 1


Als erstes installieren wir ganz normal OpenELEC auf dem Raspberry Pi.

Als zweiten Schritt müssen wir das Shutdown-Script installieren. Hierzu muss in OpenELEC die Verbindung via SSH aktiviert werden. Sofern ihr dies nicht gleich bei der Ersteinrichtung gemacht habt, könnt ihr dies nachholen in dem ihr unter Einstellungen/OpenELEC/Services SSH aktivieren auswählt.

Dann müssen wir uns via SSH auf dem Raspberry Pi einwählen. Das geschieht am einfachsten mit dem Programm Putty.

Nach dem Runterladen müsst ihr das Programm nur starten, die IP des Raspberry Pi eingeben (1) und auf open (2) klicken.

-

-

Die Logindaten für OpenELEC lauten:

Login as: root
Password: openelec

Wenn ihr das eingegeben habt seit ihr via SSH auf dem Pi eingeloggt und wir können starten das Shutdown-Script zu installieren.

Dazu gebt ihr folgende Befehle ein:

cd .config
nano autostart.sh

Daraufhin öffnet sich ein Texteditor in den ihr folgenden Text kopiert:

#!/bin/bash
(/storage/.config/irswitch.sh)&

Nun drückt ihr STRG+X um den Editor zu verlassen und dann Y und Enter um die gerade erstellte Datei (autostart.sh) zu speichern.

Als nächste gebt ihr ein:

chmod +x autostart.sh
nano irswitch.sh

Damit öffnet sich dann wieder der Texteditor und dieses mal geben wir folgendes ein:

#!/bin/bash
# prevent restarting XBMC at shutdown
LOCKDIR="/var/lock/"
LOCKFILE="xbmc.disabled"
# this is the GPIO pin receiving the shut-down signal
GPIOpin1=14
# functions
add_omit_pids() {
omit_pids="$omit_pids -o $1"
}
safe_shutdown () {
touch "$LOCKDIR/$LOCKFILE"
add_omit_pids $(pidof connmand)
add_omit_pids $(pidof dbus-daemon)
killall5 -15 $omit_pids
for seq in `seq 1 10` ### do
usleep 500000
clear [htmlcode=29] /dev/tty1
killall5 -18 $omit_pids || break
done
sync
umount -a [htmlcode=29]/dev/null 2[htmlcode=29]&1
poweroff -f
}

echo "$GPIOpin1" [htmlcode=29] /sys/class/gpio/export
echo "in" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin1/direction
while true### do
sleep 1
power=$(cat /sys/class/gpio/gpio$GPIOpin1/value)
if [ $power != 0 ]### then
echo "out" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin1/direction
echo "1" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin1/value
sleep 3
safe_shutdown
fi
done

Das Ganze speichern wir dann wieder mit STRG+X, Y und Enter.

Als letzten schritt dann noch dies eingeben:

chmod +x irswitch.sh

Zwar kann der Raspberry Pi nach der Einrichtung des RemotePi Boards auch über das OpenELEC-Menü heruntergefahren werden, in diesem Fall würde ohne Extramaßnahmen der Strom von dem RemotePi Board aber nicht abgeschaltet werden.

Um dies zu erreichen, muss noch ein weiteres Script eingerichtet werden :

Gebt folgendes ein:

nano shutdown.sh

In dem Texteditor kopiert ihr jetzt folgenden Text:

#!/bin/bash
if [ "$1" != "reboot" ]### then
sleep 3
GPIOpin=15
GPIOpin1=14
echo "$GPIOpin" [htmlcode=29] /sys/class/gpio/export
# execute shutdown sequence on pin
echo "out" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin/direction
echo "1" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin/value
usleep 125000
echo "0" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin/value
usleep 200000
echo "1" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin/value
usleep 400000
echo "0" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin/value
# set GPIO 14 high to feedback shutdown to RemotePi Board
# because the irswitch.sh has already been terminated
echo "$GPIOpin1" [htmlcode=29] /sys/class/gpio/export
echo "out" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin1/direction
echo "1" [htmlcode=29] /sys/class/gpio/gpio$GPIOpin1/value
sleep 3
fi

Das ganze speichert ihr dann wieder mit STRG+X, Y und Enter.

Als letzten Schritt dann noch dies eingeben:

chmod +x shutdown.sh

Jetzt müsst ihr OpenELEC aus dem Menu heraus einmal neu starten.

ACHTUNG: Es ist wichtig das ihr den Raspberry Pi nicht über das SSH Menu herunter fahrt oder neu startet. Dies kann die SD Karte bzw. die OpenELEC Installation korrumpieren.

Damit ist Teil 1 der Softwareinstallation abgeschlossen.

Hardwareinstallation


Als nächstes installieren wir das RemotePi Board Plus 2015 auf unserem Pi.

Bitte stellt sicher das der Raspberry Pi ausgeschaltet und vom Strom getrennt ist.

Als erstes befestigt ihr die Schraube mit der ersten Mutter im vorderen rechten Loch (Ansicht vom SD-Kartenslot aus) und schraubt die zweite Mutter bis zur Mitte auf die eben befestigte Schraube.

Dann steckt ihr die Karte auf die links liegenden Pins ganz nach vorne.

Als letztes dreht Ihr die zweite Mutter so weit nach oben das das Board parallel zum Raspberry Pi liegt und fixiert das ganze dann am Ende mit der dritten Mutter.

Als letztes müsst ihr nun noch das Netzteil vom Raspberry Pi abziehen und dies direkt in das RemotePi Board stecken.

Softwareinstallation unter OpenELEC - Teil 2


Zu Beginn richten wir den Powerbutton ein. Dieser Befehl wird direkt auf dem RemotePi Board gespeichert, daher müssen wir Diesen auch direkt auf dem Board anlernen.

Dazu drückt ihr den Powerbutton auf dem RemotePi Board für ca. 10 Sekunden bis die LED rot und grün blinkt. Das Board befindet sich nun im Anlernmodus und ihr könnt durch das Drücken ein beliebigen Taste den Power-Button festlegen. Ich habe hier mal wieder unsere beliebte0 Testfernbedienung, die One For All URC-7962, zur Hilfe genommen und den Power-Button der MCE Einrichtung angelernt.

Nach dieser Einrichtung funktioniert das Herunterfahren und das Starten aus dem Standby des Raspberry Pi schon mal einwandfrei.

Jetzt müssen wir nur noch lirc aktivieren um die bereits hinterlegte MCE Konfiguration zu laden.

Dazu müsst ihr die SD-Karte noch einmal in euren PC stecken und die Datei config.txt aus dem Hauptverzeichnis öffnen. Bitte tut dies mit einem HTML Editor wie z.B. dem Kostenlosen Programm Notepad++. Der Windows Editor könnte die Datei falsch formatiert abspeichern und dann startet OpenELEC eventuell nicht mehr.

Nach dem Öffnen gebt ihr folgendes in die letzte Zeile ein:

dtoverlay=lirc-rpi

und dann speichert ihr die Datei wieder auf der SD-Karte ab.

Wenn ihr OpenELEC jetzt startet, funktioniert die Bedienung mit einer Standard MCE Fernbedienung sofort und ohne weitere Einstellungen.



Solltet ihr die die von MSL Digital Solutions Angebotene Fernbedienung benutzen wollen (es handelt sich hierbei um eine sehr günstige NoName DVD-Player Ersatzfernbedienung mit Philips Infrarot Codes) müsst ihr noch die folgenden Schritte ausführen damit diese auch funktioniert.

Als ersten Schritt müsst ihr in die Einstellungen gehen und das HDMI-CEC Modul deaktivieren. Dies findet ihr unter Einstellungen/System/Eingabegeräte/Geräte.

Jetzt meldet ihr euch wieder via Putty auf dem Raspberry Pi an und dieses mal gebt ihr folgendes ein:

cd .config
nano lircd.conf

Dann kopiert ihr diesen Text in den Texteditor:

# Please make this file available to others
# by sending it to lirc@bartelmus.de
#
# contributed by MSL Digital Solutions
#
# brand: Philips RC6 DVD
#
begin remote
name RemotePi1
bits 8
flags RC6|CONST_LENGTH
eps 30
aeps 100
header 2667 889
one 444 444
zero 444 444
pre_data_bits 13
pre_data 0xEFB
gap 108000
toggle_bit_mask 0x10000
rc6_mask 0x10000
min_repeat 2
suppress_repeat 6
begin codes
KEY_OK 0xA3
KEY_LEFT 0xA5
KEY_RIGHT 0xA4
KEY_DOWN 0xA6
KEY_UP 0xA7
KEY_EXIT 0x7C
KEY_PAUSE 0xD3
KEY_STOP 0xCE
KEY_SUBTITLE 0xB4
KEY_AUDIO 0xB1
KEY_PREVIOUS 0xDE
KEY_NEXT 0xDF
KEY_HOME 0x2E
KEY_INFO 0xF0
KEY_NUMERIC_0 0xFF
KEY_NUMERIC_1 0xFE
KEY_NUMERIC_2 0xFD
KEY_NUMERIC_3 0xFC
KEY_NUMERIC_4 0xFB
KEY_NUMERIC_5 0xFA
KEY_NUMERIC_6 0xF9
KEY_NUMERIC_7 0xF8
KEY_NUMERIC_8 0xF7
KEY_NUMERIC_9 0xF6
KEY_MUTE 0xF2
KEY_EPG 0x7D
end codes
end remote

Das speichert ihr dann wieder mit STRG+X, Y und Enter ab.

Als nächste macht ihr folgende Eingaben:

cd
cd .kodi
cd userdata
nano Lircmap.xml

Dann in den sich öffnenden Texteditor folgenden Text kopieren:

[htmlcode=30]lircmap[htmlcode=29]
[htmlcode=30]remote device="devinput"[htmlcode=29]
[htmlcode=30]start[htmlcode=29]KEY_HOME[htmlcode=30]/start[htmlcode=29]
[htmlcode=30]/remote[htmlcode=29]
[htmlcode=30]/lircmap[htmlcode=29]

Und ein letztes mal mit STRG+X, Y und Enter abspeichern.

Nun wieder über das OpenELEC Menu einmal neu starten und das RemotePi Board Plus 2015 ist fertig eingerichtet.

Jetzt könnt ihr den Raspberry Pi 2 wie einen vollwertigen Mediaplayer, inklusive hoch und runter fahren nutzen.

Das RemotePi Board in der Praxis


Der Hersteller hat hier einen sehr guten Infrarotempfänger verbaut der auch bei nicht genauem Zielen mit der Fernbedienung immer noch einwandfrei funktioniert.

Besonders Erwähnenswert ist auch, dass OpenELEC erst komplett heruntergefahren wird ehe der Raspberry Pi in den Standby-Modus geht. Das schließt ein korrumpieren der OpenELEC Installation durch plötzlichen Stromentzug komplett aus.

Wer den Raspberry Pi in einem Gehäuse betreiben will, muss dieses entweder entsprechend anpassen (das Board gibt es auch mit externem Infrarotempfänger und LEDs) oder man kauft sich für günstige 7,90 EUR gleich ein durchsichtiges Acrylgehäuse vom Hersteller mit.

Stromverbrauch


Lässt man den Raspberry Pi 2 laufen verbraucht dieser unter OpenELEC(wie in unserem Test des Raspberry Pi 2 erwähnt) knapp 3 Watt. Selbst im Standby benötigt der Pi immer noch 0,6W und aus diesem Zustand lässt sich der Pi nur durch trennen und wieder hinzufügen der Stromverbindung neu starten.

Durch das RemotePi Board Plus 2015 benötigt der Raspberry Pi 2 nur noch 0,1W im Standby und das Gerät wird sanft per Infrarotsignal herunter gefahren und auch wieder aufgeweckt.

Galerie

Bilder werden geladen ...

Fazit


Mein Fazit fällt sehr positiv aus, die Einrichtung ist ein wenig frickelig und ich habe mit einer nicht funktionierenden SD-Karte zu kämpfen gehabt was die Installation unnötig in die Länge gezogen hat. Wenn man weiß wie es geht, bzw. sich an diese Anleitung hält sollte das Thema aber in maximal 15 Minuten erledigt sein.

Das RemotePi Board Plus 2015 an sich funktioniert genau so wie der Hersteller es verspricht. Die Bedienung per Infrarot funktioniert hervorragend und auch das hoch und runter fahren ist einwandfrei möglich. Zusätzlich senkt das Board sogar den Standby Verbrauch noch mal um 0,5W auf 0,1W ab.

Ich finde das die 20,00 EUR die der Hersteller für das RemotePi Board Plus 2015 aufruft ein sehr fairer Preis sind und den Raspberry Pi 2 noch einmal etwas mehr zum sehr guten Mediaplayer macht. Ich kann das Board jedem Empfehlen der, wie ich, auf eine Bedienung inklusive hoch und runter fahren per Infrarot nicht verzichten möchte.

Link zum Hersteller:http://www.msldigital.com/

Zum Abschluss hier noch ein kleines YouTube Video des Herstellers:
[youtube=fOLIoRlQ1RE#t]

Änderung 22.03.2015
Neues Script hinzu gefügt (Shutdown via OpenELEC Menü).