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 Monitor.
Das ganze sieht auf einem 240x128er 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 brauch man ein graphisches Display mit unterstütztem Controller. Es ist jedoch auch möglich, die Ausgabe des Plugins in Bild-Dateien zu lenken oder über einen Framebuffer auf anderen Geräten (z.B. TFT-Monitor) auszugeben.

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

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

Sowie über serdisplib (ein eingebundenes Projekt):

  • 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)

Durch letztgenannte ist auch der Aufbau eines GLCDs aus alten Handys nahezu ohne Kosten möglich.

Softwareanforderungen

  • für Seriell wird zusätzlich serdisplib benötigt
  • graphlcd daemon and tools (graphlcd-base)
  • freetype (optional, zu deaktivieren, 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 Treiber kopiert werden. Das Zielverzeichnis ist eigentlich beliebig, aber das Standardverzeichnis ist /etc. Ein abweichender Installationsort kann aber auch bei 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 /etc/vdr/plugins

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


Parameter

Parameter (kurz) Parameter (lang) Beschreibung
-c CFG --config=CFG use CFG as driver config file
-d DISP --display=DISP use display DISP for output

Probleme

  • Bei Parallel angeschlossenem Display muss dies ueber /dev/parport0 angesprochen werden wenn der vdr nicht als root lauft: "Device=/dev/parport0" in /etc/graphlcd.conf.
    Ist das Device nicht vorhanden fehlt das geladene modul ppdev: "modprobe ppdev", dauerhaft in /etc/modules "ppdev" eingetragen.
    Ausserdem muss es fuer den vdr lese und schreibbar sein, sinnvollerweise ueber die gruppe lp - also userkennung unter der der vdr lauft zur gruppe lp hinzufuegen und /dev/parport0 evtl. entsprechend modifizieren.


Snapshot

  • plugin
svn checkout svn://svn.berlios.de/graphlcd/vdr-graphlcd/trunk graphlcd
  • base
svn checkout svn://svn.berlios.de/graphlcd/graphlcd-base/trunk graphlcd-base
  • media
svn checkout svn://svn.berlios.de/graphlcd/media/trunk graphlcd-media

Links

[1] http://serdisplib.sourceforge.net Project Homepage -> serdisplib für serial displays
[2] http://sourceforge.net/projects/serdisplib Download -> serdisplib
[3] http://www.freetype.org freetype
[4] http://www.powarman.de Homepage des Plugins
[5] http://home.arcor.de/andreas.regel/files Download -> Plugin (auch Beta-Versionen)
[6] http://developer.berlios.de/projects/graphlcd Projekt Seite auf berlios
[7] C't-VDR - GraphLCD mit Serdisplib HowTo über die Installation mit der Serdisplib-Bibliothek
In anderen Sprachen