IServ-Infodisplay
Der Schulserver IServ bietet viele spannende Funktionen. Eine davon ist das Infodisplay, welches Informationen und Pläne (z.B. Vertretungspläne) nach Bedarf anzeigt. Dabei kann man den Zugriff in vier verschiedene Stufen einschränken:
- nicht sichtbar (z.B. für Test-Zwecke)
- Nur über geheime URL (IServ gibt dann einen Link aus, über den das Infodisplay erreichbar ist)
- Nur im lokalen Netz (wird allen Benutzern des IDesk angezeigt, wenn diese sich im lokalen Netz befinden, also auf einem Rechner im Schulnetz angemeldet sind)
- Öffentlich (für alle Benutzer auch ohne Anmeldung, auch Zuhause, weltweit öffentlich, sichtbar)
Unabhängig davon sind die Infodisplay allen Benutzern sichtbar, die das Recht "Infobildschirme verwalten" zugewiesen bekommen haben.
Im Debacher-Wiki findet sich eine Anleitung, wie ein normaler Windows-Rechner als Infodisplay konfiguriert werden kann.
Raspberry Pi als Infobildschirm
Der Raspberry Pi ist ein spannender Computer. Für sehr wenig Geld (~60 Euro) erhält man einen inzwischen schon recht leistungsstarken Kleinstcomputer.
Dieser eignet sich natürlich perfekt als Infodisplay, da der Stromverbrauch mehr als verkraftbar ist.
Auf dem Pi installieren wir nach der Installation von Raspbian das Paket Iceweasel (Firefox) nach:
apt-get update apt-get install iceweasel
Nach einem Start von Iceweasel setzen wir dann das Infodisplay als Startseite:
http://iserv/idesk/infodisplay/
Diese relativ allgemeine URL bietet uns später die Möglichkeit, individuell im IDesk auszuwählen, welcher Infobildschirm angezeigt werden soll. Dafür muss der Raspberry Pi als Rechner in der Rechnerverteilung installiert sein und zusätzlich unter Infobildschirm -> Verwalten -> Anzeigegeräte hinzugefügt werden. Es ist auch möglich, zum Beispiel morgens einen anderen Infobildschirm anzuzeigen, als nachmittags.
In Iceweasel installieren wir nach dem Hinzufügen der Startseite dann die Extension r-kiosk nach, die leider nur noch direkt über die Firefox-Respository installiert werden kann. (Wichtig: Danach muss Iceweasel für Änderungen über die Konsole gekillt und anschließend im abgesicherten Modus gestartet werden. Also bitte alles kontrollieren!)
Es empfiehlt sich noch zu konfigurieren, dass Iceweasel nach einem Absturz (zum Beispiel ein Killen über die Konsole) nicht die Restore-Seite, sondern unsere Startseite anzeigt. Dafür korrigieren wir unter
about:config
den Wert von
browser.sessionstore.resume_from_crash
von true auf false (durch einen einfachen Doppelklick)
Ist das geschehen, müssen wir noch den Bildschirmschoner deaktivieren und Iceweasel in den Autostart (/home/pi/.config/lxsession/LXDE-pi/autostart) mit aufnehmen:
@lxpanel --profile LXDE @pcmanfm --desktop --profile LXDE #@xscreensaver -no-splash @/usr/bin/iceweasel
Energie sparen
Das Bild muss nicht die ganze Nacht laufen, deshalb benutzen wir zwei Shell-Scripte, die per Crontab aufgerufen werden. (Quelle: Debacher-Wiki/IServ)
Die Shell-Skripte erstellen wir einfach mit VIM oder einem anderen Editor.
Ausschalten (/home/pi/monitor-aus.sh)
vi /home/pi/monitor-aus.sh
#!/bin/bash /usr/bin/tvservice --off
Einschalten (monitor-an.sh)
vi /home/pi/monitor-an.sh
#!/bin/bash #/usr/bin/tvservice --explicit="DMT 51 DVI" && chvt 1 && chvt 7 /usr/bin/tvservice -p && chvt 1 && chvt 7
Die erste Version ist besonders für Monitore gedacht, die per HDMI-auf-DVI-Adapter an den Pi angeschlossen sind. Hier muss man je nach Monitor oft eine Auflösung erzwingen, da die Adapter das Signal verunstalten, sodass der Pi nicht mehr ordentlich erkennen kann, welche Auflösung die Beste ist. Die möglichen Modi finden sich hier. Wichtig ist, dass man nach dem Starten des TV-Services einmal auf die 1. Konsole und dann zurück auf die grafische wechselt, sonst bleibt der Bildschirm schwarz. (http://pi-buch.info/?p=413)
Die Änderungen müssen zudem einmal in
sudo vi /boot/config.txt
vorgenommen werden. Hier setzt man
hdmi_drive=1 für Normal DVI mode (No sound) hdmi_group=2 für DMT (in meinem Fall präferiert) # und einen entsprechenden Modus hdmi_mode=51
(Genaue Werte siehe http://elinux.org/RPiconfig#Video_mode_options)
Danach sollte der Pi sowohl beim Start als auch beim Ausführen der Skripte die richtige Auflösung anzeigen (Bitte auch #Overscan beachten!).
Bildschirmschoner abschalten
Zu dem sollte der Bildschirmschoner deaktiviert werden:
sudo vi /etc/X11/xinit/xinitrc
#!/bin/sh # /etc/X11/xinit/xinitrc # # global xinitrc file, used by all X sessions started by xinit (startx) xset s off # aktiviert keinen Bildschirmschoner xset -dpms # deaktiviert DPMS (Energy Star) Features. xset s noblank # deakviviert blank the video device # invoke global X session script . /etc/X11/Xsession
und
sudo vi etc/kbd/config
BLANK_TIME=0
(vgl. Debacher-Wiki
Crontab
Den Crontab konfigurieren wir am Besten als Benutzer root:
sudo crontab -e
Hierbei ist es wichtig, das Display anzugeben (-d :0.0) Dann binden wir die Scripte in Crontab zu schultypischen Uhrzeiten ein:
# m h dom mon dow command 00 20 * * * /home/pi/monitor-aus.sh 00 07 * * * /home/pi/monitor-an.sh
Overscan
Falls das Bild des Pis den Bildschirm nicht komplett ausfüllt, kann folgende Einstellung Abhilfe schaffen. Wir rufen in der Shell folgenden Befehl auf:
sudo raspi-config
und schalten unter Adavnced Options -> Overscan auf "Disable". Nach einem Neustart sollte der Pi der Bild voll ausfüllen.