.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:
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
Um festzustellen ob der download erfolgreich war, kann ich durch Eingabe von
prüfen, ob sich im Verzeichnis die oben genannte Treiberdatei befindet.
Nun lasse ich mir dort zunächst die Treiberdatei entpacken durch Eingabe von:
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:
den eben heruntergeladenen Treiber könnt Ihr nun aus Downloads wieder löschen wenn Ihr wollt mit dem Befehl:
(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
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.
Für den oben genannte Displaytyp gebt Ihr folgenden Befehl ein:
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
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.
#!/bin/bash
# Prüfen ob bereits ein Verzeichnis angelegt wurde
if [ -d /home/pi/DisplayData ]
then # Verzeichnis existiert
if [ -f /home/pi/DisplayData/TFT-Modus ]
then
# Aktuell befinden wir uns um TFT-Display Modus. Es wird nun wieder
# auf dem HDMI-Modus umgestellt
# Hierzu werden zunächst die aktuellen TFT-Display Dateien gesichert.
sudo cp /boot/cmdline.txt /home/pi/DisplayData/boot/cmdline.txt.TFTdisplay
sudo cp /boot/config.txt /home/pi/DisplayData/boot/config.txt.TFTdisplay
sudo cp /usr/share/X11/xorg.conf.d/99-fbturbo.conf /home/pi/DisplayData//usr/share/X11/xorg.conf.d/99-fbturbo.conf.TFTdisplay
# Nun wird die Kennzeichnung umbenannt
sudo mv /home/pi/DisplayData/TFT-Modus /home/pi/DisplayData/HDMI-Modus
# Jetzt werden die HDMI Display Daten zurückgespielt
sudo cp /home/pi/DisplayData/boot/cmdline.txt.HDMIdisplay /boot/cmdline.txt
sudo cp /home/pi/DisplayData/boot/config.txt.HDMIdisplay /boot/config.txt
sudo cp /home/pi/DisplayData//usr/share/X11/xorg.conf.d/99-fbturbo.conf.HDMIdisplay /usr/share/X11/xorg.conf.d/99-fbturbo.conf
# Nun macht das System einen Reboot und startet dann wieder im HDMI-Modus
sudo reboot
else
# Da die Datei TFT-Modus nicht existiert können wir nur noch im HDMI-Modus sein.
# Wir wechseln also jetzt wieder in den TFT-Display Modus
# Zunächst sichern wird die aktuellen HDMI-Display Dateien
sudo cp /boot/cmdline.txt /home/pi/DisplayData/boot/cmdline.txt.HDMIdisplay
sudo cp /boot/config.txt /home/pi/DisplayData/boot/config.txt.HDMIdisplay
sudo cp /usr/share/X11/xorg.conf.d/99-fbturbo.conf /home/pi/DisplayData//usr/share/X11/xorg.conf.d/99-fbturbo.conf.HDMIdisplay
# Nun wird die Kennzeichnung umbenannt
sudo mv /home/pi/DisplayData/HDMI-Modus /home/pi/DisplayData/TFT-Modus
# Jetzt werden die TFT Display Daten zurückgespielt
sudo cp /home/pi/DisplayData/boot/cmdline.txt.TFTdisplay /boot/cmdline.txt
sudo cp /home/pi/DisplayData/boot/config.txt.TFTdisplay /boot/config.txt
sudo cp /home/pi/DisplayData//usr/share/X11/xorg.conf.d/99-fbturbo.conf.TFTdisplay /usr/share/X11/xorg.conf.d/99-fbturbo.conf
# Nun macht das System einen Reboot und startet dann wieder im TFT-Modus
sudo reboot
fi
else # Dieser Vorgang passiert normalerweise beim erstmaligen Start
# Verzeichnis existiert nicht
# Verzeichnis wird angelegt für die Dateikopien
# Das Verzeichnis wird mit dem Namen "DisplayData" angelegt im Home Verzeichnis von pi
# Wer etwas anderes möchte, muss ggf. dann die Pfade und Namen ändern
# Ebenso werden in diesem Verzeichnis Unterverzeichnisse angelegt, so
# wie sie original auf dem RasPi sind. Das macht dann später die Zurdnung leichter
sudo mkdir /home/pi/DisplayData
# Die Unterverzeichnisse werden angelegt.
sudo mkdir /home/pi/DisplayData/boot
sudo mkdir /home/pi/DisplayData/usr
sudo mkdir /home/pi/DisplayData/usr/share
sudo mkdir /home/pi/DisplayData/usr/share/X11
sudo mkdir /home/pi/DisplayData/usr/share/X11/xorg.conf.d
# Nun werden die Originaldateien in die entsprechenden Unterverzeichnisse kopiert.
# Zusätzlich erhalten sie noch die Dateiendung "original" zur besseren Unterscheidung
# Diese Dateien bleiben ab diesem Zeitpunkt immer im Original erhalten. Sie werden
# sich nicht mehr verändern. Aus diesem Grund gibt es dann auch noch eine Arbeitskopie
# dieser Dateine, mit welchen dann in Zukunft gearbeitet wird.
sudo cp /boot/cmdline.txt /home/pi/DisplayData/boot/cmdline.txt.original
sudo cp /boot/config.txt /home/pi/DisplayData/boot/config.txt.original
sudo cp /usr/share/X11/xorg.conf.d/99-fbturbo.conf /home/pi/DisplayData//usr/share/X11/xorg.conf.d/99-fbturbo.conf.original
sudo cp /boot/cmdline.txt /home/pi/DisplayData/boot/cmdline.txt.HDMIdisplay
sudo cp /boot/config.txt /home/pi/DisplayData/boot/config.txt.HDMIdisplay
sudo cp /usr/share/X11/xorg.conf.d/99-fbturbo.conf /home/pi/DisplayData//usr/share/X11/xorg.conf.d/99-fbturbo.conf.HDMIdisplay
# Da das System gleich im TFT Display Modus hochfährt, legen wir
# eine kleine Hinweisdatei an, welche später bei der Display Rückstellung
# Ausgewertet wird.
sudo touch /home/pi/DisplayData/TFT-Modus
# Davon ausgehend, daß Die die Treiber für das TFT Display entpackt worden sind
# und als Verzeichnis "LCD-show" im Ordner /home/pi/ liegen, wird nun die
# dortige Initialisierungsdatei aufgerufen. Achtung der Aufruf bezieht sich aktuell
# auf das 3,5" Display. Wenn Ihr ein anderes Display habt, müsst ihr den Dateinamen ändern.
# (wie bereits beschrieben)
# Sobald die Initialisierungsdatei startet, dauert es ein wenig, der RasPi fährt runter
# (Das Display sollte bereits angeschlossen sein), es dauert ein wenig und der RasPi
# fährt nun im Display Modus hoch
cd /home/pi/LCD-show
sudo /home/pi/LCD-show/LCD35-show
fi
Alles anzeigen
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:
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
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:
.
.
.
disable_overscan=1
.
.
framebuffer_width=1920
framebuffer_height=1080
.
.
hdmi_group=1
hdmi_mode=16
.
.
Alles anzeigen
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.