Seite wählen

LCD Display an Raspi4

3 · 09 · 21

Kochbuch: LCD Display an Libreelec RPI4

Benötigte Zutaten

Abgesehen von einem Raspberry 4, auf dem vermutlich Libreelec läuft, braucht ihr natürlich noch ein Display – möglichst mit einem I2C Bus Adapter sowie vier Drähte um alles zu verbinden

Meine beiden, ein 4-zeiliges und ein 2-zeiliges, kamen beide sehr günstig über Amazon, ebenso die unten beschrieben I2C Adapter.

In meinem Beispiel verwende ich ein I2C Adapter, welches direkt auf der Rückseite des Displays aufgelötet wird.

Netter Nebeneffekt: Mit dem blauen Poti kann ich den Kontrast einstellen.

Anpassen der config.txt

Als erstes aktivieren wir den I2C Bus am Rapsberry. Das geht durch einfügen der folgenden Zeilen in die config.txt.
Wo diese liegt und wie ihr sie bearbeitet findet ihr z.B. hier.

################################################################################
dtparam=i2c_arm=on
dtoverlay=i2c-gpio
################################################################################

Anschliessen des Displays an den Raspberry

Der I2C Bus liegt nun nach einem Reboot an den PINs 3 & 5. Somit ergibt sich für das Display folgender Anschluss:

PIN am Raspberry Funktion Name am LCD Display
2 +5V VCC
3 SDA1 SDA
5 SCL1 SCL
6 GND GND

Eine grafische Hilfe wie man die PINs am RaspBerry zählt findet ihr hier.

Installieren der AddOns

 

Alle benötigten AddOns findet ihr in den offiziellen Paketquellen – nichts illegales und nichts geklautes. 

LCDproc

 

SystemTools

XBMC LCDproc

Konfigurieren LCDd.conf

 

Mit dem Tool i2cdetect aus dem AddOn Systemtools kann man per ssh auf der Konsole den Port des angeschlossenen I2C Dislplays auslesen. Dieser Wert muss in der Config angepasst werden!

Die Konfigurationsdatei liegt unter dem Pfad:

/storage/.kodi/userdata/addon_data/service.lcdd/LCDd.conf

 

LCDd.conf

## Server section with all kinds of settings for the LCDd server ##
[server]
## DriverPath=/storage/.config/raspdrivers/
DriverPath=/storage/.kodi/addons/service.lcdd/lib/lcdproc/
Driver=hd44780
Bind=127.0.0.1
Port=13666
User=root
Foreground=no
# Hello message: each entry represents a display line; default: builtin
Hello=“ Welcome to“
Hello=“ CineMaier“
# GoodBye message: each entry represents a display line; default: builtin
GoodBye=“Bye bye“
GoodBye=“ CineMaier“
# Sets the default time in seconds to displays a screen.
WaitTime=3
ServerScreen=no

[HD44780]
ConnectionType=i2c
Device=/dev/i2c-1
Speed=8
Contrast=500
OutputPort=no
CharMap=hd44780_default
Port=0x27
Backlight=yes
Size=17×2
DelayBus=true
DelayMult=2
Keypad=no
Heartbeat=off

Anpassen der LCD.xml

Grob gesagt steht in der .xml wie welcher Inhalt wann auf dem LCD Display dargestellt werden soll. Hier können auch Systemvariablen verwendet werden um Namen, Dauer, und Restspielzeit des aktuellen Filmes darzustellen.
Da mein Display lediglich zwei Zeilen hat habe ich die Darstellung ein wenig angepasst.

 

Die Konfigurationsdatei liegt unter dem Pfad:

/storage/.kodi/userdata/LCD.xml

LCD.xml

<?xml version="1.0" encoding="UTF-8"?>
<lcd>
<!-- advanced configurables, XML-uncomment and set options as desired -->
<!-- scrollseparator: string to use as separator if text gets scrolled -->
<!--scrollseparator> </scrollseparator-->
<!-- progressbarsurroundings: put progress bars in square brackets (on/off) -->
<!--progressbarsurroundings>off</progressbarsurroundings-->
<!-- progressbarblank: character to use as non-filled progressbar -->
<!--progressbarblank>-</progressbarblank-->
<!-- icontextoffset: offset for text displayed after any play/pause icons -->
<!--icontextoffset>2</icontextoffset-->
<!-- allowemptylines: show text lines without contents or filter them (on/off) -->
<!--allowemptylines>off</allowemptylines-->
<!-- centerbigdigits: (try to) align big numbers centered on the display (on/off) -->
<!--centerbigdigits>off</centerbigdigits-->
<!-- disableplayindicatoronpause: turn off any playing indicator (extra stuff) when pausing playback (on/off) -->
<!--disableplayindicatoronpause>off</disableplayindicatoronpause-->

<navigation>
<line>$INFO[System.CurrentWindow]</line>
<line>$INFO[System.CurrentControl]</line>
<line></line>
<line></line>
</navigation>
<music>
<line>$INFO[LCD.PlayIcon] $INFO[Player.Time]/$INFO[Player.Duration]</line>
<line>$INFO[MusicPlayer.Title]</line>
<line>$INFO[MusicPlayer.Artist]</line>
<line>$INFO[MusicPlayer.Album] ($INFO[MusicPlayer.Year])</line>
</music>
<video>
<line>$INFO[VideoPlayer.Title]</line>
<line>$INFO[LCD.ProgressBar]</line>
<line></line>
<line></line>
<line></line>
</video>
<tvshow>
<line>$INFO[LCD.PlayIcon] $INFO[Player.Time]/$INFO[Player.Duration]</line>
<line>$INFO[VideoPlayer.TVShowTitle]</line>
<line>$INFO[VideoPlayer.Title]</line>
<line>$INFO[LCD.ProgressBar]</line>
<line>Freemem: $INFO[System.FreeMemory]</line>
</tvshow>
<general>
<line>CineMaier</line>
<line></line>
<line></line>
<line></line>
</general>
<screensaver>
<line>$INFO[System.CurrentWindow]</line>
<line>$INFO[LCD.TimeWide21]</line>
<line>$INFO[LCD.TimeWide22]</line>
<line>Freemem: $INFO[System.FreeMemory]</line>
</screensaver>
<xbelaunch>
<line></line>
<line>Playing</line>
<line>$INFO[System.LaunchXBE]</line>
</xbelaunch>
<pvrtv>
<line>$INFO[VideoPlayer.ChannelName]</line>
<line>$INFO[VideoPlayer.Title]</line>
<line>$INFO[LCD.PlayIcon] $INFO[PVR.EpgEventElapsedTime]$INFO[PVR.EpgEventDuration,/,]</line>
<line>$INFO[LCD.ProgressBar]</line>
</pvrtv>
<pvrradio>
<line>$INFO[MusicPlayer.ChannelName]</line>
<line>$INFO[MusicPlayer.Title]</line>
<line>$INFO[LCD.PlayIcon] $INFO[PVR.EpgEventElapsedTime]$INFO[PVR.EpgEventDuration,/,]</line>
<line>$INFO[LCD.ProgressBar]</line>
</pvrradio>
</lcd>

Austauschen des Treibers

 

Nun kommt der letzte Teil: Austauschen des HD44780 Treibers. Der Grund hierfür ist das der in Libreelec mitgelieferte, bzw. über ein AddOn kommende, nicht der richtige für einen Raspberry4 ist.

Download des hd44780 Treiber für Raspberry4

Der Pfad zu dieser Datei steht in der Config oben, in meinem Beispiel:

DriverPath=/storage/.kodi/addons/service.lcdd/lib/lcdproc/

Sebastian Schmuttermaier

Inzwischen lebe und arbeite ich als ITler in München. So oft wie möglich versuche ich zum fotografieren, laufen und klettern in die Berge zu kommen. Meine Fotos und Tourenbeschreibungen findet ihr hier auf meiner Webseite. Besucht mich auch auf Facebook oder Instagram!

Related Posts

TVHeadend im PYUR Netz

TVHeadend im PYUR Netz

FritzBox 6660 im PYUR NetzDie zur Zeit aktuelle FritzBox 6660 Cable hat im Juli 2020 endlich das heiß ersehnte Update von AVM erhalten mit dem sie nun DVB-C "kann".Kann heist in diesem Fall "streamen", denn die FritzBox 6660 hat vier DVB-C Tuner die sie im heimischen...

Kodi 18 & Metropolis Skin

Kodi 18 & Metropolis Skin

Metropolis Skin Kodi V19 Wer wie ich seine komplette DVD Sammlung in den Keller geräumt hat, kommt um einen vernünftigen Medienplayer nicht herum. Kodi ist mein Mittel der Wahl, und ich möchte das Gerät nicht mehr hergeben! Meine Installation läuft auf einem Raspberry...

Filmzentrale – der Einstieg

Filmzentrale – der Einstieg

Filmzentrale - Teil 1 Oder auch: Alles auf Start und wie es begann. Die Filme stapeln sich. Was erst als Erlösung von den alten großen VHS Bändern war (und diese waren wirklich deutlich größer!), erweist sich nun auf Grund der schieren Menge als genauso Platzraubend....

Comments

0 Kommentare

Einen Kommentar abschicken

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.