conference logo

Playlist "FrOSCon 2022"

MicroPython: BootOps mit mynit und ChatOps mit mytrix

Dominik George and Martin Winter

Mit den Bibliotheken mynit und mytrix lassen sich einfach erweiterbare ChatOps-Bots mit MicroPython (z.B. auf ESP32) bauen.

Microcontroller sind ein spannendes Thema, gerade für Einsteiger*innen – denn oft helfen Dinge, die man sehen und anfassen kann, beim Verstehen abstrakter Themen, wie der Programmierung. Doch um ein kleines, schnell einsatzfähiges Gerät zu bauen, gibt es schon einige Hürden zu meistern.

Deshalb haben wir, ursprünglich für Kinder-Workshops, die Bibliotheken mynit und mytrix geschrieben, die die am Anfang langweiligen und schwierigen Teile wegabstrahieren.

Mynit ist ein Boot-System und Konfigurations-Framework, das verschiedene Initialisierungs-Aufgaben des Boards erledigt und danach einfache Funktionen bereitstellt, um Laufzeit-Konfiguration zu ändern. Dazu gibt es ein Companion-App für Android, das per Bluetooth Formulare zur Änderung anzeigt. Ein Beispiel ist das Setzen von SSID und Passphrase für den WLAN-Chip, die sich so ohne Code anzufassen direkt vom Handy aus setzen lassen. Die Formulare können in eigenen Bibliotheken erweitert werden, so dass man direkt ein Companion-App zu seinem eigenen Microcontroller bekommt.

Mytrix ist eine dazu passende Client-Bibliothek für Matrix, mit der sich Schlüsselwörter und Callbacks zu einem direkt verfügbaren ChatOps-System kombinieren lassen und das Board per Chat gesteuert werden kann.

Die Einsteiger*innen können sich so auf die eigentliche Elektronik-Bastelei und die spezifische Programmierung konzentrieren.