Einführung
Das Einrichten von Platformio samt dem Management mit git ist nicht ganz trivial. Wer sich das sparen möchte, kann fertige Firmwares auch runterladen und über ESPuinos Webinterface flashen.
Neues Repository
Zum Ablegen/Archivieren der Firmwares habe ich ein eigenes Repository angelegt: ESPuino-Firmware. Mit jedem Commit, der in ESPuino gemacht wird, werden dort, sofern der Bauprozess erfolgreich war, Firmwares hochgeladen.
Beispiel mit Commit-ID 19ae657 aus dem dev-Branch:
Das landet dann in ESPuino-Firmware und die Commit-ID ist Teil der dortigen Commit-Message:
Brauchst du eine ältere Firmware, so klickst du rechts oben auf „History“.
Unterstützte HALs
Unterstützt werden aktuell folgende HALs:
- lolin_d32_pro
- lolin_d32_pro_sdmmc_pe
- ttgo_t8
- complete
Und folgende RFID-Reader
- PN5180
- RC522
Gebaut/Kompiliert wird mit den ESPuino-Standardeinstellungen (und Port-Expander wenn nötig), so dass sich in Summe aus der Kombinatorik (Stand 09/2025) insgesamt acht unterschiedliche Firmwares ergeben.
Dateinamen sind wiefolgt aufgebaut: firmware-{RFID-Reader}-{HAL}.bin
Das neue Firmware-Repository ist nach Branches unterteilt. D.h. Commits aus Master und dev sind auch dort getrennt.
Wie kommt die Firmware auf den ESPuino?
Alle Boards, die ich ausliefere, sind bereits vorgeflasht mit PN5180-Support. ESPuino lässt sich also starten (auch ohne passenden RFID-Reader) und du kannst das Webinterface erreichen. Solltest du z. B. den RFID-Reader RC522 (anstelle PN5180) verwenden wollen, so kannst du die passende Firmware runterladen und über das ESPuino-Webinterface flashen. Klicke hierzu auf „Tools“ und scrolle runter zu „Firmware-Update“:
Nach dem Auswählen des zuvor runtergeladenen Firmware-Files klickst du auf Absenden. Das Ganze dauert ungefähr eine Minute und ESPuino sollte im Anschluss neu starten.
Achte UNBEDINGT darauf, die passende Firmware zu flashen. Für >90 % aller ESPuino-User sind nur die nachfolgenden HALs von Relevanz:
- mini4L (mit LFP-Develboard oder Lolin D32 pro): lolin_d32_pro_sdmmc_pe
- ESPuino-miniD32 (mit LFP-Develboard oder Lolin D32 pro): lolin_d32_pro_sdmmc_pe
- Complete: complete
Beachtest du das nicht und flashst die falsche Firmware, so startet dein ESPuino ggf. nicht mehr und die Hardware kann sogar Schaden nehmen. Das gilt allerdings auch beim Kompilieren über Platformio und ist insofern keine Neuigkeit/Besonderheit.
Was mache ich, wenn ich spezielle Compile-Flags benötige?
Brauchst du beispielsweise Support für BLUETOOTH_ENABLE
oder MQTT_ENABLE
, so musst du dir Firmware leider weiterhin selbst kompilieren. Es sind allerdings auch schon einige im Webinterface vorhanden, für die entsprechend keine Firmware extra kompiliert werden muss. Wir arbeiten daran, weitere in das Webinterface zu bekommen.
Klicke im Webinterface auf „Allgemein“: Dort findest du einerseits einige Optionen, die bereits jetzt über das Webinterface konfigurierbar sind:
Andererseits gibt es dort auch erweiterte Einstellungen, mit denen man Neopixel-Einstellungen und das dyn. Button-Layout konfigurieren kann. Auch die Drehrichtung des Drehencoder kann man dort umkehren. Suche dafür nach „Erweiterte Einstellungen“ und blende sie ein:
Was mache ich, wenn mein HAL nicht dabei ist?
- Aufgrund von Speichermangel mussten verschiedene HALs leider abgekündigt werden, da kein PSRAM vorhanden ist. Hier ist es leider notwendig, auf die Complete zu wechseln.
- A1S besitzt PSRAM, wurde jedoch mangels verfügbarer GPIOs eingestellt.
- Firmwares für Custom-Boards können natürlich auch keine bereitgestellt werden.