manual_09_de

Ausgabe der Versionsnummer und eines kurzen Hilfetextes:

lcd4linux -h

Anzeige aller verfügbaren Treiber:

lcd4linux -l

Starten mit 'lcd4linux'.

Optionen:

lcd4linux [[:-c|key=val]] [[:-F]] [[:-f|config-file]] [[:-o|output]] [[:-q]] [[:-v]]
  • Einträge der Konfigurationsdatei überschreiben mit '-c key=val' (Schlüssel und Wert angeben)\
  • Nicht als Dienst starten mit '-F'\
  • Konfiguration aus 'config-file' holen, statt aus /etc/lcd4linux.conf: '-f config-file'\
  • Bild in Datei schreiben (nur Raster-Treiber): '-o output'\
  • Begrüßungstext unterdrücken mit '-q'\
  • Ausgabe von Debug-Informationen mit '-v'\
  • Ausgabe von mehr Debug-Informationen mit '-vv'\
  • zusätzliche Debug-Informationen (Socket Traffic) mit '-vvv'\

Wenn lcd4linux im Vordergrund läuft, schreibt es abhängig vom Level nach stdout oder stderr. Der Text-Treiber hat ein eigenes Diagnose-Fenster.\

Wenn es im Hintergrund gestartet wird (Standardverhalten), benutzt lcd4linux den Syslog-Dienst zum Loggen. Facility ist USER, Levels sind ERR, INFO und DEBUG.


Informationen zu unterstützten Displays und deren Konfiguration sind auf der Displays-Seite zu finden.


Die Konfigurationsdatei (standardmäßig /etc/lcd4linux.conf) hat ein sehr einfaches Format: Jede Zeile besteht aus einem Schlüssel und einem Wert, getrennt durch “Whitespaces” (das sind Leerzeichen oder Tabulatoren). Werte können Whitespaces enthalten, und sie können in einfachen oder doppelten Anführungszeichen eingeschlossen sein. Ein Schlüssel darf keine Whitespaces enthalten. Schlüssel sind NICHT case-sensitive (Groß- und Kleinschreibung spielt keine Rolle). Die Reihenfolge spielt keine Rolle. Leere Zeilen und Text in einer Zeile nach dem Zeichen '#' werden ignoriert. Soll das Zeichen '#' in einem Wert verwendet werden (z.B. für X11-Farben), muss es durch einen vorangestellten Backslash maskiert werden.

Aus Sicherheitsgründen (die Konfiguration kann Benutzernamen/Passwörter für Mail-Zugänge enthalten) muss die Konfigurationsdatei folgende Voraussetzungen erfüllen:

  • die Datei ist eine herkömmliche Datei (oder /dev/null)
  • der Besitzer (owner) ist der Besitzer des Programms
  • die Datei ist der Gruppe (group) nicht zugänglich
  • die Datei ist keinem anderen (other) zugänglich

Wenn lcd4linux als root gestartet wird, müssen die Rechte auf /etc/lcd4linux.conf folgendermaßen gesetzt sein:

chmod 600
chown root.root

Die Konfigurationsdatei enthält Informationen zu den verschiedenen Modulen von lcd4linux:

Allgemeine Optionen:

Quiet: Unterdrückt den Begrüßungstext (entspricht der Kommandozeilen-Option '-q')\

Standard: 0

Timing Optionen:

bis Version 0.9.10 wurde das Timing durch folgende Einträge kontrolliert:

tick: Zeit in Millisekunden zwischen Balken-Updates\

tack: Zeit in Millisekunden zwischen Text-Updates\

(Text kann weniger oft als Balken aktualisiert werden, damit eine gleichmäßige Balken-Anzeige und lesbarer Text erhalten wird)\

tau: Zeit-Konstante (in Millisekunden) für Dämpfungs-Funktionen (noch ungenutzt)\

ab Version 0.9.11 sind diese Einstellungen obsolet und wurden durch die folgenden Einträge ersetzt:

Tick.Text: Zeit in Millisekunden zwischen Text-Updates (Standard: 500 msec)\

(Text kann weniger oft als Balken aktualisiert werden, damit eine gleichmäßige Balken-Anzeige und lesbarer Text erhalten wird).\

Tick.bar: Zeit in Millisekunden zwischen Balken-Updates (Standard: 100 msec)\

Tick.icon: Zeit in Millisekunden zwischen Icon-Updates (Standard: 100 msec)\

(speziell animierte Icons können öfter als Text oder Balken aktualisiert werden, um eine gleichmäßige Anzeige zu erhalten).\

Hinweis: ein Icon-Update erfordert kein Einlesen von Daten und konsumiert deshalb nicht viel CPU-Zeit).\

Tick.gpo: Zeit in Millisekunden zwischen GPO-Updates (Standard: 100 msec)\

Datenspezifische Optionen:

overload: Systemlast -Schwellwert (Load Average) und Balken-Skalierung.\

Das Zeichen %L (unten zu sehen) zeigt ein '!' statt eines Leerzeichens, wenn die aktuelle Systemlast diesen Wert überschreitet.\

Last-Balken werden durch diesen Wert skaliert (load=overload ergibt 100%)\

battwarning: nicht dokumentiert (Standard: 10)\

!SetiDir: Verzeichnis, in dem Seti@home seine Datenfiles speichert\

Wifi.interface: Interface für Datensammlung (Standard: “wlan0”)\

Temperatur-Sensoren:

sensor1: Pfad zum ersten Temperatur-File (z.B. /proc/sys/dev/sensors/w83781d-isa-0290/temp1)\

Es ist wichtig den isa-Sensor zu benutzen, weil die i2c-Sensoren sehr langsam sind! \

sensor1_min: Temperatur bei der der entsprechende Balken beginnt\

sensor1_max: Temperatur bei der der Balken endet\

sensor1_factor: , sensor1_offset: Formel zur Berechnung der tatsächlichen Temperatur: display_value=raw_value*factor+offset\

Die Werte können in der Datei sensors.conf nachgeschlagen werden! \

sensor2..9_min, _max, _factor, _offset: Einträge für den 2. bis 9. Temperatur-Sensor\

Plugins:

x1: Auszuführendes Kommando, PATH=/usr/local/bin:/usr/bin:/bin, $X1…$X8 ist das Ergebnis von Kommando 1..8 in der Umgebung\

Tick_x1: Verzögerung in Ticks (überschreibt delay_x)\

Delay_x1: Verzögerung in Sekunden (Standard: 1)\

Max_x1: Maximalwert für Balken (Standard: 100)\

Min_x1: Minimalwert für Balken (Standard: 0)\

x2..9: Tick_x2..9, Delays_x2..9, Max_x2..9, Min_x2..9: Einträge für Plugins 2..9\

Mail/News:

Mailbox1: Die Zeichenkette kann eine einfache mbox-Datei oder ein pop3/imap4/nntp Server-String in folgendem Format sein:\

pop3:pass@]machineport\

imap4:pass@]machineportdir\

nntp:pass@]machineportdir\

Port hat standardmäßig den Wert 110 bzw. 143.\

Wird kein Verzeichnis (/dir) angegeben, wird INBOX verwendet.\

Wird ein Verzeichnis für nntp angegeben, muss es einen gültigen Namen mit '.' als Element-Trennzeichen besitzen.\

Wird kein Verzeichnis für nntp angegeben, werden alle ungelesenen Nachrichten abonnierter Gruppen aus Newsrc herangezogen.\

Delay_e1: Verzögerung in Sekunden für die Abfrage von Postfach 1 (Standard: 5)\

Mailbox2..9, Delay_e2..9: Einträge für die Postfächer 2..9\

Newsrc: Pfad/Name der .newsrc-Datei, welche die abonnierten Newsgruppen enthält.\

Hinweis: die Autorisierung bei Newsservern ist ungetestet.\

Hinweis: Benutzername und Passwort dürfen mit der obigen Syntax kein '/' enthalten.\

Treiberspezifische Optionen:

Display: der Name des Display-Treibers\

Jeder Treiber hat seine eigenen Konfigurations-Optionen (z.B. 'Port', 'Speed', …)\

Auf der Displays-Seite können Informationen zu unterstützten Displays und deren Konfiguration nachgeschlagen werden.

Display Optionen:

row1: in Zeile 1 anzuzeigender Text\

row2..max: in weiteren Zeilen anzuzeigender Text\

Der anzuzeigende Text kann bestimmte Anweisungen enthalten, welche durch entsprechende Werte ersetzt werden bzw. Balken oder Icons erzeugen:

\nnn schreibt das ASCII-Zeichen nnn (oktal)\

%token wird ersetzt durch den Wert von token\

%% schreibt das Zeichen '%'\

%$ schreibt das Zeichen '$'\

%& schreibt das Zeichen '&'\

$<direction><length><token>+<token> erzeugt einen Balken mit der angegebenen Richtung und Länge (in Zeichen) und dem Wert von token.\

Wenn der Treiber Doppelbalken unterstützt, kann man den zweiten Wert mit '+token' angeben.\

direction kann 'l' (links), 'r' (rechts), 'u' (auf) oder 'd' (ab) sein.\

Wird die Richtung in Großbuchstaben angegeben, wird ein logarithmischer Balken erzeugt.\

Hinweis: der von einem Balken benutzte Platz wächst unabhängig von der Richtung immer von links nach rechts oder von oben nach unten! \

$t<height><token>,<width> erzeugt einen Zeitabfolge-Balken.\

Die Daten werden wie '$u' angezeigt, aber nach jeder Sekunde um 1 Pixel nach links verschoben.\

Zurzeit unterstützen nur auf dem Pixel-Treiber basierende Displays diesen Balken-Typ.\

&<num> zeichnet das Icon num auf diese Position.\

Informationen zur Definition von Icons folgen weiter unten…\

Icons:

Seit Version 0.9.11 kann lcd4linux Icons anzeigen und diese sogar animieren. Wenn Du einen 'Heartbeat' möchtest, ist es das, was Du gesucht hast! \

Die Icon-Definition besteht aus zwei Teilen: Die Anzahl der Icons, welche verwendet werden sollen, und einem Bitmap für jedes Icon:

Icons: Anzahl der Icons\

Es ist zu beachten, dass jedes hier reservierte Icon nicht länger für Balken zur Verfügung steht! \

Nachdem die meisten Displays nur 8 benutzerdefinierte Zeichen besitzen und ein Doppelbalken mindestens 5 davon benötigt, sollten nicht mehr als 3 Icons gleichzeitig mit Balken verwendet werden…\

Icon<num>.Bitmap<row>: Bitmap-Zeile row für Icon num\

Das sieht sehr kompliziert aus. Hier kommt die Erklärung mit einigen Beispielen:

Icon1.Bitmap1 .....
Icon1.Bitmap2 .*.*.
Icon1.Bitmap3 *****
Icon1.Bitmap4 *****
Icon1.Bitmap5 .***.
Icon1.Bitmap6 .***.
Icon1.Bitmap7 ..*..
Icon1.Bitmap8 .....

Wir definieren das Bitmap eines einfachen, nicht animierten Icons (Herz). Gewöhnlich hat das Icon dieselbe Größe wie ein Zeichen, hier 5 Spalten und 8 Zeilen. Das Bitmap wird mit zwei Zeichen definiert, einem '.' (Punk t) für 'Pixel nicht gesetzt' und einem '*' (Stern) für 'Pixel gesetzt'.

Nun zu animierten Icons:

Icon2.Bitmap1 .....|.....
Icon2.Bitmap2 .*.*.|.*.*.
Icon2.Bitmap3 *****|*.*.*
Icon2.Bitmap4 *****|*...*
Icon2.Bitmap5 .***.|.*.*.
Icon2.Bitmap6 .***.|.*.*.
Icon2.Bitmap7 ..*..|..*..
Icon2.Bitmap8 .....|.....

So einfach ist das! Lediglich das zweite Bitmap mit dem Zeichen '|' (Pipe) anhängen, und das war's! lcd4linux durchläuft automatisch alle Bitmaps.

Die Animation kann aus einer beliebigen Anzahl von Bitmaps bestehen:

Icon3.Bitmap1 .....|.....|.....|.....|..*..|.....|.....|.....
Icon3.Bitmap2 .....|.....|.....|..*..|.*.*.|..*..|.....|.....
Icon3.Bitmap3 .....|.....|..*..|.*.*.|*...*|.*.*.|..*..|.....
Icon3.Bitmap4 .....|..*..|.*.*.|*...*|.....|*...*|.*.*.|..*..
Icon3.Bitmap5 .....|.....|..*..|.*.*.|*...*|.*.*.|..*..|.....
Icon3.Bitmap6 .....|.....|.....|..*..|.*.*.|..*..|.....|.....
Icon3.Bitmap7 .....|.....|.....|.....|..*..|.....|.....|.....
Icon3.Bitmap8 .....|.....|.....|.....|.....|.....|.....|.....

Virtuelle Zeilen:

Rows: Anzahl der zu benutzenden Zeilen (kann größer als die Zeilenanzahl des Displays sein)\

Scroll: Anzahl der Zeilen, durch die gescrollt werden sollen\

Turn: Anzahl der Millisekunden zwischen Scrolling-Events\

General Purpose Outputs (Allgemeine Ausgänge):

GPOs: Anzahl der zu benutzenden Ausgänge\

GPO1: für GPO 1 zu verwendendes Token\

Das Token sollte einen numerischen Wert zurückgeben.\

Wenn dieser Wert größer als Null ist, wird die Ausgabe eingeschaltet, sonst ausgeschaltet.\

GPO2..max: für andere GPOs zu verwendendes Token\

Token:

o Name des Betriebssystems ('Linux')\

v Betriebssystem-Version ('2.0.38')\

p Prozessor ('i686')\

r Gesamtsumme des installierten Speichers (MB)\

mt Gesamtsumme von /proc/meminfo (kB)\

mu used memory = benutzter Speicher (kB)\

mf free memory = freier Speicher (kB)\

ms shared memory = gemeinsam benutzer Speicher (kB)\

mb Buffer (kB)\

mc Seiten-Cache (kB)\

ma Applikations-Speicher (kB) = used - buffer - cache\

l1 Systemlast für die vergangene Minute\

l2 Systemlast für die vergangenen 5 Minuten\

l3 Systemlast für die vergangenen 15 Minuten\

L '!' wenn Last-Durchschnitt > Overload (aus der Konfigurationsdatei)\

cu Prozentsatz der CPU im User Mode\

cn Prozentsatz der CPU mit Niced Tasks\

cs Prozentsatz der CPU im System Mode\

cb Prozentsatz der CPU ausgelastet (=100-idle)\

ci Prozentsatz der CPU nicht ausgelastet (idle)\

dr gelesene Festplatten-Blöcke\

dw geschriebene Festplatten-Blöcke\

dt Festplatten-Blöche gesamt (read+write)\

dm Festplatten-Blöcke maximal (read, write)\

nr Netzwerk-Bytes empfangen\

nw Netzwerk-Bytes gesendet\

nt Netzwerk-Bytes gesamt (=empfangen+gesendet)\

nm Netzwerk-Bytes maximal (empfangen, gesendet)\

ii ISDN-Bytes empfangen\

io ISDN-Bytes gesendet\

it ISDN-Bytes gesamt (=empfangen+gesendet)\

im ISDN-Bytes maximal (empfangen, gesendet)\

ic ISDN verbunden (0=offline, 1=online)\

ti PPP-Bytes empfangen\

to PPP-Bytes gesendet\

tt PPP-Bytes gesamt (=empfangen+gesendet)\

tm PPP-Bytes maximal (empfangen, gesendet)\

s1 Temperatur von Sensor 1\

s2 Temperatur von Sensor 2 (geht bis s9)\

bp Akku-Ladezustand in Prozent (APM)\

bs Akku-Status ('=' = online, '+' = laden, '-' entladen)\

bd Akku-Haltezeit in s{Sekunden}, m{Minuten}, h{Stunden} oder d{Tagen}\

hc Seti@home % fertig gestellt\

ht Seti@home auf Workunit verwendete Zeit\

wl WIFI Link\

ws WIFI Signal Level\

wn WIFI Rauschen (noise)\

e* Nachrichten in Postfach 1-9, gesamte Nachrichten\

u* Nachrichten in Postfach 1-9, ungelesene Nachrichten\

x* Ausgabe von Kommando 1-9\

Für Beispiele zu allen Optionen und deren Verwendung bitte die Datei lcd4linux.conf.sample heranziehen.


  • manual_09_de.txt
  • Last modified: 2020/07/17 18:33
  • (external edit)