Servus Forum,
ich wollte hier schon mal mein Addon präsentieren. Es ist noch in einem sehr frühen Stadium und ich bin nicht der geübteste Programmierer. Dies wird man sicherlich im Quellcode sehen .
Zum Addon selber: Kodisplay ermöglicht auf einem kleinen TFT-Display, zum Beispiel mit einer Auflösung mit 320x240 Pixeln, angeschlossen an einem RPi2/3, diverse Informationen aus Kodi darzustellen.
Es nutzt hierzu Pygame/SDL zum darstellen dieser Informationen über den Kerneltreiber fbtft.
Inspiriert zu dem Addon wurde ich von script.xbmc.lcdproc für LCD-Displays und von KodiDisplayInfo (läuft als eigenständiger Prozess) ebenfalls für TFT-Displays.
Einige Ideen wurden auch von diesen Projekten übernommen ... vielen Dank für diese Möglichkeit.
Der Quellcode für dieses Addon ist HIER zu finden. Um dieses Addon aber zu nutzen sind besondere Rechte für diverse Gerätedateien unter /dev notwendig und der aktivierte Kerneltreiber fbtft. Ich habe es bisher nur mit LibreELEC zum laufen bekommen, da hier es nur einen Benutzer (nämlich root) gibt und der ja eigentlich alles darf.
Ein LibreELEC-Image (mit dem Kerneltreiber fbtft und allen aktivierten Treibern für die diversen TFT-Chipmodule) gibt es weiter unten.
Um das Addon zu nutzen benötigt man jetzt folgendes:
- einen RPi2 oder RPi3 (RPi funktioniert vermutlich auch, den besitze ich aber nicht)
- ein angeschlossenes TFT-Display am RPi2/3
- das LibreELEC-Image (mit fbtft) auf einer microSD DOWNLOAD / LINK zum LibreELEC-Repo zum SELBERBAUEN
- das Image booten
- SPI aktivieren
- jetzt muss das Kernelmodul für das TFT-Display geladen werden (mein Display nutzt zum Beispiel den Treiber fb_ili9341). Hilfe findet man zum Beispiel HIER oder googeln
- das Addon Kodisplay muss installiert werden DOWNLOAD
- ggf. einen Reboot durchführen, da es beim ersten aktivieren des Addon zu Darstellungsproblemen kommen kann (ich weiß noch nicht warum)
Das Layout der einzelnen .. ich nenne sie jetzt mal Screens .. kann über die Datei /storage/.kodi/userdata/TFT.xml verändert werden.
Unterschieden wird derzeit zwischen den folgenden Screens:
- startscreen - zum Anzeigen eines Logo und der Kodiversion (kann in der Konfiguration deaktiviert werden)
- general - es erfolgt keine Wiedergabe, keine Navigation durch die Menüs und der Screensaver hat noch nicht zugeschlagen
- navigation - Navigation durch die Menüs
- music - Abspielen von Audio-Dateien
- video - Abspielen von Filmen oder Video-Dateien
- tvshow - Abspielen einer TV-Serie
- pvr - Abspielen eines Senders über LiveTV (nicht getestet)
- picture -wird wohl wieder rausfliegen, weiß nocht nicht so genau
- weather - wird wohl wieder rausfliegen, weiß nocht nicht so genau
- screensaver - wird aktiviert, wenn der Screensaver zuschlägt
Das Addon weißt noch keine guten FPS auf. Hier muss noch optimiert werden, zum Beispiel: Nutzen von pygame.Sprite() oder Auslagerung der Abfragen an Kodi in eine eigenen Thread.
In der Konfiguration des Addon kann auch das Abschalten der Hintergrundbeleuchtung des TFT-Dsiplays eingestellt werden, dafür ist aber das Setzen des richitgen BCM GPIO von nöten.
Zum Beispeil lädt das Kernelmodul für mein TFT-Dsiplay mit folgenden Einstellungen:
options fbtft_device custom name=fb_ili9341 gpios=reset:25,dc:24,led:23 speed=32000000 rotate=270 bgr=1
Die Hintergrundbelechtung wird durch den BCM GPIO 23 gesteuert. Dieser muss dann in der Konfiguration der Hintergrundbeleuchtung auch gesetzt werden.
ACHTUNG:
Dieses Addon enthält mit hoher Wahrscheinlichkeit Fehler.
Ich übernehme keine Haftung für Schäden an Software oder Hardware, die durch dieses Addon enstanden sind.
Und jetzt kommen noch ein paar "schlechte" Bilder von meinem TFT-Display mit 320x240 Pixeln in Aktion:
Screen: general
Screen: music
Screen: tvshow
grüsse