A legtöbb PC-s felhasználó számára a számítógép belseje egyfajta titokzatos fekete doboz, aminek az állapotát csak akkor ellenőrizzük, ha már baj van. Pedig mennyivel stílusosabb lenne, ha a géped "A láthatatlan fizika: Így építs saját, programozható hardver-monitorozó műszerfalat régi E-ink kijelzőből és ESP32-ből a PC-d valós idejű telemetriájához" projekt keretében egy elegáns, papírszerű kijelzőn mutatná a processzorod hőmérsékletét vagy a hálózati forgalmat. A múltkori nagytakarításkor találtam egy porosodó e-könyv olvasót, és egy hirtelen ötlettől vezérelve született meg ez a kütyü, ami azóta is az asztalom dísze.
Az egész varázsa abban rejlik, hogy a kijelző nem igényel állandó tápellátást a kép megtartásához. Az E-ink technológia alapvetően passzív, így a monitorozó műszerfalad nem fogja feleslegesen világítani az arcodba sötétedés után sem. Az ESP32 mikrokontroller pedig tökéletes társ ehhez a feladathoz, hiszen a beépített Wi-Fi képességével könnyedén kommunikál a PC-ddel, miközben alig fogyaszt energiát. Nem kell bonyolult kábelrengeteget építened, elég egy ügyesen elrejtett USB-s táplálás.
Mielőtt belevágnál a forrasztásba, érdemes összegyűjteni a megfelelő alkatrészeket. A projekt nem kíván ipari szintű tudást, de némi odafigyelést igényel a komponensek kiválasztása.
A szoftveres oldalon pedig a Python lesz a legjobb barátod, amivel kinyerheted a számítógéped telemetriai adatait.
A legizgalmasabb rész a PC-n futó szerveralkalmazás, ami összegyűjti a hardveres értékeket. A legtöbb operációs rendszeren a különböző szenzorok adatai könnyen elérhetők, de ha egy kis segítséget akarsz, használhatsz egy célzott szoftvercsomagot, ami a hőmérsékletet, a terheltséget és a ventilátorok fordulatszámát egy JSON fájlba gyűjti.
Az ESP32 feladata pofonegyszerű: időközönként lekérdezi ezt a fájlt a helyi hálózaton keresztül, majd a kapott értékeket rendereli a kijelzőre. Mivel az E-ink kijelzők frissítési ideje lassú, nem érdemes másodpercenként frissíteni a tartalmat, bőven elég percenként egyszer, vagy csak akkor, ha egy adott küszöbértéket átlép a processzor hőmérséklete.
Amikor a kijelzőn megjelenik az első grafikon, az érzés leírhatatlan. Itt már a kreativitásodon múlik minden. Nem kell leragadnod a száraz számoknál, rajzolhatsz mini kördiagramokat vagy éppen egyszerű vonaldiagramokat, amik mutatják a teljesítményed görbéjét az elmúlt órában.
A programozás során figyelj arra, hogy az E-ink kijelzők frissítése villogással járhat. Ezt a jelenséget úgy tudod minimalizálni, ha csak azokat a területeket frissíted, ahol az értékek ténylegesen változtak. Ez a megoldás nemcsak szebb látványt eredményez, hanem az akkumulátor élettartamát is kíméli, ha esetleg hordozható formában gondolkodsz.
Az ESP32 egy rendkívül stabil platform, de a vezeték nélküli kapcsolatok időnként megszakadhatnak. Érdemes beépítened egy automatikus újracsatlakozási rutinot, hogy a műszerfal magától magához térjen egy router újraindítás után is.
Szintén gyakori hiba a túl bonyolult grafikai elemek használata. Mivel az ESP32 memóriája korlátozott, kerüld a nagy felbontású képfájlokat. Inkább használj vektoros grafikákat vagy egyszerű geometriai formákat, amiket a kód generál a kijelzőn. Ezzel a módszerrel a rendszer pillanatok alatt reagál, és a frissítések is simábbak lesznek.
Az ilyen saját kezűleg készített eszközök nemcsak a funkcionalitásról szólnak. Amikor a PC-d mellett ott figyel egy saját építésű kijelző, ami pontosan azt mutatja, amire kíváncsi vagy, az egészen másfajta élményt ad, mint egy szoftveres ablak a tálcán. Ez a projekt segít megérteni a telemetria alapjait, betekintést nyújt a mikrokontrollerek világába, és egy kis technikai eleganciát csempész a mindennapjaidba.
Minden egyes alkatrész, amit a helyére pattintasz, közelebb hoz ahhoz, hogy ne csak használd a technológiát, hanem értsd is, mi történik a színfalak mögött. Az ESP32 és az E-ink kijelző kombinációja pedig az egyik legjobb választás, ha szereted a letisztult, hatékony és igazán hasznos megoldásokat. Szánj rá egy délutánt, és meglátod, a géped soha többé nem lesz ugyanaz a titokzatos fekete doboz, mint korábban.