Einleitung
Mit PaperFlux hat Maker Alban Petit ein Gerät gebaut, das die eigene GitHub-Aktivität einmal pro Woche auf einem Thermodrucker ausgibt. Stattdessen von Dashboards, Apps oder Push-Nachrichten, sondern von einem langen Kassenzettel mit Commits, Sternen, Followern, verwendeten Programmiersprachen und den erfolgreichsten Repositorys.
Technische Details
Das Gerät basiert auf einem ESP32-C3-MINI-1 und einem 58-mm-Thermodrucker mit 384 Punkten Druckbreite. Der ESP sitzt auf einer eigens entwickelten Platine mit USB-C für die Stromzufuhr und UART-Anschlüssen für den Drucker. Ein AP33772S-Controller übernimmt die USB-C-Power-Delivery-Aushandlung.
Datenverarbeitung
Die eigentliche Aufbereitung der GitHub-Daten findet nicht auf dem ESP32 statt. PaperFlux verbindet sich über WLAN mit einem Webdienst, der Daten über die REST- und GraphQL-Schnittstellen von GitHub einsammelt. Aus diesen Daten erzeugt ein Ruby/Sinatra-Dienst zunächst eine HTML-Seite. Ein Headless-Chromium rendert daraus anschließend eine 384 Pixel breite Ansicht, die ImageMagick in eine 1-Bit-PNG-Datei umwandelt. Ein typischer Ausdruck benötigt nur rund 8 KByte Bilddaten.
Spezielle Herausforderung
Interessant für Maker ist dabei besonders der Umgang mit dem begrenzten RAM des ESP32-C3. Das PNG wird nicht komplett entpackt. Die Firmware verarbeitet die Bilddaten stattdessen schrittweise und hält jeweils nur Streifen mit 32 Zeilen im Speicher. Anschließend gehen die Daten per UART an den Thermodrucker. Ein Ausdruck mit 2014 Zeilen benötigt rund 2 Minuten und 40 Sekunden.
Netzwerkprobleme und Druckfehler
Bei Netzwerkproblemen oder Druckfehlern verlängert die Firmware außerdem schrittweise die Wartezeit bis zum nächsten Versuch. Nach dem Drucken kontrolliert sie nochmals Versorgungsspannung und Schutzschaltungen des USB-PD-Controllers. Ein abgebrochener Ausdruck gilt damit nicht versehentlich als erfolgreich.
Nutzerfreundliche Funktionen
Als Maker kann man damit überwachen, was das liebste Open-Source-Projekt macht oder wie das Teamprojekt vorankommt. Der Quellcode steht unter MIT-Lizenz zur Verfügung. Auf der Projektseite findet man den Link zu dem entsprechenden Repository.
Alternativen
Wer statt Papier lieber T-Shirts bedrucken möchte, findet in unserem xTool-Test eventuell das Richtige.
Schlußbemerkung
Mit Ihrer Zustimmung wird hier ein externer Preisvergleich (heise Preisvergleich) geladen. Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (heise Preisvergleich) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.

Kommentare