Display-HAT Mini toont het weer op de Raspberry Pi
op
De display-HAT Mini van Pimoroni is uitgerust met een rechthoekig IPS-LCD (In-Plane Switching) met een diagonaal van 2,0" en een SPI-interface. Hij is bedoeld voor de Raspberry Pi Zero en Zero 2 W, maar omdat hij een standaard 40-pins HAT-connector heeft, kan het worden aangesloten op elke Raspberry Pi die is uitgerust met zo’n connector – als je voorzichtig bent, omdat de I2C-connector van de HAT (‘Breakout Garden-header’) in aanraking komt met de display-connector van de Raspberry Pi.
Specificaties van de display-HAT Mini
De resolutie van het scherm is 320x240 pixels (3:2), wat overeenkomt met ongeveer 200 ppi (pixels per inch). De kleurdiepte bedraagt 65K. Gemonteerd op een Raspberry Pi Zero zonder afstandshouders bedraagt de totale hoogte ca. 15 mm. Het scherm wordt geleverd met twee 10 mm hoge afstandshouders en vier kleine schroefjes (vijf in mijn geval). Voor mij zijn deze afstandshouders te hoog, 8,5 mm zou veel beter zijn geweest (maar dat is geen standaardmaat).
De HAT heeft niet alleen een display maar ook vier drukknoppen en een RGB-LED. De drukknoppen zitten zeer dicht bij het display, waardoor ze een beetje moeilijk te gebruiken zijn. Ik vermoed dat ze zo zijn geplaatst zijn om het display mechanisch een beetje extra steun te geven.
Hoewel de HAT de toegang tot de 40-pins HAT connector blokkeert, zijn uitbreidingen toch mogelijk dankzij de Qw/ST-connector (Qwiic/STEMMA QT) en de zogenaamde Breakout Garden-header. Beide headers bieden toegang tot de I2C-bus.
Ondersteund door Python-bibliotheken
Om de display-HAT Mini op een Raspberry Pi te kunnen gebruiken moet je een bibliotheek installeren. Gedetailleerde instructies over hoe dit te doen zijn te vinden op GitHub. Voorbeelden voor het gebruik van de display met Pygame en PIL worden ook gegeven.
Ik sloot de display-HAT Mini aan op een Raspberry Pi Zero 2 W met Buster en stuurde hem via SSH aan. Na het installeren van de bibliotheken werkten alle voorbeelden probleemloos.
Het weer op het display
Nu het display functioneert wilde ik er iets mee ‘doen’. Op het internet had ik een verzameling fraaie weer-icoontjes gevonden, en daarom besloot ik een display voor weersvoorspellingen te maken in Python3, dat het corresponderende icoontje samen met temperatuur, luchtdruk en -vochtigheid en windrichting en -snelheid toont. Deze gegevens kunnen worden verkregen van een online-weerserver; er zijn er genoeg die gratis toegang bieden.
Ik gebruik de drukknoppen ‘A’ en ‘B’ om de helderheid van de achtergrondverlichting van het display te regelen. Met knop ‘X’ kun je kiezen tussen graden Celsius en graden Fahrenheit, terwijl je met knop ‘Y’ kunt kiezen tussen windrichting in graden of in hoofdletters (bijvoorbeeld ‘SW’ of ‘N’).
Een heel heldere LED
De RGB-LED geeft enige statusinformatie. Eigenlijk geeft groen aan dat alles goed werkt, maar ik vond de LED veel te helder, zelfs bij zeer lage waarden, en daarom heb ik hem uitgezet. Nu licht de LED alleen op bij een probleem: rood als de weerdata niet konden worden opgehaald en oranje als de weerdata ongeldig zijn.
Merk op dat het scherm standaard ondersteboven staat ten opzichte van de drukknop-bijschriften op de HAT. Om deze reden draait het programma de displaybuffer 180° alvorens deze naar het scherm te kopiëren.
Het stroomverbruik van mijn systeem bij maximale intensiteit van de achtergrondverlichting bedroeg ongeveer 200 mA.
Mijn code (inclusief de complete verzameling icoontjes) kan worden gevonden bij ClemensAtElektor op GitHub.
Conclusie
Samenvattend is de display-HAT Mini een coole add-on voor een Raspberry Pi Zero (2 W). De beeldkwaliteit is geweldig, en hij is makkelijk te gebruiken in eigen applicaties. De ondersteunende bibliotheek biedt ook toegang tot de drukknoppen (die naar mijn smaak een beetje te dicht bij het display staan), de RGB-LED (een beetje aan de felle kant) en de achtergrondverlichting.
Merk op dat door het display de HAT iets groter is dan een Raspberry Pi Zero (2 W) (35 mm in plaats van 30 mm), dus let op bij het kiezen van een behuizing.
Vertaling: Eric Bogers
Discussie (0 opmerking(en))