Nachdem ich meinen kleinen Touchscreen auf dem Raspberry Pi zum Laufen bekommen habe. Wollte ich die etwas unschöne Auflösung der Konsole ändern.
sudo dpkg-reconfigure console-setup

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.
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.
sudo apt-get update sudo REPO_URI=https://github.com/notro/rpi-firmware rpi-update sudo reboot
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
sudo nano /boot/config.txt
Fügt dann die Zeile am Ende der Datei hinzu:
dtoverlay=rpi-display,speed=32000000,rotate=270
Anschießend rebootet ihr den Pi
sudo reboot
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
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
sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf
Ändert den Eintrag „fbdev“ „/dev/fb0“ auf „fbdev“ „/dev/fb1“ ab
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
Damit die Einstellungen auch permanent funktionieren, habe ich diese in die Datei xinitrc geschrieben.
sudo nano /etc/X11/xinit/xinitrc
sudo nano /etc/rc.local
su -l pi -c "env FRAMEBUFFER=/dev/fb1 startx &"
sudo reboot
Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕ ausgeben.
bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj
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
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
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