3,2-Zoll-Monitor von Joy-it im Test

© Computec Media GmbH

Knirps

Der 3,2 Zoll kleine Monitor von Joy-it, zusammen mit dem RasPi kaum größer als eine Packung Zündhölzer, bietet eine interessante Alternative zu einer reinen Headless-Konfiguration. Er erleichtert das Überwachen des Boot-Vorgangs und das Verfolgen von Ausgaben, die nur ein Paar Zeichen oder Zeilen umfassen.

Manchmal kann ein kleiner Bildschirm am RasPi nützlich sein: etwa um zu wissen, was sich beim Booten so alles abspielt, oder für eine kompakte Appliance. Idealerweise lässt sich ein solches Display ohne Kabel direkt ans Board anschließen, so wie der 3,2-Zoll-Monitor von Joy-it [1].

In etwa genauso breit beziehungsweise lang wie der RasPi, ist das TFT-Display keinen halben Zentimeter hoch, sodass das Gesamtpaket kaum mehr Platz braucht als eine Headless-Konfiguration. Am linken Rand des Monitors befinden sich drei programmierbare Knöpfe. Das Display weist eine Auflösung von 320 x 240 Pixeln bei 16 Bit Farbtiefe auf. Sie stecken es auf den GPIO-Port eines Raspberry Pi 2 oder 3.

Bezugsquellen

Das 3,2-Zoll-Display von Joy-it gibt es sowohl bei Reichelt [14] als auch bei Conrad [15] für knapp 30 Euro zu kaufen. Die Händler ELV [16] und Conrad [17] bieten zudem für etwa 9 Euro ein Gehäuse an, in das sowohl der RasPi als auch der Monitor passen.

Installation

Es gibt zwei Wege, um das Display am RasPi zum Laufen zu bringen. Der erste Weg, die manuelle Installation, eignet sich für erfahrene Anwender und hat den Vorteil, dass er mit jeder Distribution für den RasPi funktioniert. Dazu kopieren Sie das Image des Betriebssystems zunächst mit Dd oder Etcher auf eine SD-Karte (Listing 1). Anschließend verbinden Sie den RasPi mit einem Monitor, der keine Treiber braucht, und booten ihn von der SD-Card.

Listing 1

 

$ dd if=Pfad/zum/Image.img of=Gerätename progress=status; sync

Den benötigten Display-Treiber schlägt der Raspberry Pi in der Konfigurationsdatei /boot/config.txt nach, weshalb Sie hier einen entsprechenden Eintrag ergänzen (Listing 2). Weiter geht es mit der Datei /boot/cmdline, wo Sie am Ende der ersten Zeile den Wert fbcon=map:10 anfügen.

Listing 2

 

dtparam=spi=on
dtoverlay=joy-IT-Display-Driver-32b-overlay:rotate=270,swapxy=1

Darüber hinaus muss der RasPi wissen, über welchen Kanal er das Bild ausgeben soll. Dazu ändern Sie den fraglichen Gerätenamen in /dev/fb1, damit die Ausgabe am GPIO-Port erfolgt (Listing 3). Den Touchscreen des Joy-it-Displays kalibrieren Sie ebenfalls mithilfe einer Textdatei (Listing 4). Der Speicherort der Dateien aus Listing 3 und Listing 4 hängt vom Betriebssystem ab; üblicherweise handelt es sich um das Verzeichnis /usr/share/X11/xorg.conf.d/ oder /etc/X11/xorg.conf.d/.

Listing 3

 

# fbturbo.conf
Section "Device"
  Identifier "Allwinner A10/A13 FBDEV"
  Driver     "fbturbo"
  Option     "fbdev" "/dev/fb1"
  Option     "SwapbuffersWait" "true"
EndSection

Listing 4

 

# calibration.conf
Section "InputClass"
  Identifier   "calibration"
  MatchProduct "ADS7846 Touchscreen"
  Option       "Calibration" "160 3723 3896 181"
  Option       "SwapAxes" "1"
  Option "TransformationMatrix" "1 0 0 0 - 1 1 0 0 1"
EndSection

Nun wechseln Sie ins Verzeichnis /tmp/ und laden die Treiber herunter (Listing 5). Das Tool Raspi-config erlaubt eine Einstellung, um ohne Login direkt in die grafische Oberfläche zu starten [2]. Dazu springen Sie unter Boot Options | B4 Desktop Autologin per Tabulator zu OK und bestätigen die Einstellung mit der Eingabetaste. Anschließend landen Sie wieder im ersten Fenster des Konfigurationswerkzeugs, das Sie durch Drücken auf Finish verlassen. Zu guter Letzt willigen Sie ein, den RasPi neu zu starten.

Listing 5

 

$ cd /tmp
$ wget anleitung.joy-it.net/upload/joy-IT-Display-Driver-32b-overlay.dtb
# cp joy-IT-Display-Driver-32b-overlay.dtb /boot/overlays/joy-IT-Display-Driver-32b-overlay.dtbo

Doppeltes Lottchen

Das Joy-it-Display bietet die Möglichkeit, zweigleisig zu fahren: Das Bild lässt sich gleichzeitig auf dem TFT-Display und einem Desktop-Monitor ausgeben, vorausgesetzt, Letzterer hängt via HDMI am RasPi. Dazu ändern Sie in der Datei fbturbo.conf aus Listing 3 den Gerätenamen in /dev/fb0 und ergänzen die Konfiguration, indem Sie unter anderem die Auflösung des Desktop-Monitors angeben (Listing 6).

Listing 6

 

#/boot/config.txt
hdmi_ignore_edid=0xa5000080
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=87
# Auflösung des Desktop-Monitors:
hdmi_cvt=1024 768 60 1 0 0 0
# 1024 768 -> Auflösung des Monitors
# 60 -> Bildwiederholfrequenz
# 1 -> Verhältnis 4:3 (3 -> 16:9)

Zusätzlich benötigen Sie das Programm Framebuffer-Copy [3] – Fedberry [4] erfordert dafür zusätzliche Pakete, die Sie dort mit dem Befehl aus Listing 7 installieren. Danach laden Sie die Quellen zu Framebuffer-Copy herunter [5] und kompilieren das Programm (Listing 8). Beklagt sich der Compiler darüber, er finde Dateien der VideoCore-Bibliothek [6] nicht, dann wurde diese Bibliothek nicht im Standardverzeichnis abgelegt. Glücklicherweise genügt es in diesem Fall, die Pfade in der Konfigurationsdatei von Cmake zu ändern, um Framebuffer-Copy erfolgreich zu kompilieren (Listing 9).

Listing 7

 

# dnf install gcc-c++ gcc cxxtools cmake git kernel-headers raspberrypi-vc*

Listing 8

 

$ cd /tmp
$ git clone https://github.com/tasanakorn/rpi-fbcp
$ mkdir -p rpi-fbcp/build
$ cd rpi-fbcp/build
$ cmake ..
$ make
# install fbcp /usr/bin/fbcp

Listing 9

 

#/tmp/rpi-fbcp/CMakeLists.txt
(...)
include_directories(Pfad/zu/vc)
include_directories(Pfad/zu/vc/include/interface/vcos/pthreads)
include_directories(Pfad/zu/vc/include/interface/vmcs_host)
include_directories(Pfad/zu/vc/include/interface/vmcs_host/linux)
link_directories(Pfad/zu/lib/vc)
(...)

Zu guter Letzt richten Sie Framebuffer-Copy so ein, dass es beim Booten automatisch startet. Falls das Betriebssystem mit Runlevels arbeitet, ergänzen Sie in der Datei rc.local die beiden Zeilen fbcp & und exit 0. Betriebssysteme wie Sabayon ARM benutzen für solche Aufgaben OpenRC [7]. Hier legen Sie im Systemd-Verzeichnis (meist /usr/lib/systemd/system/) eine eigene Datei mit der Endung .service an (Listing 10). Schließlich sorgen Sie mit dem Aufruf systemctl enable Name.service dafür, sodass OpenRC den Befehl im Hintergrund startet.

Listing 10

 

# Name.service
[Unit]
Description="Mirror fb0 to fb1"
After=network.target
[Service]
Type=simple
User=%i
ExecStart=/usr/bin/fbcp &
[Install]
WantedBy=multi-user.target

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Aktuelle Ausgabe

02/2018
Digital Signage

Diese Ausgabe als PDF kaufen

Preis € 7,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Neues auf der Heft-DVD

    Nur mit dem optimalen System und der richtigen Software nutzen Sie das volle Potenzial des Raspberry Pi. Mit der Heft-DVD erhalten Sie nicht nur die neusten Distributionen für den RasPi und Co., sondern gleichzeitig auch die passenden Programme zu den Artikeln.

  • Ferngebootet

    Das Booten über das Netzwerk beherrscht auch der RasPi 3 – und bietet damit sehr viel mehr Flexibilität, als Sie mit SD-Cards erzielen können.

  • Bleibende Werte

    Ein EEPROM dient dazu, Daten auch nach Abschalten der Energiezufuhr zu speichern, etwa als Kanalspeicher in Autoradios. Wir zeigen, wie Sie einen solchen Speicher beschreiben und wieder auslesen.

  • Auf Wolke 1

    Mit einem schnellen Netzwerkanschluss und einer SATA-Schnittstelle dient sich der Odroid HC1 als NAS-Alternative an – allerdings nicht für jedermann.

  • Wohnungsfunker

    Der kompakte Router GL.iNet dockt problemlos am Raspberry Pi an und erweitert diesen um einen Access Point samt Server-Funktion.

  • Satter Sound

    Mit zwei ICs am I2S-Bus und ein paar zusätzlichen Bauteilen erweitern Sie den Raspberry Pi um eine Soundkarte, die keine Kontaktmöglichkeit mit gängigem HiFi-Equipment scheut – von Klinke und RCA bis IEC60958, Koax-S/PDIF oder optischem TOSLINK.

  • Wer klopfet an?

    Wechselsprechanlagen mit Bild- und Tonübertragung gibt es zwar von der Stange, allerdings zu gesalzenen Preisen. Günstiger und obendrein flexibler ist ein Eigenbau mit Pi Zero und RasPi 3.

  • Wiedergeburt

    Mit dem Keyrah-Tastaturadapter und einem Raspberry Pi machen Sie aus einem defekten C64 eine optimale Emulator-Station, bei der Sie die originale Tastatur und die Joystick-Ports nutzen.

  • Kleine Nachtmusik

    Waveform8 beseitigt einige Ecken und Kanten des Vorgängers Tracktion – und macht die DAW endgültig fit für den Einsatz auf dem Raspberry Pi.

  • Recycling

    Mit einer Dockingstation lassen sich ausgemusterte IDE/SATA-Festplatten im 2,5- und 3,5-Zoll-Format am Raspberry Pi betreiben. Mit dem Samba-Server gliedern Sie den Mini-Rechner dann als Datenspeicher in Ihr lokales Netzwerk ein.