Ich habe meinen Rasberry PI 2 Model B mit der aktuellen Version von OpenELEC (7.0 beta 3, interne Version 6.95.3) mit dem Remote Pi Board von MSL Digital Solutions erweitert.
Wie in der Anleitung von MSL Digital Solutions beschrieben (http://www.msldigital.com/pages/support-…board-plus-2015) habe ich die autostart.sh, das erste Script (irswitsch.sh) und das 2. Script (invoke shutdown in der OpenELEC-Version) installiert.
Shutdown, Startup und die Fernbedienung über IR funktionieren sehr gut.
Leider hat das System jedoch sporadisch, bei jedem 2. bis 3. Systemstart, Probleme die ihm zugewiesene IP-Adresse zu verwenden und ist dementsprechend nicht über IP ansprechbar. Die Zuweisung der IP-Adresse über DHCP sollte hierbei irrelevant sein, da das Problem auch bei einer festen IP-Adresse auftritt.
Sobald ich das LAN-Kabel ab- und wieder anstecke, bezieht das System sofort die richtige IP-Adresse und ist ansprechbar. Ich vermute das Problem im Bereich Timing beim Systemstart/Netzwerkschnittstelle. Hat evtl. jemand aus dem
Forum das Board in einer ähnlichen Konstellation am laufen, bzw. Erfahrung mit den Scritps von MSL?
Anbei die eingesetzten Scripts für Startup/Shutdown:
#!/bin/bash
# prevent restarting XBMC at shutdown. This is only used for OpenElec before V5
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 () {
# for OpenElec before V5
touch "$LOCKDIR/$LOCKFILE"
# for OpenElec V5 and later
systemctl stop kodi
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 > /dev/tty1
killall5 -18 $omit_pids break
done
sync
umount -a >/dev/null 2>&1
poweroff -f
}
echo "$GPIOpin1" > /sys/class/gpio/export
echo "in" > /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" > /sys/class/gpio/gpio$GPIOpin1/direction
echo "1" > /sys/class/gpio/gpio$GPIOpin1/value
sleep 3
safe_shutdown
fi
done
----------
#!/bin/bash
if [ "$1" != "reboot" ]; then
GPIOpin=15
GPIOpin1=14
echo "$GPIOpin" > /sys/class/gpio/export
# execute shutdown sequence on pin
echo "out" > /sys/class/gpio/gpio$GPIOpin/direction
echo "1" > /sys/class/gpio/gpio$GPIOpin/value
usleep 125000
echo "0" > /sys/class/gpio/gpio$GPIOpin/value
usleep 200000
echo "1" > /sys/class/gpio/gpio$GPIOpin/value
usleep 400000
echo "0" > /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" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio$GPIOpin1/direction
echo "1" > /sys/class/gpio/gpio$GPIOpin1/value
usleep 4000000
fi