[Early Alpha][WIP]Kodisplay (für RPi2/3 unter LibreELEC)

  • 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

    Externer Inhalt milaw.biz
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.


    Screen: music

    Externer Inhalt milaw.biz
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.


    Screen: tvshow

    Externer Inhalt milaw.biz
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    grüsse

  • Klasse Arbeit!
    Welches Display verwendest du?

    Ich verwende zur Zeit ein 2,4" TFT SPI mit 240x320 Pixeln aus der Bucht.

    Kann man das auch auf eine Samsung SPF der über USB angeschlossen wird übertragen? Also so wie es ein LCD4Linux gemacht wird???

    Das ganze Addon wurde mittels pygame/SDL realisiert. Wenn der Treiber für das Symsung SPF einen Framebuffer (dev/fbx) bereitstellt, könnte dies funktionieren.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!