RPi-Display – 2,8″ LCD for Raspberry Pi B+

Nachdem ich bereits seit längerem Besitzer eines kleines TFT-Touch-Display für meinen Raspberry Pi bin, hatte ich nun endlich mal Zeit und vor allem Muße, das Ganze zu konfigurieren.

Ich wollte eigentlich alles mit Hilfe des bereitgestellten Script rpi-display.sh erledigen. Leider hat das bei mir, trotz neuer Raspbian-Version nicht funktioniert. Aus diesem Grund habe ich den etwas längeren Weg über die manuelle Installation gewählt.

Hardware

Meine Hardware

Ladet die aktuellste Version von Raspbian herunter ( ➡ https://www.raspberrypi.org/downloads/)und kopiert diese auf die SD-Karte ( ➡ https://www.raspberrypi.org/documentation/installation/installing-images/README.md. Ich verwende für diese Anleitung 2015-05-05-raspbian-wheezy.

Die nachfolgenden Schritte habe ich durchgeführt, um das Display mit Touch zum laufen zu bekommen.

Schritt 1: Systemupdate

sudo apt-get update
sudo REPO_URI=https://github.com/notro/rpi-firmware rpi-update
sudo reboot

Schritt 2: Touchscreen Tools installieren

sudo apt-get install tslib libts-bin xinput
cd /tmp
wget http://tronnes.org/downloads/xinput-calibrator_0.7.5-1_armhf.deb
sudo dpkg -i -B xinput-calibrator_0.7.5-1_armhf.deb
rm xinput-calibrator_0.7.5-1_armhf.deb

Schritt 3: Aktivieren von FBTFT

sudo nano /boot/config.txt

Fügt dann die Zeile am Ende der Datei hinzu:

dtoverlay=rpi-display,speed=32000000,rotate=270


FBTFT aktivieren
FBTFT aktivieren

Anschießend rebootet ihr den Pi

sudo reboot

Schritt 4: Kernel kompilieren

sudo nano /boot/cmdline.txt

fbtft_device.name=rpi-display fbtft_device.speed=32000000 fbtft_device.rotate=270

Ganz wichtig, fügt die folgenden Befehle hinter die bereits bestehenden an

Kernel Support
Kernel Support

Schritt 5: Konsolen-Support aktivieren

Führt in der Konsole den Befehl aus

con2fbmap 1 1

Damit das auch immer automatisch erfolgt, ist nocht die Datei zu editieren:

sudo nano /boot/cmdline.txt


Auch hier wieder ganz wichtig, fügt die Befehle am Ende der bereits bestehenden Zeile ein:

fbcon=map:10 fbcon=font:VGA8x8


Konsolen-Support
Konsolen-Support

Schritt 6: Aktivieren für X-Window-System

sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf

Ändert den Eintrag „fbdev“ „/dev/fb0“ auf „fbdev“ „/dev/fb1“ ab

Anpassung für X-Window-System
Anpassung für X-Window-System

Schritt 7: Starten des X-Servers und setzen der ADS7846-Eigenschaften

startx &

Bei mir haben die beiden Einstellungen funktioniert. Die beiden Zeilen können einfach über die Konsole oder über SSH eingeben.

DISPLAY=:0 xinput --set-prop 'ADS7846 Touchscreen' 'Evdev Axes Swap' 1
DISPLAY=:0 xinput --set-prop 'ADS7846 Touchscreen' 'Evdev Axis Inversion' 0 1

Schritt 8: Einstellungen permanent machen

Damit die Einstellungen auch permanent funktionieren, habe ich diese in die Datei xinitrc geschrieben.

sudo nano /etc/X11/xinit/xinitrc

xinitrc
xinitrc

Schritt 9: Autostart X

sudo nano /etc/rc.local

su -l pi -c "env FRAMEBUFFER=/dev/fb1 startx &"

Autostart X
Autostart X

Schritt 10: Reboot

sudo reboot


Gib mir gerne einen Kaffee ☕ aus!

Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕ ausgeben.

PayPal Logo


liberapay.com/strobelstefan.de


Kaffee via Bitcoin

bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj


Schritt 11: Kalibrieren des Touchscreens

Nach dem Neustart des Pis sollte das Display funktionieren und der X-Server automatisch starten. Das Kalibrieren des Display geht dann ganz leicht. Im Menü findet sich ein grafisches Tool zum Einstellen des Touchscreen.

Alternativ kann man auch die Calibration so durchführen. Dafür benötigt ihr noch eine Library

sudo apt-get install libts-bin

Bevor es losgeht, führt den folgenden Befehl aus.

cat /proc/bus/input/devices

cat /proc/bus/input/devices
cat /proc/bus/input/devices

Ganz wichtig ist der Eintrag nach dem Buchstaben H. Im Screenshot findet Ihr den Eintrag event0, dieser ist auch in den nachfolgenden Befehlen zu verwenden.

Mit dem folgenden Befehl kann man den Touchscreen Kalibrieren:

sudo TSLIB_FBDEVICE=/dev/fb1 TSLIB_TSDEVICE=/dev/input/event0 ts_calibrate

Die folgende Zeile ermöglicht das Testen.

sudo TSLIB_FBDEVICE=/dev/fb1 TSLIB_TSDEVICE=/dev/input/event0 ts_test

Sonstiges

Solltet Ihr euren Raspberry Pi für einen 24-Stunden-Betrieb konfiguriert haben und in der fstab das Logging deaktiviert haben, dann geht ggfs. die Touch-Funktion nicht mehr.
Raspberry Pi im 24/7 Dauerbetrieb

Quellen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert