Projekt > Raspberry Pi Dashcam > Display

Display

Seit Anfang des Jahres versuche ich das Display optimal für mich einzustellen und ausserdem gleichzeitig einen Monitor über HDMI zu nutzen. Also zwei Monitore wie ich es am PC unter Ubuntu tue. Leider ist es mir bisher noch nicht gelungen. Meine Ausführungen beziehen sich auch noch auf das Image vom 11. Januar 2017. Das Tool raspi-config wird ständig weiter entwickelt, so dass das Menue in der aktuellen Version vom 2. März 2017 ist etwas verändert ist. Die Anpassung der Anleitung folgt noch.

  • TFT-Display mit Touchscreen
  • Hardware
  • Serial Peripheral Interface
  • Installation
  • Fertige Images
  • Links
  • TFT-Display mit Touchscreen

    Es gibt verschiedene Displays mit und ohne Touchscreen. Ich habe mich für ein 3,2" TFT-Display mit Touchscreen und dri Tasten entschieden. Dieses wird bei Pollin als ODROID-C1 8,13 cm (3,2") TFT-Display mit Touchscreen angeboten und soll auch mit dem Raspberry kompatible sein. Ähnlich oder identisch aussehende Geräte habe ich bei verschiedenen Anbietern unter verschiedenen Namen und in verschiedenen Versionen gesehen.

    Hardware

    Das Display kam in einem weißen Karton mit dem Aufdruck ODROID Hardkernel und einem Aufkleber 3.2inch TFT + Touchscreen Shield sowie einem Aufkleber vom Verkäufer Pollin Elektronic mit dessen Bezeichnung und der Bestellnumer 810 400. Das Gerät war in einer Tüte verpackt und mit einem Polster geschützt.

    Auf der Rückseite der Platine ist der Hersteller WaveShare angegeben. Und obwohl auf dem Karton Odroid angegeben ist, steht hier 3.2inch RPi LCD V4 drauf. Bei WaveShare wird das Produkt als 3.2inch RPi LCD (B), 320×240 bezeichnet. In dem Angebot werden noch zwei Schrauben und eine DVD mitgeliefert welche bei Pollin nicht dabei waren.

    Das Display wird auf die GPIO-Leiste des Raspberry Pi aufgesteckt. Es ist auch möglich, das Display über ein Flachbandkabel mit dem Raspberry Pi zu verbinden. Wenn man den Raspberry Pi nun mit Strom versorgt, leuchtet die Hintergrundbeleuchtung des Displays.

    Serial Peripheral Interface

    Das Display wird über Serial Peripheral Interface (SPI) gesteuert. Dieses muss auf dem Raspberry Pi erst aktiviert werden. Dazu wird er Raspberry Pi gestartet und das Terminal über das Icon oben links in der Taskleiste oder die Tastenkombination [Steuerung] + [Alt] + [T] geöffnet. Um das Konfigurationsprogramm raspi-config aufzurufen gibt man den Befehl ein:

    $ sudo raspi-config
    

    Im Menue werden die Erweiterten Möglichkeiten - 7 Advanced Options ausgewählt.

    Im Untermenue wird der Eintrag A6 SPI, das Serial Peripheral Interface (SPI) ausgewählt.

    Nun kann das Serial Peripheral Interface (SPI) aktiviert und deaktivert werden. Da es benötigt wird, wird es aktiviert, also Yes ausgewählt.

    Nun muss die Einstellung noch einmal bestätigt werden.

    Die Konfiguration wird nun beendet.

    Und der Raspberry Pi wird neu gestartet.

    Installation

    Es gibt verschiedene Angaben über die zu installierenden Treiber. Ich habe mich für die Treiber vom Hersteller entschieden. Diese werden auch in dem Produktvideo von Pollin verwendet. Den aktuellen Treiber gibt es im Wiki von WaveShare.

    Jetzt könnte man den Web Browser Chromium von Raspbian verwenden um die Treiber herunter zu laden.

    Für das Raspbian-Image vom 2. März 2017 gibt es einen neueren Treiber vom 9. März 2017.

    Ich habe mir die Adresse der Treiber bereits notiert und öffne gleich das Terminal mit [Steuerung] + [Alt] + [T] und gebe den Befehl ein um die Treiber herunter zu laden. Anschliessend lasse ich mir den Inhalt des Verzeichnisses anzeigen. Das Anzeigen des Verzeichnisinhaltes ist optional und nicht zwingend. Wenn ich ein Verzeichnis oder eine Datei aufrufen würde, welche nicht existiert, würde ich ohnehin eine Fehlermeldung bekommen.

    $ wget http://www.waveshare.com/w/upload/4/4b/LCD-show-161112.tar.gz
    
    $ ls
    

    Nun entpacke ich das Archiv und lasse mir anschliessend wieder den Inhalt des Verzeichnisses anzeigen. Beim tar-Befehl schreibe ich nicht den gesamten Dateinamen hin, sondern drücke bereits nach dem L die Taste [Tabulator]. Da kein weiterer Dateiname mit L beginnt wird der Dateiname sofort automatisch vervollständigt.

    $ tar vxf LCD-show-161112.tar.gz
    
    $ ls
    

    Nach dem Entpacken wechsle ich in den Ordner LCD-show. Auch hier reicht das Eingeben des ersten Buchstaben, da kein weiterer Verzeichnisname mit L beginnt. Und wieder lasse ich mir den Inhalt des Verzeichnisses anzeigen.

    $ cd LCD-show
    
    $ ls
    

    Die grünen Namen sind alles Dateien. Da mein Display 3.2" hat, muss ich die Datei LCD32-show ausführen. Nach der Eingabe des ersten Buchstabens L drücke ich wieder die Taste [Tabulator]. Allerdings wird nur CD ergänzt, weil dann der Dateiname nicht mehr eindeutig ist. Wenn dann die 32 eingegeben ist, wird der Dateiname mit der Taste [Tabulator] vervollständigt.

    $ ./LCD32-show
    

    Anschliessend wird noch ein Befehlsaufruf ins Terminal geschrieben und der Raspberry bootet neu. Der Monitor wird nur so lange für die Ausgabe von Textzeilen genutzt, bis auf das Display umgeschaltet wird. Auf dem Display startet dann die grafische Oberfläche.

    Will man wieder den Monitor nutzen, muss man das Terminal mit [Steuerung] + [Alt] + [T] öffnen, in das Verzeichnis LCD-show wechseln ...

    $ cd LCD-show
    

    ... und die Datei ....

    $ ./LCD-hdmi
    

    ... ausführen. Daraufhin bootet der Raspberry Pi neu und startet die grafische Oberfläche auf dem Monitor.

    Dabei werden die Konfigurationsdateien überschrieben, so dass die entprechenden Dateien in dem Verzeichnis LCD-show bearbeitet werden müssten.

    Konfiguration

    Die native Auflösung des Displays ist für den Desktop von Raspbian zu gering. Ausserdem kann ich nur den Monitor oder das Display nutzen.

    Hier ist der Knoten. Ich wollte die /boot/config.txt bearbeiten, jedoch die Einstellungen werden ignoriert. Und ich sehe nicht, welche Dateien bearbeitet werden müssen.

    Fertige Images

    Es gibt auch fertige Images mit konfigurierten Displays.

    JOY-IT

    JOY-IT pflegt eine Downloadseite unter anderem auch für sein Touch-Display 3.2" V2 auf welcher es Anleitungen und drei fertige Images für das Display gibt.

    Das neueste Image ist ein Raspbian Jessie mit Stand 11. Januar 2017 (2017-01-11-raspbian-jessie_TFT32V2_800x600_HDMI.zip 1,9 GB). Monitor und Display sind im Dual-Monitor Mode als Clone mit einer Auflösung von 800 x 600 eingestellt. Die Auflösung von 800 * 600 sind mir auf dem Touchscreen zu hoch. 640 * 480 empfand ich jedoch als optimal. Allerdings funktioniert dann der Monitor nicht, weil er die Auflösung nicht unterstützt.

    Die anderen beiden Images waren jeweils ein Raspbian Wheezy mit Stand 16. Februar 2015 mit integrierten FBTFT-Modul. Einmal als AutoBoot (2015-02-15_wheezy_fbtft_autoboot.zip 1,5G) und einmal als Non-AutoBoot (2015-02-15_Wheezy_FBTFT_NonAutoBoot.zip 1,5G). Die Images passen auf 4 GB Karten. Ihre Konfiguration scheint jedoch nicht mit meinem Raspberry Pi kompatibel zu sein. Das mit Autoboot hängte sich weg. Das ohne Autoboot startete auf der Konsole und wollte die Calibration auf dem Monitor vornehmen. Ohne Monitor schien es sich auch wegzuhängen.

    DIY hacking

    Auf DIY hacking gibt es eine Anleitung mit dem Titel Raspberry pi touchscreen LCD: The Best LCD Tutorial. Diese Anleitung bezieht sich auf das selbe Display wie ich hier, jedoch noch in V3. Am Ende des ersten Absatzes des Kapitel Step 2: Install the raspbian OS image for the 3.2" raspberry pi touchscreen LCD display befindet sich ein Link zu de Archiv DVD_DVK512_CN_E.rar (1,02 GB) Dieses enthält unter anderem ein Image, welches ich jedoch auch nicht getestet habe.

    Links