C't-VDR - GraphLCD mit Serdisplib
Hulk (Diskussion | Beiträge) K |
|||
(12 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
- getestet unter folgenden Versionen: vdrdevel-plugin-graphlcd_0.1.1-28 / serdisplib-1.95<br> | - getestet unter folgenden Versionen: vdrdevel-plugin-graphlcd_0.1.1-28 / serdisplib-1.95<br> | ||
- an einer neuen Version der Serdisplib (1.96) und der Debianisierung der graphlcd_0.1.2 wird derzeit gearbeitet | - an einer neuen Version der Serdisplib (1.96) und der Debianisierung der graphlcd_0.1.2 wird derzeit gearbeitet | ||
+ | |||
+ | |||
+ | '''Optrex323-Besitzer:''' | ||
+ | Hier empfehle ich trotz nun schon vorhandener Version 0.1.3 bei Version 0.1.1 zu bleiben, weil es dort NICHT zu folgendem Anzeigefehler kommt: | ||
+ | Ist der Zeitbalken aktiv, ist keine freie Pixelreihe mehr zwischen der Zeit, von wann bis wann eine Sendung geht und dem Sendernamen. Der Grund hierfür ist, dass offenbar seit Version 0.1.2 der Rahmen um den Sendernamen unten eine Pixelreihe mehr hat (vier statt drei), was bei 128x64 Displays kein Problem darstellt. Desweiteren hat man viel mehr Einstellmöglichkeiten für dieses Display im OSD als bei den neueren Versionen. | ||
+ | |||
Zeile 42: | Zeile 48: | ||
<pre> | <pre> | ||
− | |||
wget http://mesh.dl.sourceforge.net/sourceforge/serdisplib/serdisplib-1.95.tar.gz | wget http://mesh.dl.sourceforge.net/sourceforge/serdisplib/serdisplib-1.95.tar.gz | ||
tar -xvzf serdisplib-1.95.tar.gz | tar -xvzf serdisplib-1.95.tar.gz | ||
cd serdisplib-1.95 | cd serdisplib-1.95 | ||
+ | ./configure | ||
make all | make all | ||
make install | make install | ||
+ | cd .. | ||
+ | apt-get source vdrdevel-plugin-graphlcd | ||
dpkg-source -x vdrdevel-plugin-graphlcd_0.1.1-28.dsc | dpkg-source -x vdrdevel-plugin-graphlcd_0.1.1-28.dsc | ||
− | |||
</pre> | </pre> | ||
Zeile 56: | Zeile 63: | ||
<pre> | <pre> | ||
+ | cd vdrdevel-plugin-graphlcd-0.1.1 | ||
vi ./Makefile | vi ./Makefile | ||
</pre> | </pre> | ||
Zeile 93: | Zeile 101: | ||
DEFINES += -DINCLUDE_SERDISPLIB | DEFINES += -DINCLUDE_SERDISPLIB | ||
... | ... | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | cd .. | ||
</pre> | </pre> | ||
− | '''Kompilieren des GraphLCD-Plugins:''' | + | '''Kompilieren und Installieren des GraphLCD-Plugins:''' |
<pre> | <pre> | ||
Zeile 111: | Zeile 123: | ||
Ansteuerung des LCDs an die ''/usr/local/lib/libserdisp.so''. | Ansteuerung des LCDs an die ''/usr/local/lib/libserdisp.so''. | ||
<pre> | <pre> | ||
− | -c optrex323 -d /dev/parport0 | + | -c optrex323 -d /dev/parport0 |
</pre> | </pre> | ||
Die Angabe weiterer Parameter (x=117 y=62 etc.) ist hier nicht nötig, weil diese als defaults gesetzt sind<br> | Die Angabe weiterer Parameter (x=117 y=62 etc.) ist hier nicht nötig, weil diese als defaults gesetzt sind<br> | ||
(siehe ''./drivers/serdisp.c'': "if (strcasecmp("OPTREX323", drivername) == 0) {dsizex = 117; dsizey = 62; ...").<br> | (siehe ''./drivers/serdisp.c'': "if (strcasecmp("OPTREX323", drivername) == 0) {dsizex = 117; dsizey = 62; ...").<br> | ||
Bitte ebenfalls beachten, dass evtl. die Module "parport", "parport_pc" und "ppdev" noch geladen bzw. in die <br> | Bitte ebenfalls beachten, dass evtl. die Module "parport", "parport_pc" und "ppdev" noch geladen bzw. in die <br> | ||
− | Datei ''/etc/modules.conf'' (automatisches Laden beim | + | Datei ''/etc/modules.conf'' (automatisches Laden beim Booten) eingetragen werden müssen. |
Zeile 136: | Zeile 148: | ||
/tmp/vdrdevel-err.* | /tmp/vdrdevel-err.* | ||
</pre> | </pre> | ||
+ | |||
+ | |||
+ | ---- | ||
+ | '''''<div align="center">Vielen Dank an Tobias Grimm und Wolfgang Astleitner für ihre hervorragende Arbeit!</div>''''' | ||
+ | ---- | ||
+ | |||
+ | [[Kategorie:C't-VDR]] | ||
+ | [[Kategorie:Graphlcd-plugin]] |
Aktuelle Version vom 8. Dezember 2007, 11:00 Uhr
Serielle Displays (z.B. Optrex323) über die Bibliothek "Serdisplib" ansprechen
- getestet unter folgenden Versionen: vdrdevel-plugin-graphlcd_0.1.1-28 / serdisplib-1.95
- an einer neuen Version der Serdisplib (1.96) und der Debianisierung der graphlcd_0.1.2 wird derzeit gearbeitet
Optrex323-Besitzer:
Hier empfehle ich trotz nun schon vorhandener Version 0.1.3 bei Version 0.1.1 zu bleiben, weil es dort NICHT zu folgendem Anzeigefehler kommt:
Ist der Zeitbalken aktiv, ist keine freie Pixelreihe mehr zwischen der Zeit, von wann bis wann eine Sendung geht und dem Sendernamen. Der Grund hierfür ist, dass offenbar seit Version 0.1.2 der Rahmen um den Sendernamen unten eine Pixelreihe mehr hat (vier statt drei), was bei 128x64 Displays kein Problem darstellt. Desweiteren hat man viel mehr Einstellmöglichkeiten für dieses Display im OSD als bei den neueren Versionen.
[Bearbeiten] HowTo
Tobi's Source-Repositories in die Datei /etc/apt/sources.list eintragen: (auch möglich über "apt-setup")
deb-src http://www.e-tobi.net/vdrdevel/sarge/experimental/ source vdr/ deb-src http://www.e-tobi.net/vdrdevel/sarge/experimental/ source addons/ deb-src http://www.e-tobi.net/vdrdevel/sarge/experimental/ source backports/ deb-src http://www.e-tobi.net/vdrdevel/sarge/experimental/ source base/
Wenn die Datei von Hand editiert wurde "apt-get update" nicht vergessen.
Benötigte Pakete installieren:
apt-get install libgd-dev apt-get install wget apt-get install vdrdevel-dev apt-get install vdrdevel-plugin-graphlcd apt-get build-dep vdrdevel-plugin-graphlcd
Ordner für die Quellen anlegen:
cd mkdir graphlcd_serdisplib cd graphlcd_serdisplib
Benötigte Quellen downloaden und Serdisplib-Bibliothek installieren:
wget http://mesh.dl.sourceforge.net/sourceforge/serdisplib/serdisplib-1.95.tar.gz tar -xvzf serdisplib-1.95.tar.gz cd serdisplib-1.95 ./configure make all make install cd .. apt-get source vdrdevel-plugin-graphlcd dpkg-source -x vdrdevel-plugin-graphlcd_0.1.1-28.dsc
Makefiles des GraphLCD-Plugins bearbeiten:
cd vdrdevel-plugin-graphlcd-0.1.1 vi ./Makefile
... # uncomment this for dynamic linking STATIC_DRIVERS=1 ### Allow user defined options to overwrite defaults: --> Hier muss noch rein: INCLUDE_SERDISPLIB=1 -include $(VDRDIR)/Make.config ifdef INCLUDE_SERDISPLIB DEFINES += -DINCLUDE_SERDISPLIB endif # INCLUDE_SERDISPLIB ...
cd drivers vi Makefile
... INCLUDES += -I$(VDRDIR)/include OBJS = device.o drivers.o fct.o port.o simlcd.o gu140x32f.o ... --> Hier muss ebenfalls rein: INCLUDE_SERDISPLIB=1 -include $(VDRDIR)/Make.config ifdef INCLUDE_SERDISPLIB DEFINES += -DINCLUDE_SERDISPLIB ...
cd ..
Kompilieren und Installieren des GraphLCD-Plugins:
dpkg-buildpackage -us -uc -tc -fakeroot dpkg -i ../vdrdevel-plugin-graphlcd_0.1.1-28_i386.deb
Falls nicht auf dem VDR-System kompiliert wird, muss die .deb Datei natürlich erst mit "scp" auf den VDR-PC kopiert und dort installiert werden!
Konfiguration mittels /etc/vdrdevel/plugins/plugin.graphlcd.conf:
Hier wird dem Plugin mitgeteilt, welchen Treiber es laden muss. Mit "Optrex323" (Groß- und Kleinschribung
ist egal) übergibt das Plugin die
Ansteuerung des LCDs an die /usr/local/lib/libserdisp.so.
-c optrex323 -d /dev/parport0
Die Angabe weiterer Parameter (x=117 y=62 etc.) ist hier nicht nötig, weil diese als defaults gesetzt sind
(siehe ./drivers/serdisp.c: "if (strcasecmp("OPTREX323", drivername) == 0) {dsizex = 117; dsizey = 62; ...").
Bitte ebenfalls beachten, dass evtl. die Module "parport", "parport_pc" und "ppdev" noch geladen bzw. in die
Datei /etc/modules.conf (automatisches Laden beim Booten) eingetragen werden müssen.
Neustart des vdrdevel:
/etc/init.d/vdrdevel restart
Die in der conf-Datei eingetragenen Parameter sollten dem vdrdevel nun beim Laden des GraphLCD-Plugins eins-zu-eins übergeben worden sein.
Überprüft werden kann dies mit dem Aufruf:
ps -elf | grep vdrdevel
Mögliche Fehler werden ggf. hier ausgegeben:
/var/log/syslog /var/log/messages /tmp/vdrdevel-err.*