Good to Know Database

CentOS 5: LCD-Anzeige der Toshiba Magnia SG-Serie ansteuern


1. Einleitung

In diesem Tutorial möchte ich beschreiben wie Sie unter CentOS 5 die LCD-Anzeige der Toshiba Magnia SG-Serie ansteuern können. Am Ende dieses Tutorials können Sie die Ausgaben am Display selber konfigurieren und den Appliance-Server mit Hilfe des Power-Buttons herunterfahren.

2. Programme installieren

Damit man etwas auf dem Display ausgeben kann und die Tasten funktionieren, benötigt man zwei Programme welche man erst kompilieren muss. Dazu benötigen Sie den gcc welchen Sie jetzt installieren sollten wenn er noch nicht installiert ist.

[root@centos5 ~]# yum install gcc

Laden Sie sich anschließend das Sourcecode-Archiv herunter und entpacken es unter /usr/src.

[root@centos5 ~]# cd /usr/src/
[root@centos5 src]# wget http://www.gtkdb.de/download_57.html -O sg-source1.1.tar.gz
[root@centos5 src]# tar xzf sg-source1.1.tar.gz

Nachdem Sie das Archiv entpackt haben kompilieren Sie die beiden Programme wie folgt.

[root@centos5 src]# cd sg-source1.1
[root@centos5 sg-source1.1]# gcc lcdkbd.c -o lcdkbd && strip lcdkbd
[root@centos5 sg-source1.1]# gcc setlcd.c -o setlcd && strip setlcd

Kopieren Sie anschließend die kompilierten Programme in das Verzeichnis /usr/bin/.

[root@centos5 sg-source1.1]# cp lcdkbd setlcd /usr/bin/

Sie können bereits jetzt den ersten Text auf der LCD-Anzeige ausgeben. Dazu rufen Sie das Programm setlcd mit der Option -c auf und übergeben den gewünschten Text in Anführungszeichen. Die Option -c benötigen Sie um den aktuellen Displayinhalt zu löschen und den Courser an den Anfang zu setzen.

[root@centos5 sg-source1.1]# /usr/bin/setlcd -c "Hallo Welt"

3. Skripte einrichten

Kommen wir nun zu den Ausgabeskripten welche automatisch von lcdkbd aufgerufen werden. Ich habe bereits einige Beispielskripte geschrieben welche Sie wie folgt herunterladen können. Kopieren Sie das Archiv ebenfalls nach /usr/src/, entpacken es und kopieren die Skripte nach /usr/local/sglcd/.

[root@centos5 sg-source1.1]# cd /usr/src/
[root@centos5 src]# wget http://www.gtkdb.de/download_59.html -O sg-skripte1.0-centos.tar.gz
[root@centos5 src]# tar xzf sg-skripte1.0-centos.tar.gz
[root@centos5 src]# cp -R sg-skripte1.0-centos/sglcd /usr/local/

Eine Auflistung der verfügbaren Skripte erhalten Sie im nächsten Abschnitt.

Testen Sie jetzt ob lcdkbd und die Skripte funktionieren. Dafür rufen Sie lcdkbd gefolgt von der Anzahl der Skripte auf. In diesem Fall werden nur die ersten fünf Skripte angegeben, da diese auf jedem System funktionieren sollten.

[root@centos5 src]# /usr/bin/lcdkbd 5

Überprüfen Sie jetzt ob die Tasten funktionieren und ob die Anzeige mit dem Taster für das Display umgeschaltet wird. Funktioniert soweit alles beenden Sie das Programm mit Strg+C. Jetzt können Sie lcdkbd in die rc.local eintragen, damit es beim Booten automatisch gestartet wird. Öffnen Sie deshalb die Datei rc.local zum Bearbeiten.

[root@centos5 src]# vi /etc/rc.local

Fügen Sie nun am Ende der Datei folgende Zeile ein.

/usr/bin/lcdkbd 5 &

Hinweis: Die Anzahl der Skripte müssen Sie gegebenenfalls anpassen.

Damit sich die Magnia SGxx automatisch abschaltet, müssen Sie auch noch die halt.local editieren beziehungsweise erstellen wenn sie noch nicht existiert.

[root@centos5 src]# vi /sbin/halt.local

Die halt.local sollte zumindest die folgenden beiden Zeilen enthalten.

#!/bin/sh
/usr/bin/setlcd -1 ""

Hinweis: Die Option -1 steht für eine PowerDownTime von 10 Sekunden. Sollten Sie eine längere PowerDownTime benötigen, stehen ihnen noch die Optionen -3 und -6 zur Verfügung.

Damit die halt.local beim Herunterfahren ausgeführt wird, müssen Sie die Zugriffsrechte noch anpassen.

[root@centos5 src]# chmod +x /sbin/halt.local

4. Beispielskripte

In diesem Abschnitt möchte ich kurz die Skripte, welche Sie hier downloaden können, auflisten.

Datum und Uhrzeit

setlcd -c "   `date "+%d.%m.%Y"`" "    `date +%T`"

IP-Adresse

setlcd -c "eth0:" `ifconfig eth0 | grep inet | cut -d ":" -f 2 | cut -d " " -f 1`

Trafficanzeige

setlcd -c "RX: `ifconfig eth0 | grep "RX bytes" | cut -d "(" -f 2 | cut -d ")" -f 1`" "TX: `ifconfig eth0 | grep "TX bytes" | cut -d "(" -f 3 | cut -d ")" -f 1`"

Status des DHCP-Servers

setlcd -c "DHCP-Server:" `service dhcpd status | sed -e 's/dhcpd //' | cut -d")" -f2 | sed -e 's/^ //' -e 's/\.//g'`

Status des Samba-Servers

setlcd -c "Samba:" `service smb status | grep smbd | sed -e 's/smbd //' | cut -d")" -f2 | sed -e 's/^ //' -e 's/\.//g'`

Status des NFS-Servers

setlcd -c "NFS-Server:" `service nfs status | grep nfsd | sed -e 's/nfsd //' | cut -d")" -f2 | sed -e 's/^ //' -e 's/\.//g'`

Status des Apache2-Servers

setlcd -c "Apache2:" `service httpd status | sed -e 's/httpd //' | cut -d")" -f2 | sed -e 's/^ //' -e 's/\.//g'`

Status des MySQL-Servers

setlcd -c "MySQL:" `service mysqld status | sed -e 's/mysqld //' | cut -d")" -f2 | sed -e 's/^ //' -e 's/\.//g'`

5. Downloads

sg-source1.0.tar.gz
sg-source1.1.tar.gz
sg-skripte1.0-centos.tar.gz


Dieser Eintrag wurde am 11.09.2010 erstellt und zuletzt am 24.01.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_33_1061.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer