Scanpark Displays im Markt (Raspberry Pi)

Verbindung zu den Raspberry Pis

Der SSH Zugang zu den Raspberries läuft über den TeamViewer Zugang des Kunden. Herr Zander ist hier der Ansprechpartner: 016096072335

Die Teamviewer ID und das Passwort findet sich im Entry ("Raspberry Pi Teamviewer")


Der SSH Zugang für alle Pis ist:

User:pi

PW: Standartpasswort


Die IP Adressen der Pis gehen reichen von 192.169.1.78 bis 192.168.1.85.

 

Funktionsweise des Videoplayers

Im Pi home-Verzeichnis liegt das Script "load-display.sh".

In diesem wird zunächst eine Typo3-Instanz aufgerufen und dort die ID des YT-Videos geholt welches dargestellt werden soll.

Ausgabe des Scripts: cat load-display.sh

(displays.scandinavianpark.com) (display1.scandinavianpark.com bis display8.scandinavianpark.com)

Mithilfe des Programms "youtube-dl" wird dann das Video in den home/Videos Ordner gespeichert und anschließend wiedergegeben. Das Script "load-display.sh" wird beim Systemstart automatisch ausgeführt und stellt dann das Video in einer Endlosschleife dar.

Welcher Raspberry stellt welches display?.scanpark.com dar?

78 - display1.scandinavianpark.com
79 - display2.scandinavianpark.com
80 - display3.scandinavianpark.com
81 - Display wird von 85 gesteuert
82 - display8.scandinavianpark.com
83 - display6.scandinavianpark.com
84 - derzeit offline (Display wird von 85 gesteuert)
85 - display8.scandinavianpark.com
86 - derzeit offline (Tankstelle)

 

Einrichten einer neuen SD Karte

Mit dem Programm "Balena Etcher" lassen sich die SD Karten einfach und korrekt mit dem image erstellen. Dafür muss die Image Datei von https://www.raspberrypi.org/downloads/ geladen werden und dann der Anweisung innerhalb des Programms gefolgt werden.

Danach den Raspberry anschließen und starten.

Um den Raspberry vorzubereiten sind ein par kleinere Schritte notwendig:

  1. Nach dem Starten geht der Pi in die GUI Oberfläche dort muss man dann dem Wizard folgen. Das Einstellungen für das WLAN und die Aktualisierung kann man überspringen, diese folgen zu einem späteren Zeitpunkt.
  2. Nach dem Neustart, starten man ein Terminal und gibt sudo raspi-config ein und drückt Enter
    1. Die Boot Option wird umgestellt auf CLI mit Autologin
    2. Der Splash Screen wird deaktiviert
    3. SSH wird aktiviert
  3. nach dem reboot müssen einige Updates gemacht werden
    1. sudo apt update
    2. sudo apt-get update && sudo apt-get upgrade
    3. sudo apt-get install youtube-dl
    4. sudo reboot
  4. Damit die Videos heruntergeladen und abgespielt werden, muss das Script angelegt werden
    1. sudo nano load-display.sh
    2. Folgender Inhalt muss eingefügt werden
#!/bin/bash
for (( ; ; )) do

DISPLAY_URL="http://display8.scandinavianpark.com" FILE_PAGESTAT="pagestat.txt" FILE_PAGESTAT_TMP="pagestat-tmp.txt"

is_200_ok=$(wget --server-response $DISPLAY_URL -O $FILE_PAGESTAT_TMP 2>&1| grep -c 'HTTP/1.1 200 OK')

if [ $is_200_ok == 1 ]; then

  rm $FILE_PAGESTAT && mv $FILE_PAGESTAT_TMP $FILE_PAGESTAT
else

      rm $FILE_PAGESTAT_TMP
fi


VFILE=~/Videos/$(cat $FILE_PAGESTAT | sed -e "s/VIDEO=//g") VLINK=$(cat $FILE_PAGESTAT | sed -e "s/VIDEO=/https:\/\/www.youtube.com\/watch?v =/g")


if [ -f $VFILE ] then

      #wenn datei existiert, prüfen ob schon älter
      if [ `stat --format=%Y $FILE_PAGESTAT` -le $(( `date +%s` - 300 )) ]; then
              #wenn datei älter ist dann neuer download
              youtube-dl -o $VFILE $VLINK
              echo "$VFILE runterladen, zu alt"
      else
          echo "datei aus cache nehmen"
      fi

else

      #datei runterladen
      youtube-dl -o $VFILE $VLINK
      echo "$VFILE runterladen"
fi


VIDEO=$VFILE.mp4

if [ -a $VIDEO ] then omxplayer -o hdmi $VFILE.mp4 else omxplayer -o hdmi $VFILE.mkv fi

done
    1. Die URL muss noch an das entsprechende display angepasst werden und dann speichern.
    2. Zusätzlich müssen noch die Rechte angepasst werden:
      1. sudo chown pi:pi load-display.sh
      2. sudo chmod +x load-display.sh
  1. Um das WLAN im Scanpark zu aktivieren muss folgendes in die Config eingetragen werden:
    1. sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=DE

network={
	ssid="Displays"
	psk="ScandiDisplays2013"
}
  1. Um die Statische IP anzupassen muss der Abschnitt static IP in der dhcpcd.conf angepasst werden.
    1. sudo nano /etc/dhcpcd.conf
    2. folgendes austauschen :
# Example static IP configuration:
interface wlan0
static ip_address=192.168.1.79
#static ip6_address=fd51:42f8:caae:d92e::ff/64
static routers=192.168.1.236
static domain_name_servers= 8.8.8.8
  1. Anschließend ändern wir noch 2 Eintrage in der .baschrc sudo nano .bashrc
    1. Zuerst suchen wir den Abschnitt mit der Alias Definition und kommentieren das ll wieder ein. Zusätzlich setzen wir ans Ende hinter dem l noch ein a. So das die Zeile jetzt wie folgt aussieht : alias ll='ls -la'
    2. ganz ans Ende der Datei setzen wir den Befehl zum automatischen ausführen des load-display.sh scripts. ./load-display.sh
  2. sudo reboot und Ergebnis ansehen.