Raspberry Pi 3 erfolgreich mit Kuman 3,5" TFT Touch Display

  • .Ich möchte mit meinem Betrag eine Hilfestellung für den Ein- oder Anderen zur Inbetriebnahme geben.
    Für erfahrene Anwender mag das sicherlich "PillePalle" sein, aber weniger erfahrene Nerds,
    so wie ich können das evtl. gebrauchen. Lt. Hersteller funktionieren die Treiber unter Raspbian als auch
    unter Ubuntu.

    Seit gestern betreibe ich erfolgreich meinen Raspberry Pi 3 mit aufgesetztem Raspbian (Version Jessie, Pixels)
    Release date: 2016-09-23 Kernel version:4.4 und dem Display:

    Kuman 3.5 inch 320*480 Resolution Touch Screen TFT LCD Display Module SPI Interface with Touch Pen
    for Raspberry-pi Model 2 3 B/B+ 2B

    Anbei des Displays lag auch eine CD (vermutlich) mit Treibern.
    Nachdem ich allerdings gelesen hatte das es nicht ganz so einfach ist das Display in Betrieb zu bringen vor allem,
    weil die meisten Display Hersteller wohl dazu anraten ein eigens vorbereitetes Image aufzuspielen, was ich aber
    a) nicht wollte und b) soll selbst damit nicht unbedingt alles "Rund" laufen, bin ich über diverse Kommentar
    Postings auf einen Link direkt zu einem Treiber gestoßen, welcher sich einfach auf ein bestehendes Image aufspielen
    ließ und problemlos in Betrieb ging.
    Es schein auch so zu sein, das die meisten Displays der verschiedenen Anbieter sowieso aus der ein und der selben
    Produktionsstätte sind und gleich konstruiert sind somit kann man den Treiber auch sicherlich für andere TFTs anwenden
    (z.B. die vom Hersteller Makibes, Waveshare und Co.) - Natürlich ohne Gewähr.
    Selbst der Treiber, welche ich mir in diesem Falle besorgt habe ist von einem anderen Hersteller ;)

    Aber nun genug geplappert.
    Hier ist mal der Link zu der Seite, wo man den Treiber bekommt.

    http://spotpear.com/learn/EN/raspb…ve-the-LCD.html
    bzw. hier auch vom Originalhersteller:
    http://www.waveshare.com/wiki/3.5inch_RPi_LCD_(A)

    (im übergeordneten Verzeichnis bekommt man übrigens auch weiterer Treiber für andere Displays.
    Wenn man dann aber mal im Detail nachsieht, handelt es sich meist um ein und die selbe Packdatei
    in welcher sich dann Treiber vfür viele Displays befinden)

    (Den Treiber findet Ihr übrigens auch unten im Anhang)

    Die Erklärung ist eigentlich recht easy, wenn auch auf Englisch und es wird erklärt, wie man den Treiber (als Image) installiert -
    sowohl als auch eigenständig (was ja mein Ziel war). Auch beinhaltet das Treiberpaket nicht nur Treiber für das oben genannte
    Display, sondern auch für andere. ich zähle sie hier mal kurz auf:

    • Raspberry Pi 2.4inch LCD or Raspberry Pi 3.2inchLCD(the 2.4inch is the same LCD port and control chip 9341)
    • Raspberry Pi 3.5inch LCD (das ist das oben genannte)
    • Raspberry Pi 4inch LCD
    • Raspberry Pi 4.3inch LCD
    • Raspberry Pi 5inch LCD
    • Raspberry Pi 7inch LCD(800x480)
    • Raspberry Pi 7inch LCD(1024x600)
    • Raspberry Pi 10.1inch LCD(1024x600)

    Leider habe ich natürlich keine Ahnung, wie lange die Seite und der Link existiert, deshalb hier mal der Name der Treiber Datei
    (sollte der download von dort nicht mehr möglich sein, findet man sie vielleicht anderswo im Netz) und eine Anleitung auf Deutsch zu Installation.

    Treiber Datei: LCD-show-160811.tar.gz

    Am besten man macht im RasPi auf der grafischen Oberfläche den Browser auf und öffnet den Link.
    Normalerweise sobald man den Downloadlink der Datei anklickt, wird sie automatisch ins RasPi Downloadverzeichnis runtergeladen.
    Wer tatsächlich das Image möchte, kann es sich auch von dort herunterladen. Die Vorgehensweise sollte ähnlich sein, wie wenn man ein
    neues Raspberry Pi Betriessystem in Betrieb stellt und wird hier somit nicht erklärt. Die weitere Vorgehensweise ist dann allerdings
    ähnlich, deshalb erwähne ich sie hier. Wenn man das Image direkt aufspielt, sollte auch das Display gleich in Betrieb gehen (lt.Hersteller).
    Das habe ich aber auch nicht geprüft und mache nun mit der Beschreibung weiter für den Treiber download.

    Ich mache beim RasPi die Konsole auf und rufe zunächst die Config Datei auf:

    Code
    sudo raspi-config

    Im nun erscheinenden Config Fenster, wähle ich Punkt 3 Boot options aus und darunter dann den
    Punkt B4 Desktop Autologin Desktop GUI, automatically logged in as 'pi' user
    Mit OK übernehmen und den Editor wieder schließen.
     
    Danach wechsle ich in das Download Verzeichnis

    Code
    cd /home/pi/Downloads

    Um festzustellen ob der download erfolgreich war, kann ich durch Eingabe von

    Code
    dir

    prüfen, ob sich im Verzeichnis die oben genannte Treiberdatei befindet.
    Nun lasse ich mir dort zunächst die Treiberdatei entpacken durch Eingabe von:

    Code
    tar xvf LCD-show-160811.tar.gz

    Darauf achten, das der eingegebene Name exakt dem Dateinamen entspricht. Es kann sein, das es eine neuere Version als diese hier gibt.
    Dann müsst Ihr natürlich den Namen anpassen.

    Im Download Verzeichnis entpackt sich nun ein Verzeichnis (mit Unterverzeichnissen und diversen Dateien) mit dem Namen:
    LCD-show

    Das gesammte Verzeichnis nebst Dateien könnt Ihr nun "ein Stockwerk höher" verschieben, direkt in Euer Pi Verzeichnis hinein.
    Dies macht Ihr mit folgendem Befehl:

    Code
    mv /home/pi/Downloads/LCD-show /home/pi/

    den eben heruntergeladenen Treiber könnt Ihr nun aus Downloads wieder löschen wenn Ihr wollt mit dem Befehl:

    Code
    rm LCD-show-160811.tar.gz


    (Namen natürlich ggf. anpassen)

    BITTE ERST UNTEN WEITER LESEN UNTER: DISPLAY WIEDER ZURÜCKSETZTEN - KÖNNTE WICHTIG SEIN

    Ich wechsle nun ebenfalls in pi Verzeichnis mit

    Code
    cd


    Hier liegt nun auch wieder unser eben verschobenes Verzeichnis.
    Nun ist es ganz wichtig den richtigen Befehl einzugeben, damit unser Display auch richtig angesprochen wird,
    da es ja wie oben erwähnt verschiedene Treiber für verschiedene Displays gibt. Sobald ich den Befehl nun
    eingebe, fährt der Pi herunter und startet neu durch. Spätestens jetzt mit bereits angeschlossenem Display.
    Keine Angst, der Startvorgang dauert etwas länger als gewohnt. Den RasPi einfach machen lassen und abwarten.
    Wenn alles geklappt hat, meldet sich nun das Display und ist einsatzbereit. :D

    Für den oben genannte Displaytyp gebt Ihr folgenden Befehl ein:

    Code
    sudo ./LCD35-show

    Für die anderen Displaytypen lauten die Befehle so, analog zu meiner obigen Aufführung:

    sudo ./LCD32-show
    sudo ./LCD4-show
    sudo ./LCD43-show
    sudo ./LCD5-show
    sudo ./LCD7-800x480-show
    sudo ./LCD7-1024x600-show
    sudo ./LCD101-1024x600-show

    Ich wünsche nun viel Spaß und Erfolg :thumbs1:

    Nachtrag: Nachdem der Treiber nur 9,6KB hat habe ich mir gedacht, es macht doch Sinn diesen hier als Attachment dran zu hängen.
    So geht er nicht verloren :cool:


    Nachtrag:

    DISPLAY WIEDER ZURÜCKSETZEN
    Nachdem ich das Display erfolgreich zum Laufen gebracht hatte, stellte ich fest das der Raspberry Pi (auch nach Abklemmen des Displays)
    grafisch am HDMI-Monitor und auch per Fernsteuerung über TeamViewer nur noch in der TFT-Display Auflösung zur Verfügung stand,
    was ja absolut nicht zu gebrauchen ist.
    Nach einiger Recherche fand ich dann den Hinweis, dass wenn man in den HDMI Modus zurückwechseln möchte, man
    dies statt dem Aufruf (wie oben beschrieben)

    sudo ./LCD35-show
    durch
    sudo ./LCD-hdmi

    bewerkestelligen könnte. Es hat zwar dann funktioniert, allerdings waren ein paar kleine Fehler in dem Script was auf Verzeichnisse und Dateien
    verwies, welche so gar nicht existierten (zumindest bei mir). Außerdem spielte er danach Standard Dateien zurück welche so bei mir auch nicht mehr
    existierten, da sie bereits vor dem Aufsetzen des Displays angepasst wurden (Thema: Config.txt Datei, Monitorauflösung anpassen etc.).
    Diese Einstellungen waren also für mich verloren und ich überlegte mir, wie ich das in Zukunft komfortabler gestalten kann.

    Meine Lösung hierfür ist eine selbstgeschriebe Script Datei, welche folgende Aufgaben automatisiert übernimmt:

    • Sichern der Original Dateien (config.txt , comandline.txt & 99-fbturbo.conf) (Ich nenne sie mal HDMI Dateien)
    • Erstmaliges starten und Aufrufen der LCD-TFT-DISPLAY Datei mit darauffolgendem Reboot und dann Betrieb im LCD-Display Mode
    • Bei erneutem Aufrufen, sichern der TFT Dateien, zurückspielen der HDMI Dateien und im HDMI-Modus erneut starten
    • usw. Also bei jedem Aufruf (über Kommandozeile oder GUI) rebootet der Rechner neu und startet dann wieder im jeweiligen anderen Modus


    Vorraussetzungen, das Ihr das Script 1:1 übernehmen könnt:

    • Ihr seid als Raspberry Pi User angemeldet
    • Ihr hab die Treiber Datei (wi oben beschrieben) entpackt und sie liegt als LCD-show Vezeichnis in Euerem Homeverzeichnis unter: /home/pi
    • Ihr benötigt den gleichen Treiber für das 3,5" Display


    Ansonsten, wenn Ihr einen anderen Treiber (anaolg zu oben beschrieben) einsetzten möchtet bzw. Euere Treiberdatei woanders abgelegt habt,
    müsst Ihr einfach nur die Dateipfade in der Datei ändern bzw. den Treibereintrag: /LCD35-show abändern. Dann sollte es auch klappen.
    So wie es aussieht ist die Wahl des Treibers egal. Es werden immer nur die 3 relevanten Dateien (config.txt , comandline.txt & 99-fbturbo.conf)
    beeinflusst, welche ihr unverändert wieder für den "Normalbetrieb" benötigt. Somit ist dann auch das Script universell einsetzbar.

    So hier kommt mal das Script.
    Zum besseren Verstädnis habe ich es kommentiert:

    Der Einfachheit halber könnt Ihr es Euch natürlich (unten) auch herunterladen.


    Die Script Datei könnt Ihr natürlich nennen wie Ihr wollt (Ihr müsst dann natürlich ggf. Änderungen machen).
    Ich habe sie HDMI-TFT.sh genannt.

    Wenn Ihr die Datei auf Eueren Raspberry Pi kopiert habt, geht zunächst über das Terminalfenster in die Komandozeile
    in das Verzeichnis hinein, dort wo die Datei liegt. Wir müssen dem System nun noch mitteilen, daß dies in Zukunft
    noch eine Ausführbare Datei ist. Dies machen wir mit dem Befehl:

    Code
    sudo chmod +x HDMI-TFT.sh

    Anschließend verschieben wir die Datei noch in ein Verzeichnis, wo sich Euere ausführbaren Dateien liegen und
    zwar auf dem Level Benutzerrechte.
    Das macht es später einfacher, denn Ihr köönt dann die Datei von überall aufrufen, ohne einen Pfad angeben
    zu müssen. Der RasPi sucht automatisch in dem Verzeichnis nach Euerer Datei und führt sie dann aus.
    Hier der "Verschieben" Befehl

    Code
    sudo mv HDMI-TFT.sh /usr/local/bin

    Jetzt sind wir auch schon fast fertig. Sobald wir im Terminal sind, können wir von überall die Datei nun
    auch als gleicher Benutzer ohne sudo starten, einfach durch die Eingabe von HDMI-TFT.sh

    Dies geht auch auf der grafischen Oberfläche durch anklicken der Auswahl RUN im Auswahlmenü
    und Eingabe von HDMI-TFT.sh
    Wer es noch ein wenig bequemer haben möchte, kann sich auch eine Verknüpfung auf den Desktop
    legen. Ihr öffnet dazu den Dateimanager, geht in das Verzeichnis /usr/local/bin greift dort
    mit der Maus die gleichnamige Datei und schiebt sie auf den Desktop. Kurz vor dem "Fallen lassen"
    drückt ihr noch die ALT Taste. Ihr werde dann gefargt, ob Ihr eine Verknüpfung
    anlegen möchtet. was Ihr mit JA beantwortet.
    In Zukunft könnt Ihr dann also den Displaywechsel komfortabel angehen :thumbs1:

    Aus der Reihe:
    Wer sich dann immer noch wundert, warum evtl die Anzeige (vor allem bei nicht angeschlossenem HDMI Monitor)
    beim TeamViewer zu klein ist, sollte mal seine config.txt im Verzeichnis /boot überprüfen.

    Für eine FullHDMI Auflösung sollten hier u.U. folgende Einträge stehen:


    Auch noch ein kleiner Hinweis:
    Wenn man irgendwann einmal weitere Installationen tätigt, welche selbstständig Eintragsänderungen in der config.txt
    Datei vornehmen, fonktionieren diese dann immer nur im dementsprechenden Display Mode, da in diesem die
    Einträge erfolgt sind. Wenn Ihr Euch wundert, warum vielleicht manches nicht mehr geht, weil Ihr den Display Mode
    gewechselt habt, vergleicht mal die Dateien ob es da dann unterschiedliche Einträge gibt. Wenn ja solltet Ihr diese
    dann auch in der anderen config.txt händisch nachtragen.

  • Raspberry Pi 3 erfolgreich mit Kuman 3,5" TFT Touch Display? Schau mal ob du hier fündig wirst!

  • Faszinierend! Mich hat gerade das Datum des Treibers stutzig gemacht: LCD-show-160811.tar.gz
    Ich habe zwar nicht den Inhalt verglichen, aber irgendwie kommt mir es so vor, als ob sich Spotpear Electrics bei Waveshare vergriffen hat: http://www.waveshare.com/wiki/3.5inch_RPi_LCD_(A)
    und einfach nur deren Treiber bereitstellt ...
    Wo hast Du Dein Display denn bestellt?

    /luetzel


  • Faszinierend! Mich hat gerade das Datum des Treibers stutzig gemacht: LCD-show-160811.tar.gz
    Ich habe zwar nicht den Inhalt verglichen, aber irgendwie kommt mir es so vor, als ob sich Spotpear Electrics bei Waveshare vergriffen hat: http://www.waveshare.com/wiki/3.5inch_RPi_LCD_(A)
    und einfach nur deren Treiber bereitstellt ...
    Wo hast Du Dein Display denn bestellt?

    /luetzel

    Hallo Luetzel,
    das Teil habe ich "im großen Fluss" bestellt.
    Die haben da auch mehrere Anbieter u.a. auch WaveShare und auch mehrer Displaygrößen.

    Ich weiss jetzt garnicht mehr ob Spotpear auch den Kuman vercheckt. Wie gesagt, bin über diverse Kommentare dorthin gekommen.
    Da hat auch einer sein Kuman damit aktiviert. Somit (habe nicht genau nachgesehen) kann es sein das Spotpear tatsächlich auch
    das Waveshare verkauft und auch somit deren Treiber logischer Weise benutzt.
    Den Waveshare Link habe ich übrigen auch mittlerweile entdeckt. Und ja, es sind exakt die gleichen Treiberdateien, denn beide
    haben auch die gleichen Fehler drin :D

    Hatte ja auch erwähnt das ich vermute, dass wahrscheinlich alle angebotenen Displays dieser Art aus ein und der selben "China Klitsche"
    kommen und einfach nur umgelabelt werden. Deshalb funktioniert der Treiber wohl bei vielen (wenn auch nicht Waveshare) Modellen.

    In der Zwischenzeit habe ich mal die Treiber mit meinem Laien-Linux-Wissen analysiert (deshalb habe ich auch die gleichen Fehler gefunden).
    Mich hat es nämlich gewurmt, nachdem ich den Treiber und somit das Display zum laufen gebracht hatte, mir der Treiber alles umgestellt
    hatte - Somit meine alten Config Einträge verloren waren und wenn ich per Fernsteuerung (TeamViewer) auf den RasPi Zugriff,
    dann immer nur noch die kleine Auflösung auf meinem großen Monitor erschien.
    WaveShare erklärt zwar, dass man dass durch aufrufen von ./LCD-hdmi zurückstellen kann. Es geht zwar, aber erstens sind in dem Script Fehler drin
    (er sucht nach Dateien die es gar nicht gibt) und zweitens kopiert er dann eine Standard Config zurück, welches aber nicht meine vorherige war und
    dann somit auch nicht mehr stimmt.

    Ich habe mir also eine kleine Scriptdatei geschrieben welche aufgerufen wird, zunächst alle meine Originaldaten sichert, dann die LCD-Treiber
    Installation startet und in den LCD-Displaymodus hochfährt.
    Möchte ich danach wieder den HDMI-Modus haben, rufe ich sie erneut auf und er macht wieder alles rückgängig und so weiter im Wechsel.
    Funktioniert prima und ist bequem. Werde es demnächst im meinem Tutorial nachträglich einbauen.

    Jetzt stört mich nur noch, dass das Display permanent ein weißes backlight hat wenn der RasPi zwar noch am Strom hängt, aber runtergefahren
    ist. Wenn ich hierzu was finde postet ich das hier auch noch. Eventuelle versierte Leser dieses Beitrages mit einer Lösung sind natürlich herzlich willkommen.


    Gruß Dirk


  • Jetzt stört mich nur noch, dass das Display permanent ein weißes backlight hat wenn der RasPi zwar noch am Strom hängt, aber runtergefahren
    ist. Wenn ich hierzu was finde postet ich das hier auch noch. Eventuelle versierte Leser dieses Beitrages mit einer Lösung sind natürlich herzlich willkommen.

    Soweit ich weiß kann man das Backlight bei diesen China-Klonen nicht abschalten. Bei meinem wird zwar auch das fbtft modul benutzt,
    aber /sys/class/backlight ist bei mir leer.

    Bei manchen Displays geht das mit:

    Code
    # Turn off backlight
    echo 1 | sudo tee /sys/class/backlight/*/bl_power
    
    
    # Turn on backlight
    echo 0 | sudo tee /sys/class/backlight/*/bl_power


    oder wenn man WiringPi installiert hat:

    Code
    gpio -g mode 18 pwm 
    
    
    gpio -g pwm 18 1023

  • Automatisch zusammengefügt:

    Nö, hat leider auch nicht geklappt (beide Vorgehensweisen).
    Aber ich vermute GPIO ist hier der Ansatz, denn aus meiner Laien Sicht vereinfacht gesagt:
    Sperre ich die Versorgung (Strom etc.) sollte das Teil aus sein.


    Trotzdem Danke

    Einmal editiert, zuletzt von Dirgi2 (15. Oktober 2016 um 18:06)

  • Hey,
    ich bin blutiger Anfänger und habe meinen Raspberry 3 seit gestern in Betrieb.
    habe eben alles genau ausgeführt wie beschrieben, doch wenn ich nachdem alles ordentlich entpackt ist und ich die LCD35-show Datei auch im Ordner sehe gebe ich "sudo ./LCD35-sho" in die Konsole eine und es kommt nur:
    sudo: ./LCD35-show: Kommando nicht gefunden.
    nach einigem rumprobieren bin ich leider zu keinem Ergebnis gekommen und bitte euch um Rat,evtl erkennt ja jemand sofort das Problem :)
    Lg JasonBambula

  • Moin,

    ich muß gestehen, ich bin auch ein blutiger Anfänger. Ich habe das Jessie System drauf bekommen. Die Installation des Montiortreibers für den 3.2" habe ich nach einen Jutube Video von Pollin gemacht. Seitdem geht der Mini Monitor gut, jedoch mein 55" Monitor am HDMI-Anschluß zeigt nur beim Hochfahren den "Lauftext" zum Teil an. irgendwann dabei schaltet die Ausgabe auf den 3.2" um. Das Bild beim HDMI-Monitor bleibt einfach stehen.

    Nun habe ich Deine Treiber rüber geschoben und Dein tolles Programm, so wie Du es beschreibst, installiert. Nach dem Aufruf passiert etwas und ein Neustart, jedoch entweder wie oben beschrieben oder auf dem HDMI Monitor ist nur ein Startbild "PIXEL" zu sehen. Die GUI läuft immer auf dem 3.2"er.

    Was muß ich machen, damit ich das Bild auf den HDMI-Monitor bekomme?

    Gruß

    Harald

  • Moin,


    ich habe meinen Raspberry noch einmal neu aufgesetzt ohne aufgesteckten Bildschirm. Nachdem alles soweit fertig war habe ich den Bildschirm aufgesteckt und mich nach obiger Anleitung gerichtet. Nun geht es einwand frei mit dem 3.2" Bildschirm.

    Danke für die Arbeit.


    Gruß

    Harald

  • Hallo,

    Ich möchte hier auch kurz meinen Senf dazu geben, da ich nicht zuletzt dank dieser hervorragenden Erklärung mein Display zum Laufen bekommen habe. Vielen Dank :)

    Nun, o.a. Anleitung funktioniert wie gesagt hervorragend, jedoch "nur" in exakt dieser Form, sprich mit:
    - Raspbian 2016-09-23
    - Treiber-Version LCD-show-160811.tar.gz

    Damit bekam ich es problemlos zum Laufen, jedoch, sobald ich das Raspbian geupdated habe (apt-get update + upgrade), oder auch ein aktuelleres Raspbian verwendet habe, war es vorbei: Das Display blieb bei einem traurigen weißen Hintergrund.

    Nach ein wenig Recherche hab ich die Möglichkeit aufgetan, bestimmte Pakete manuell vom update auszunehmen, in diesem Fall die entscheidenden beiden, nämlich den Kernel und den bootloader:

    Code
    sudo apt-mark hold raspberrypi-kernel raspberrypi-bootloader

    Das ist natürlich grundsätzlich überhaupt nicht wünschenwert, aber wenn es nicht anders geht..
    Bestimmt kann man auch eine etwas jüngere Raspbian Version nehmen, mit der es dann immer noch läuft, aber dann bleibt die Frage, ab welcher das nicht mehr der Fall ist. Falls sich jemand daran versuchen möchte: Ältere Raspbian images

    Naja. Vielleicht mag es jemandem nützen :)

  • Hi!

    Danke für die klasse Anleitung und Script!

    Ich habe ein "kleines" Problem. Und zwar immer wenn ich im TFT-Modus bin, startet bei mir der Desktop nicht. Ich kann mich dann nur mehr mit Putty verbinden.

    Wechsle ich wieder in den HDMi Modus, bootet der Raspi schön zum Desktop.

    Hat da vielleicht jemand eine Idee? Ich wäre sehr dankbar!

  • spyfly
    13. Mai 2014 um 20:01

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!