Arbeitszeiterfassung mit RP2040: So spart Micropython mit Frozen Bytecode viel Speicher
Ein Webserver mit Download-Funktion und nur 264 kByte RAM: Wir zeigen, wie komplexe Python-Projekte auf dem Raspberry Pi Pico und anderen Mikrocontrollern möglich sind.

Python und Mikrocontroller – vor einem Jahr hielt ich das noch für eine ziemlich blöde Idee. Micropython hat mich eines Besseren belehrt, mittlerweile nutze ich es gern für aufwändigere Projekte, etwa zur Arbeitszeiterfassung mit RFID-Tags (g+) (den Code gibt es demnächst hier). Der Komfort hat aber einen Nachteil: Während kompilierte Binärprogramme aus dem Flash-Speicher des Raspberry Pi Pico ausgeführt werden, belegt der erzeugte Python-Bytecode den knappen Arbeitsspeicher. Wertvoller Platz für Daten geht verloren. Verhindern lässt sich das mit Frozen Bytecode – was das bedeutet, wie es funktioniert und wie sich sonst noch der knappe RAM sparen lässt, zeigen wir in diesem Artikel.