Wyświetlacz LCD dla Raspberry Pi niskim kosztem
Cześć, w dzisiejszym artykule chciałbym zaprezentować Wam jak w prosty i bardzo tani sposób podłączyć wyświetlacz LCD do Raspberry Pi (bez użycia złącza HDMI). Wystarczy nam do tego celu interfejs SPI wyprowadzony na pinach każdej malinowej płytki :) Zaczynajmy więc!
Instalacja systemu
Aby uruchomić GUI będziemy potrzebowali obrazu o nazwie Raspbian Stretch with desktop. Jeżeli chcemy na ekranie wyświetlić samą konsolkę lub budujemy coś a’la info-kiosk, to zdecydowanie polecam system podpisany Raspbian Stretch Lite. Obrazy systemów możemy pobrać ze strony https://www.raspberrypi.org/downloads/raspbian/. Do wypalenia obrazu na karcie idealnie nada się porgram o nazwie Etcher.
Podłączenie ekranu
Nazwy pinów wg. rozpiski ze strony https://pinout.xyz/
[table id=3 /]
Konfiguracja systemu
Pierwszym krokiem jest włączenie obsługi SPI.
sudo raspi-config
Interfacing options > SPI > Enable
Następnie dodajemy moduł rpi-display do pliku konfiguracyjnego malinki. W tym celu edytujemy za pomocą nano plik /boot/config.txt
sudo nano /boot/config.txt
Na jego końcu dopisujemy takie oto linijki:
dtoverlay=rpi-display dtparam=rotate=90 dtparam=speed=10000000 dtparam=xohms=100 dtparam=debug=4
Uważniejsi zauważą, że obracamy tutaj obraz o 90 stopni. Dzięki temu nasz nowy monitor będzie wyświetlał pulpit w poziomie, a nie w pionie (czyli tak jak na standardowym monitorze panoramicznym).
Po zapisaniu pliku i ponownym uruchomieniu malinki system powinien wykryć nasz ekran jako urządzenie /dev/fb1. Możemy to sprawdzić za pomocą komendy
ls /dev/fb*
Jeżeli nie widzimy fb1 to prawdopodobnie źle podłączyliśmy ekran.
Raspbian Stretch Lite
Z racji, że używamy minimalnego obrazu sami musimy zadbać o serwer X
sudo apt-get install --no-install-recommends xserver-xorg x11-xserver-utils xinit
Teraz musimy doinstalować preferowane przez nas środowisko. Tutaj odsyłam do dużo bardziej obszernego artykułu na forum Raspberry Pi.
Rasbian Stretch with desktop
Kolejnym krokiem jest domyślne przekierowanie serwera X na nasz ekran zamiast na złącze HDMI. W tym celu edytujemy plik /usr/share/X11/xorg.conf.d/99-fbturbo.conf
sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf
W polu Option „fbdev” zmieniając wartość „/dev/fb0” na „/dev/fb1”.
Gotowe
Po ponownym uruchomieniu malinki powinniśmy ujrzeć nasz pulpit na małym ekranie:
Jak widać do wyświetlania pulpitu taka zabawka się niezbyt nadaje, jednak jeżeli napiszemy własny program z odpowiednim UI, może się całkiem nieźle sprawdzić w roli prostego ekranu.
Jeżeli chcemy mieć tylko malutki ekran do konsoli wystarczy, że zmienimy opcję bootowania:
sudo raspi-config
Boot Options > Desktop / CLI > Wybieramy odpowiednią opcję (Console lub Console Autologin)
Po reboocie zobaczymy coś takiego:
Podłączenie takiego ekranu jest dobrym początkiem, jeżeli chcemy postawić coś w rodzaju kiosku informacyjnego na RPi. Co do tematu kiosku to postaram się go nieco rozwinąć w kolejnym artykule :)