Graphlcd-plugin

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Beschreibung

Autor: Andreas Regel

Das Plugin bindet ein graphisches Display in den VDR ein und ermöglicht so die Bedienung des VDR auch bei ausgeschaltetem TV (Monitor).
Das sieht auf einem 240x128 Pixel-Display in etwa so aus:

Bilder

Setup
GLCD 128 x 64
GLCD 128 x 64
GLCD 128 x 64
glcd240x128_action.gif
GLCD 240 x 128
GLCD 240 x 128
GLCD 240 x 128
GLCD 240 x 64

Hardwareanforderungen

Um das Plugin sinnvoll nutzen zu können, braucht man ein graphisches LCD mit unterstütztem Controller. Es ist jedoch auch möglich, die Ausgabe des Plugins in Bild-Dateien zu lenken oder über einen Framebuffer auf andere Geräte (z.B. TFT-Monitor) auszugeben.

Unterstützt werden die folgenden Controller und natürlich alle dazu kompatiblen Displays:

  • Hitachi HD61830
  • Samsung KS0108
  • Toshiba T6963c
  • Epson SED1520
  • Epson SED1330
  • Noritake GU140X32F-7806
  • Noritake GU256X64-372
  • Noritake GU256X64C-3XX0 (serial or parallel)

Optional mit Hilfe von serdisplib (einer externen Bibliothek) ist der Aufbau eines GLCDs mit Hilfe eines Display aus einem alten Handy möglich.

  • Optrex 323
  • PCD8544-basierende Nokia-Displays (z.B. im Nokia 51xx)
  • Nokia 7110-Display (Controller: SED1565)
  • Ericsson T2x
  • ALPS LSU7S1011A (a.k.a. 'Pollin'-Display)
  • Hyundai HP12542R (Pollin)

Softwareanforderungen

  • graphlcd daemon and tools (graphlcd-base)
  • optional serdisplib für weitere seriell angesteuerte Displays
  • freetype (optional, deaktivierbar in der Make.config von graphlcd-base)
# comment this variable out if you don't want to use FreeType2 font rendering
HAVE_FREETYPE2=1

Installation

cd $SOURCEDIR
tar zxvf freetype-<VERSION>.tar.gz
cd freetype-<VERSION>
./configure --prefix=/usr/local
make
make install
ldconfig

cd -
tar xvzf graphlcd-base-<VERSION>.tgz
cd graphlcd-base-<VERSION>
make all
make install

Serdisplib.

cd $SOURCEDIR
tar xvzf serdisplib-<VERSION>.tar.gz
cd serdisplib-<VERSION>
./configure --prefix=/usr/local
make
make install
ldconfig


Konfiguration

Nun muss noch die Konfigurationsdatei des Treibers kopiert werden. Das Zielverzeichnis ist eigentlich beliebig, aber das Standardverzeichnis ist /etc. Ein abweichender Installationsort kann aber auch beim Start der Programme, welche die Bibliothek graphlcd-base nutzen (showpic,graphlcd-plugin,...), per Kommandozeilenparameter definiert werden.

cp graphlcd.conf /etc

Zum Schluß kopieren wir die Logos nach ../plugins.

cp -r $SOURCEDIR/VDR/PLUGINS/src/graphlcd/graphlcd $VDRCONFIG/plugins


Wem die Fonts und deren Darstellung nicht passen, kann in $VDRCONFIG/plugins/graphlcd/fonts/ entweder die Symlinks bearbeiten, damit sie auf die jeweilig gewünschte Grösse zeigen, oder die *.conf-Dateien direkt anpassen. Defaultmaessig sind mehrere Grössen vorhanden.

Wer Lust hat, kann sich die graphlcd-media-<VERSION>.tgz laden, in dieser sind Addons (Bootsplash/Scripts etc, alles mehr oder weniger optional) enthalten.


Parameter

Parameter (kurz) Parameter (lang) Beschreibung
-c CFG --config=CFG verwendete Konfigurationsdatei
-d DISP --display=DISP verwendetes Display zur Ausgabe (als Abschnitt der Konfigurationsdatei)


Probleme

Rechte /dev/parport0

Bei parallel angeschlossenem gLCD muss dies über /dev/parport0 angesprochen werden, wenn der VDR nicht als root läuft: "Device=/dev/parport0" in /etc/graphlcd.conf eintragen.

Ist das Device nicht vorhanden, fehlt das geladene Modul ppdev: mit

modprobe ppdev

testen, dauerhaft in /etc/modules "ppdev" eintragen.

Ausserdem muss es für den VDR lese- und schreibbar sein, sinnvollerweise über die Gruppe lp - also Userkennung unter der der VDR läuft, zur Gruppe lp hinzufügen und /dev/parport0 evtl. entsprechend modifizieren.


BIOS-Einstellungen des Parport

Wichtig fuer den Betrieb eines LCD ist die korrekte Einstellung der parallelen Schnittstelle im BIOS. Diese sollte unbedingt auf 'ECP' stehen.


Snapshot

Der aktuelle Entwicklerstand des Plugins ist auf dem BerliOS Developer SVN Repository verfügbar.

Er kann per anonymen SVN Zugang (svnserve) mit dem folgenden Befehlsatz heruntergeladen werden.

  • graphlcd-base - Basisbibliothek (Displaytreiber und Tools)
svn checkout svn://svn.berlios.de/graphlcd/graphlcd-base/trunk graphlcd-base
  • graphlcd-media - Mediendaten (Logo und Zeichensätze)
svn checkout svn://svn.berlios.de/graphlcd/media/trunk graphlcd-media
  • graphlcd-plugin - Das Plugin selber.
svn checkout svn://svn.berlios.de/graphlcd/vdr-graphlcd/trunk graphlcd

Links

  1. Homepage des Plugins
  2. Serdisplib für serial displays
  3. Freetype
  4. C't-VDR HowTo über die Installation mit der Serdisplib-Bibliothek
  5. HowTo 6" gLCD
In anderen Sprachen