Ein Maker aus Malaysia hat 500 Tage Batterielaufzeit aus einem ESP32 gequetscht. Das Display? In einem Browser gezeichnet.

Die meisten Wetterstationen sind klobige kleine Ziegel, die alle paar Wochen nach einem Ladegerät betteln. WeatherPaper V2 geht in die andere Richtung. Sie ist 11,6 mm dünn, sitzt bündig an einer Wand wie ein Stück mattierte Deko und läuft mit einer einzigen Ladung über 500 Tage.
Der Erbauer ist Jeremy Ngai, ein Hobbyist aus Malaysia mit einem unkomplizierten Motto: Technik macht Spaß, sobald du anfängst, das zu bauen, was du magst. Wir sind auf das Build gestoßen, haben uns darin verliebt und wollten es teilen, auch weil Lopaka einen Platz in seinem Werkzeugkasten verdient hat.
Der Juckreiz: V1 war großartig, und das war das Problem
WeatherPaper V1 funktionierte. Sie sah gut aus. Und Jeremy konnte sie nicht ausstehen. Sie war sperrig, stromhungrig, und die ineffiziente Hardware ließ nur Platz für eine winzige 500-mAh-Batterie. Er pinnte ein rücksichtsloses Ziel an die Wand für V2: mehr als ein Jahr Batterielaufzeit.
Alles andere folgte aus dieser Zahl. Er wechselte zu einem 4,2-Zoll-Schwarz-Weiß-E-Paper-Display, tauschte das generische Dev-Board gegen ein Seeed Studio XIAO ESP32-C3 mit integriertem Ladegerät und 44 µA Deep Sleep und entwarf eine benutzerdefinierte Leiterplatte, um das Ganze zu verkleinern. Die Batterie wuchs von 500 mAh auf 1500 mAh. Das Gerät wurde trotzdem dünner.

Der Teil, den Erbauer überspringen: Der Screen muss gut aussehen
E-Paper bestraft dich hier. Die Hardware kann perfekt sein, die Firmware kann Strom schlürfen wie ein Mönch, und nichts davon zählt, wenn das Display wie eine Tabelle aussieht. Du wirfst einen Blick auf WeatherPaper und liest vier Dinge: Luftqualitätsindex, gefühlte Temperatur, Windgeschwindigkeit, Wetterbedingung. Saubere Icons, sinnvolle Hierarchie, nichts schreit.
Das bedeutet monochrome Bitmaps, und auf Embedded-Displays sterben Bitmaps den Spaß. Der klassische Weg: Zeichne ein Icon irgendwo, exportiere es, jage es durch image2cpp, kopiere eine Wand aus Hex in eine bitmap.h-Datei, flashe und kneife die Augen zusammen, um das Ergebnis zu sehen. Hast du ein Pixel falsch, machst du es noch einmal.
Wo Lopaka hineinpasst
Jeremy verweist Erbauer für diesen Schritt auf Lopaka: die monochromen Icons gestalten und sie als nutzbaren Code herausbekommen. Du platzierst deine Grafiken auf einer Zeichenfläche in der Größe deines echten Screens, ziehst Dinge herum, bis sie richtig aussehen, und exportierst. Keine blinden Byte-Arrays, kein Raten, ob dieses 32-Pixel-Icon dort landet, wo du denkst.
Es passt zu WeatherPaper, weil die Firmware auf GxEPD2 läuft, einer der Bibliotheken, für die Lopaka Code generiert. Zeichne das Layout, wähle GxEPD2, kopiere die Ausgabe. Wenn Jeremy später ein Icon tauschen möchte, zeichnet er es neu, statt sich durch Hex zu graben.
Sein dokumentierter Workflow bleibt hackbar. Willst du den UV-Index statt der Windgeschwindigkeit? Ändere einen JSON-Key. Willst du deine eigenen Icons statt seiner? Zeichne sie neu und lege die neuen Arrays hinein. Das Display bleibt deins.
Der Lohn: Weniger tun, mit Absicht
Die Batterie-Mathematik ist der spaßige Teil. Alle 30 Minuten wacht der ESP32 für etwa 4,3 Sekunden auf, holt Wetter von OpenWeatherMap, aktualisiert den Screen und fällt zurück in den Deep Sleep. Jeremy hat dieses Wachfenster hart gequetscht: CPU auf 80 MHz heruntergetaktet, DHCP mit einer statischen IP übersprungen, HTTPS gegen einfaches HTTP bei öffentlichen Daten getauscht, HTTP Keep-Alive, um die Anfragen zu bündeln.
Rechnest du es zusammen, verbrennt jeder Zyklus ungefähr 0,049 mAh. Gegen eine 1500-mAh-Batterie ergibt das auf dem Papier über 15.000 Stunden, nördlich von 600 Tagen und bequeme 500+ Tage, sobald du reale Verluste berücksichtigst. XDA Developers hat das gesamte Build aufgegriffen.
Sein Fazit sagt es am besten: Die längste Batterielaufzeit kam dadurch, weniger zu tun, nicht mehr hinzuzufügen. Dasselbe gilt für das Display. Die sauberste E-Paper-UI entsteht dadurch, dass du sie auf einer Zeichenfläche gestaltest, nicht dadurch, dass du sie von Hand in Hex codierst.

Baue deine eigene
Jeremy hat alles Open Source gemacht, Firmware, Leiterplatten-Gerber und 3D-Dateien, in seinem WeatherPaper GitHub repository. Wenn du für einen OLED-, TFT- oder E-Paper-Screen baust und deine Oberfläche lieber zeichnen möchtest, als sie Byte für Byte zusammenzusetzen, ist Lopaka dafür da. Skizziere einen Screen, wähle deine Bibliothek, liefere den Code aus.
Credits
WeatherPaper V2 und Fotografie von Jeremy Ngai. Lies die vollständige Build-Anleitung auf Instructables oder erkunde die Quelldateien auf GitHub.