ESP8266/ESP32 3rd Party Firmware
Nicht jeder IoT-Bastler kann oder will eine eigene Firmware für den ESP8266 bauen. Letztlich stehen alle auch immer wieder vor den gleichen Problemen. Der Aufgabenstellung haben sich mehrere Personen unabhängig voneinander angenommen und jeder eine eigene "allgemeingültige Firmware" entwickelt, die Sie einfach auf einen ESP8266 laden und dann aus der Ferne konfigurieren können.
Überlegung
Bei der einfachen Entwicklung für den ESP8266 schreibe ich mir ein Programm, was genau und nur genau das macht, was ich da drin haben will. Ich nutze aber natürlich Bausteine und Module anderer Entwickler. Die "generische Firmware" der verschiedenen Entwickler soll es dem Nutzer aber noch einmal deutlich einfacher machen. Sie laden die Firmware direkt auf den ESP8266. Er startet dann meist einen WiFi AccessPoint, mit dem sie sich einfach verbinden. Über eine Webseite können Sie dann Funktionen aktivieren und Ports und Pins konfigurieren. Über vorbereitete Module können auch Fertigbausteine wie z.B. die Komponenten von SONOFF oder ein WLAN LED E27 Leuchte einfach mit einer alternativen Firmware versehen werden.
Sie müssen also gar nicht mehr richtig "Programmieren", wenn eine Firmware alles schon enthält und Sie nur noch Bausteine verbinden, z.B. dass ein Pin als Eingang den Pegel per MQTT weiter gibt oder einen Webseite anspricht. Umgekehrt können Ausgänge dann ebenfalls direkt per HTTPS oder MQTT oder andere Dinge angesteuert werden. Eine solche Firmware ist auf jeden Fall einen Blick wert. Vielleicht ist ihr Problem schon lange gelöst
Sonderfall Tuya
Siehe dazu die mittlerweile eigene Seite Tuya - IoT as a Service -Viele Geräte haben einen ESP8266 mit Tuya Firmware. Besser geht es ohne.
Alte Firmware sichern!
Ehe sie bei einem bestehenden ESP8266 einfach eine neue Firmware drauf schreiben, sollten Sie vielleicht die vorhandene Werksfirmware sichern. Das geht bei Shelly 1/2 mit einem 2MB Flash-Speicher z.B. mit:
# per Python esptool.py --p COM5 --baud 115200 read_flash 0x00000 0x200000 Backup_2MB.bin # per EXE esp_tool.exe -pCOM5 -b115200 -a0x0000 -s0x200000 -or Shelly1_Backup.bin
Bei Shelly kann man die Firmware später so auch wieder einspielen. Bei meinem Sonoff hat es nicht geklappt, die Sicherung von einem Gerät auf einem anderen Gerät einzuspielen. Eventuell ist da ja eine Kopplung an die MAC-Adresse eingebaut.
Übersicht
Ich bin nicht mal sicher, ob ich nun alle alternativen Firmware-Lösungen beschrieben habe. Aufgrund der hohen Dynamik bei der Entwicklung bin ich sicher dass die Funktionen sich auch sehr schnell erweitern werden und die Tabelle veraltet. Alle laufen mit dem ESP8266 aber ich kann mir vorstellen, dass bald auch der ESP32 bedient wird.
Die Liste versuche ich zu ergänzen, soweit ich mit den verschiedenen Firmware-Varianten Erfahrungen gesammelt habe.
Firmware | ESPEasy | Tasmota | ESPurna |
---|---|---|---|
Chip |
ESP8266 |
ESP8266 |
ESP8266 |
Initalkonfig |
WLAN AP "ESP-01" |
WLAN AP |
WLAN AP |
Devices |
WeMos und andere |
WeMos und andere |
Generic |
Digital In |
Schalter, Taster |
? |
Taster, Schalter, |
1Wire |
DS18B12 |
? |
DS18B12 |
I2C |
Druck, Feuchte, Strom, Lux, Motor, Display |
? |
Umfangreich |
Analog In |
Ja |
? |
Umfangreich |
Digital Out |
Relais |
? |
Relays, Delay Switch |
Kommunikation |
MQTT |
MQTT |
MQTT |
Sonst |
|
|
Scheduler |
Die Liste ist sicher nicht komplett aber es ist gut sehen, dass ESPEASY am umfangreichsten ist und fast alle Sensoren und Aktoren unterstützt. Tasmota hingegen wurde zuerst auf die SONOFF-Geräte optimiert und bedient neben Shelly auch andere Geräte. Es ist also weniger für Leute, die ihr Gerät selbst zusammen bauen sondern für Besitzer eines ESP8266 Geräts, die dieses von der Hersteller-Firmware befreien wollen.
- Tasmota vs ESPurna vs ESPEasy - overview
https://lobradov.GitHub.io/FOSS-Firmware-comparison-overview/
ESPEasy
Mit ESPEasy gibt es nun eine Firmware, die den Einstieg noch einfacher machen soll. Sie laden sich ESPEasy herunter und flashen diese auf ihren ESP822. Nach dem Neustart finden SIe ein neues WLAN, mit dem Sie sich verbinden können. Über die Webseite können Sie den ESP8266 konfigurieren und in ein Haus-LAN aufnehmen. Danach können Sie wieder über die Webseite die weitere Konfiguration vornehmen, mit der Sie die Funktion der Ein/Ausgänge festlegen und per einfacher Skriptsprache sogar Aktionen auslösen können.
- Firmware herunter laden
Die gibt es bei https://www.letscontrolit.com/wiki/index.php/ESPEasy - Firmware flashen
- Per WLAN mit der SSDI "ESP-01" verbinden
Kennwort ist "configesp" - Browser auf http://192.168.4.1 gehen
Es kann durchaus etwas dauern, bis die Webseite erscheint - Modul mit dem HausWLAN SSID und Kennwort konfigurieren
- Nun wieder im LAN mit dem ESP8266 verbinden
Jetzt brauchen Sie also nicht einmal mehr viel Programmieren oder ihre eigenen Projekte erst als Code mit den WLAN-Zugangsdaten schreiben und flashen. Genau genommen wird so ein ESP8266 auch zur einfachen Basis für Schülerprojekte u.a., wenn Sie nun nur noch ein geeignetes "Shield" aufsetzen müssen. Zumal auch ein MQTT-Stack schon enthalten ist.
- Projektseite des Entwicklers
https://www.letscontrolit.com/wiki/index.php/ESPEasy - Liste der kompatiblen Hardware
https://www.letscontrolit.com/wiki/index.php/ESP_Hardware - Protokolle im WLAN
https://www.letscontrolit.com/wiki/index.php?title=EasyProtocols - ESPEasy
https://www.letscontrolit.com/wiki/index.php/ESPEasy#Introduction - ESP Easy – Weboberfläche zur Konfiguration von ESP8266-Chips
https://waschto.eu/easyesp/ - Spannungsmessung mit dem ESP 8266 (Nodemcu
oder Witty) und ESP-Easy und Auswertung mit
Fhem
https://blog.moneybag.de/spannungsmessung-mit-dem-esp-8266-nodemcu-oder-witty-und-esp-easy-und-auswertung-mit-fhem/ - ESPEasy: Administrationsoberfläche für
ESP8266 für IoT und Fhem
https://blog.moneybag.de/espeasy-administrationsoberflaeche-fuer-esp8266-fuer-iot-und-fhem/ - Ikea-Feinstaubsensor Vindriktning zum
IoT-Device aufbohren
https://www.heise.de/ratgeber/Ikea-Feinstaubsensor-Vindriktning-zum-IoT-Device-aufbohren-6164149.html
https://www.ikea.com/de/de/p/vindriktning-luftqualitaetssensor-70498242/
Smarthome: ESPHome kann nun mehr https://www.heise.de/news/Smarthome-ESPHome-kann-nun-mehr-6182581.html
ESPurna
Vergleichbar mit ESPEasy, Sehr große Sensor und Aktor-Unterstützung.
- ESPurna Firmware
https://GitHub.com/xoseperez/espurna (Aktuell)
https://bitbucket.org/xoseperez/espurna (Alt) - https://GitHub.com/xoseperez/espurna-board
- Adding Energy Use and Cost to “Laundry
Done” Notifications
https://hackaday.com/tag/espurna/ - The ESPurna board, a smart wall switch
with power monitoring
http://tinkerman.cat/the-espurna-board-a-smart-wall-switch-with-power-monitoring/
Tasmota
Die Tasmota-Firmware ist vermutlich aufgrund der Endgeräte von SONOFF entstanden. Diese recht günstigen Geräte erlauben mit dem ESP8266 das Schalten von 230V-Verbrauchern und einigem Mehr. Mittlerweile gibt es auch andere Geräte wir z.B. Shelly, die ebenfalls unterstützt werden. Tasmota hat also weniger den Bastler, der an einen ESP8266 die verschiedensten Sensoren anbinden als Zielgruppe, sondern die Hausautomatisierungsfreunde, die Fertiggeräte umdefinieren und die meist chinesische Firmware durch eine offen Firmware ersetzen wollen.
Meine persönlichen Spickzettel:
Aufgabenstellung | Aktion |
---|---|
Reset |
Um ein Tasmota-Device zurück zu setzen gibt es mehrere Wege:
RESET 1 Rücksetzung auf firmware defaults und Neustart. Stromversorgung muss danach kurz unterbrochen werden
RESET 2 = Flash löschen, Reset auslösen und Firmware Defaults laden (Stromversorgung kann an bleiben)
|
WLAN seriell konfigurieren |
Wenn ich das Gerät seriell mit Tasmota geflashed habe, dann kann ich zwar auf den Restart warten, mich dann mit dem WiFi-Manager verbinden und die Erstkonfiguration vornehmen. Solange ich aber noch eine serielle Verbindung habe, kann ich ersten Einstellungen für WLAN, MQTT und Syslog schon direkt per Konsole vornehmen. Backlog SSID1 <myssid>; Password1 <mypassword> Backlog MqttHost 192.168.178.10 Backlog Loghost 192.168.178.10; LogPort 514; Syslog 2 |
ESP32 Bluetooth |
Wenn Tasmota32-Bluetooth auf einem ESP32 eingesetzt wird, kann man Bluetooth-Beacons empfangen. Auch das muss aber eingeschaltet werden. iBeacon 1 iBeaconPeriod 60 iBeaconOnlyAliased 1 BLEMaxAge 60 |
Statusmeldung abfragen |
Wenn ich die IP-Adresse habe, kann ich per Powershell schnell die Informationen sammeln. PS C:\> (Invoke-RestMethod http://192.168.180.12/cm?cmnd=Status) Status ------ @{Module=18; DeviceName=Tasmota; FriendlyName=System.Object[]; Topic=tasmota_A207CD; Bu… Wenn Sie z.B. "Status 1"ausösen wollen müssen Sie bei HTTP-Requests das Leerzeichen als "%20" codieren. Command JSON-Root Bedeutung "Status": STATUS StatusGerätestatus "Status0": Alle Informationen "Status 1" StatusPRM: Basisparameter, Baurate etc. "Status 2" StatusFWR: Firmware "Status 3" StatusLOG: Logging (Syslog) "Status 4" StatusMem: Speichernutzung "Status 5" StatusNET: WLAN, IP-Adresse etc "Status 6" StatusMQT: MQTT Server Information "Status 7" StatusTIM: Zeitinformationen "Status 8" StatusSNS siehe Status 10. Rückwärtskompatibilität "Status 9" StatusPWR: Geräte mit Energiemessung liefern hier Daten "Status 10" StatusSNS: Status der Sensoren "Status 11" StatusSTS: Anzeige der "Teleperiod" Ausgabe Achtung: Das Property in der Antwort ändert sich. PS C:\> (Invoke-RestMethod http://192.168.180.12/cm?cmnd=Status%201) StatusRPM ------ @{Baudrate=115200; SerialConfig=8N1; GroupTopic=tasmotas; OtaUrl=http://ota.tasmota… |
Der Upload der Firmware ist über einen USB/Seriell-Adapter mittlerweile sogar direkt über Edge/Chrome möglich.
WebInstaller
https://tasmota.GitHub.io/install/
- Tasmota Commands
https://tasmota.GitHub.io/docs/Commands/
The COMPLETE Guide to Tasmota 2019
https://www.youtube.com/watch?v=08_GBROKQH0
- Snonoff Tasmota
https://GitHub.com/arendst/Sonoff-Tasmota
Provide ESP8266 based itead Sonoff with Web, MQTT and OTA firmware using Arduino IDE or PlatformIO - Fertig kompilierte Firmware
http://www.thehackbox.org/tasmota/ - Tasmota Firmware Compiler
https://GitHub.com/benzino77/tasmocompiler - Tasmota Device Templates Repository
https://templates.blakadder.com/ - NodeMCUPy Flasher
https://GitHub.com/marcelstoer/nodemcu-pyflasher
PythonScript zum Flashen samtp Option den Chip komplett zu leeren - Tasmota Device Manager
https://GitHub.com/jziolkowski/tdm
In Python geschriebene GUI zur Konfiguration der Tasmota-Devices per MQTT. - Templates für Konfigurationen
https://blakadder.GitHub.io/templates - Wiki
https://GitHub.com/arendst/Sonoff-Tasmota/wiki - GitHub Repository
https://GitHub.com/arendst/Sonoff-Tasmota - Theo's Tasmota Tips
https://GitHub.com/arendst/Sonoff-Tasmota/wiki/Theo's-Tasmota-Tips
Cloudfreie Software für Sonoff-Schalter (Tasmota)
https://www.youtube.com/watch?v=SxPYNPPobRY
Aber die Anleitung macht mir auch deutlich, dass MQTT eine wichtige Entwicklung im Bereich dieser Steuerungen ist. Also wird es Zeit sich damit auseinander zu setzen. Es gibt massenhaft Videos zu Tasmota und den Einsatz mit MQTT. Hier nur ein paar Beispiele
- Hidden Features in the Ultimate $5 Smart
Home Switch
https://www.youtube.com/watch?v=OHANkpE7s4A
Sonoff mit Tasmota und MQTT - DELOCK WLAN-Steckdosen-Schaltadapter mit
TASMOTA-Firmware
https://www.reichelt.de/magazin/technik-news/delock-wlan-steckdosen-schaltadapter-mit-tasmota-firmware/
DELOCK 11826 WLAN Steckdosen Schalter (15€) https://www.reichelt.de/wlan-steckdosen-schalter-delock-11826-p258857.html - Gosund SP111 mit Tasmota flashen
https://www.youtube.com/watch?v=_cVoaJAQ0V4
https://derfernstudent.de/tasmota-gosund-sp111-mit-tasmota-flashen-und-konfigurieren/ - HTTP Request Shortcuts
https://play.google.com/store/apps/details?id=ch.rmy.android.http_shortcuts
Einfache App um HTTP-Urls zu hinterlegen und damit z.B. Tasmota-Geräte direkt zu steuern. - Tasmota Control
https://play.google.com/store/apps/details?id=de.grings_software.TasmotaControl&hl=de&gl=US
ESPHome
Eine weitere Firmware ist ESPHome. Sie benötigen dazu einen PC mit Python, auf dem Sie dann eine Konfigurationsdatei erstellen und auf die verschiedenen Geräte einspielen. Es gibt hier also keine Weboberfläche, über die Sie sich mit dem ESP verbinden und einzelne Ports konfigurieren. Stattdessen erstellen Sie auf einem PC eine Konfigurationsdatei (YAML), aus der dann eine passende Firmware kompiliert und hochgeladen wird.
Die Zielgruppe sind hier die Anwender von "Home Assistant", da hiermit die Geräte automatisch erkannt werden. Die yaml-Dateien ähnelnd auch der Konfiguration von Home Assistant.
Es gibt auch keinen Weg mehr von einem ESP die Konfiguration wieder zu lesen. Das Prinzip ist dennoch interessant, da so die Konfiguration selbst auf einem PC oder Docker-Container erfolgt und Sie mehrere ESP-Geräte dann sehr einfach nacheinander betanken können. Der Einstieg ist hier also etwas aufwändiger aber kann sich lohnen.
- ESPHome
https://esphome.io/index.html - ESPHome auf Twitter
https://twitter.com/esphome_ - Home Assistant
https://www.home-assistant.io/ - NEW! ESP Web Tools. Program ESP boards
from your browser with ESPHome Add-on in
Home Assistant.
https://www.youtube.com/watch?v=mj-24SZLQKk - Use this CHEAP Xiaomi thermometer with an ESP32 and Home
Assistant.
Part1: https://www.youtube.com/watch?v=Be5zWukjV9I
Part2: https://www.youtube.com/watch?v=l5ea7lQWpMk
OpenMQTTGateway
Diese Firmware verspricht, per IR, RS232, Bluetooth, 433MHz empfangene Daten per WLAN auf einen MQTT-Server zu senden. Ich habe das Projekt bei der Suche nach einem BTLE-Empfänger gesucht, der BTLE-Beacons sammelt. Die Einstiegshürde ist hier besonders niedrig, da ein Chromium Browser reicht. Chromium kann direkt per USB ihren ESP32 flashen.
- (Option 1) Upload from the web
https://docs.openmqttgateway.com/upload/web-install.html
Danach sollten Sie ein neues WLAN mit dem Namen "OpenMQTTGateway-*" mit dem Kennwort "your_password" finden. Nutzen sie einen PC oder Smartphone, um sich mit dem WiFi Manager zu verbinden den dann die SSID und Kennwort des gewünschten WLAN und die Daten des MQTT-Servers einzutragen. Danach bootet das Device und meldet z.B. jedes gefundene BTLE-Gerät per MQTT.
Tipp: Wenn sie z.B. einen M5Stick-C nutzen, dann wird auch das Display für Fehlermeldungen genutzt. Ansonsten loggt openMQTTGateway auch über die serielle Schnittstelle. Nur eine Konfiguration ist darüber, anders als bei Tasmota, (noch) nicht möglich
Die Konfiguration erfolgt aber dann über den MQTT-Server, d.h. die Firmware sendet nicht nur Daten per MQTT sondern nimmt so auch Einstellungen entgegen. Eine eigene Webseite hat das Gateway nach der Einbindung in das WLAN nicht mehr, zumindest hat ein Intensive Scan mit NMAP nicht gefunden. Wer die Konfiguration ändern möchte, muss das Gateway entweder neu flashen und wieder neu einrichten oder muss über MQTT-Server die entsprechenden Einstellungen vornehmen. Die sind aber auf der Projektseite gut beschrieben.
- Projektseite
https://docs.openmqttgateway.com/ - GitHub Repository
https://GitHub.com/1technophile/OpenMQTTGateway - FHEM und OpenMQTTGateway
https://wiki.fhem.de/wiki/OpenMQTTGateway - esp32-ble2mqtt (Andere Firmware)
https://GitHub.com/shmuelzon/esp32-ble2mqtt
#307 How To Lose Weight with a Raspberry Pi and an ESP32
https://www.youtube.com/watch?v=noUROhtf0E0
vhESP
Andreas van Haaren ist der Autor dieser Firmware, die speziell für die ESP-01-Module entwickelt wurde. Sie wird einmal aufspielt. Alle Funktionen lassen sich dann per Browser einrichten. Der ESP01 agiert dazu als Access-Point, mit dem man sich verbinden kann. Durch die Fokussierung auf den ESP01 kann man die beiden UART-Anschlüsse und den seriellen Anschluss programmieren. Durch die Firmware kann das Modul sowohl aktiv als Sender als auch passiv als Server betrieben werden. Ebenso kann zwischen UDP, TCP und Webservermodus gewählt werden. Die Firmware wird vom Autor schön dokumentiert und auf der Webseite www.vhesp.com/a> bereitgestellt.
Im Vergleich zu ESPEasy oder ESPurna ist vhESP deutlich einfacher. Da ein ESP01-Modul (sehr günstig) reicht, beschränkt sich die Firmware auf 2 digital Ein/Ausgänge, deren Status per UDP/TCP/XML gesendet wird. Für einfache Aufgaben mit eben zwei Schaltkontakten, z.B. Briefkastenschlitz o.ä. kann so etwas komplett ausreichen und sie müssen sich nicht in größere Pakete einarbeiten
- Dokumentation
http://www.vhesp.com/dokumentation.html
Sensate
Eine Sonderstellung nimmt die Firmware "Sensate" ein, da Sie mit einem Cloud-Backend kommuniziert und es eine passende App für Mobilgeräte gibt. Dahinter steht diesmal keine chinesische oder amerikanische Firma, sondern die Sensate Digital Solutions GmbH mit Sitz in Österreich. Auf https://www.sensate.io/de/impressum findet sich ein gut erreichbares Impressum.
In der Firmware findet sich eine BridgeURL, die auf hub.senate.cloud verweist und von der IP-Adresse beim Provider IONOS/1&1/Schlund verortet ist (Aug 2020). Das Protokoll ist HTTPS samt im Code hinterlegtem Fingerprint (Certificate Pinning).
Was noch unklar ist, ist das Geschäftsmodell, denn auf der Webseite wurden Mitte 2020 zwei nicht verfügbare Produkte, Sensate Grill als Grillüberwachung und Sensate Terra für Terrarien angekündigt. Die Entwicklung und der Betrieb des Servers kostet aber auch Geld und wer heute mit IoT hantiert, möchte ja sicher nicht morgen "offline" sein, weil der Sponsor keine Zeit und Mittel mehr hat. Allerdings kann man die Firmware auch anweisen, zusätzlich einen eigenen MQTT-Server zu verwenden.
- Firmware auf GitHub (OpenSource)
https://GitHub.com/sensate-io/firmware-esp8266/
Binaries: https://GitHub.com/sensate-io/firmware-esp8266/releases - SensateSense - Info mit unterstützen Sensoren
https://www.sensate.io/de/sense-universelle-diy-iot-datenlogger-app - Einfache MQTT Verbindung deiner Sensoren
https://www.sensate.io/de/einfache-mqtt-verbindung
Die Parametrisierung der eigenen Lösung erfolgt über die Webseite:
- Sensate Konfiguration
https://www.sensate.io/de/konfigurator
Sie laden dann die Firmware auf das Board, richten Sie im Netzwerk ein und spielen die Parametrisierung ein. Auf der Webseite gibt es schon erste Bauanleitungen und Links zu Videos
- Beispielprojekte
https://www.sensate.io/de/tutorials
Das sieht alles ganz brauchbar für Einsteiger an, die einen ESP8266 mit den unterstützten Sensoren in Betrieb nehmen wollen.
- Nutze die Sensate Plattform für Dein individuelles Projekt
https://www.sensate.io/de/die-sensate-platform - Wie du Dein Elektronik-Projekt mit IFTTT verbindest
https://www.sensate.io/de/ifttt - Sensate-Plattform
https://www.heise.de/download/product/sensate - Sensoren einfach mit dem Smartphone verbinden
https://www.az-delivery.de/blogs/azdelivery-blog-fur-arduino-und-raspberry-pi/deine-sensoren-einfach-mit-deinem-smartphone-verbinden
LUA/NodeMCU Builder
Die Firmware "NodeMCU" ist keine klassisches Paket zur fertigen Steuerung des ESP8266 sondern eigentlich eine Laufzeitumgebung, die man aber über den nodemcu-Builder auf seinen Anwendungsfall zurechtschneidert. Die Programmierung müssen Sie aber mit LUA immer noch selbst machen
- NodeMCU / LUA
- NodeMCU
https://de.wikipedia.org/wiki/NodeMCU - NodeMCU custom builds
https://nodemcu-build.com/ - ESP32 NodeMCU
https://www.fambach.net/esp32-nodemcu/
ESPruino
Diese Firmware funktioniert auf den eigenen Boards aber es gibt auch "unsupportet" Portierungen auf den ESP32, ESP8266 und`BBC Microbit. Interessant ist ESPruino für all die Entwickler, die bislang schon mit JavaScript gearbeitet haben. Über eine GUI, die lokal oder im Browser gestartet wird und per Bluetooth oder Seriel mit dem Board kommuniziert. Ich selbst nutze diese Firmware aktuell nicht.
- Projektseite
https://www.espruino.com/ - Quick Start
https://www.espruino.com/Quick+Start - Other Boards
https://www.espruino.com/Other+Boards
ESP32 https://www.espruino.com/ESP32
ESP8266 https://www.espruino.com/EspruinoESP8266
Hinweis: Es gibt auch eine, um einen ESP01 als WLAN-Service mit einem ESPruino-Boaord zu betreiben. https://www.espruino.com/ESP8266
Basecamp für IoT mit MQTT
Ich habe Basecamp hier mit aufgeführt, auch wenn es keine eigenständige alternative Firmware ist. Basecamp ist nicht allein lauffähig sondern eine Bibliothek, die die Entwicklung eigener Projekte sehr einfach macht, indem Sie Basisfunktion wie z.B. einen WebServer zur Verwaltung mitbringt. Sie funktioniert aber wohl erst ab dem neueren ESP32 und nicht mit dem originalen ESP01 oder ESP8266.
Der Auslöser zur Entwicklung dieser Firmware dürfte der Wunsch gewesen sein, IoT-Projekte ohne öffentliche Clouds zu nutzen. Basecamp vereinfacht sehr stark die Entwicklung eigener Sensoren mit einer Anbindung an einen MQTT-Broker, der problemlos auch intern stehen kann.
-
Funktioniert erst ab ESP32
https://GitHub.com/merlinschumacher/Basecamp - Gipfelstürmer - Eigene ESP32-Projekte
mit Basecamp umsetzen
http://ct.de/yhug
https://www.heise.de/ct/ausgabe/2018-5-Eigene-ESP32-Projekte-mit-Basecamp-umsetzen-3964079.html - Basecamp by Merlin Schumacher
https://platformio.org/lib/show/2077/Basecamp - https://GitHub.com/merlinschumacher/Basecamp , die aber erst ab dem ESP32 funktioniert
- Artikel von Merlin Schumacher
https://www.heise.de/ct/entdecken/?redautor=Merlin+Schumacher - Homepage des Autors
https://merlinschumacher.de/
ESP-Link
Diese Firmware ist eine Bridge zwischen zwei unterschiedlichen Welten. Man kann damit z.B. serielle Datenströme (z.B. Modbus/RS485) über WLAN in ein Netzwerk bringen u.a.
- ESP-Link https://GitHub.com/jeelabs/esp-link
Frankenstein
Etwas außer der Reihe sehe ich die Firmware, die den ESP8266 per TELNET erreichbar und steuerbar macht.
- GitHub Repository: nekromant / esp8266-frankenstein
https://GitHub.com/nekromant/esp8266-frankenstein - ESP8266 mit Frankenstein Firmware
https://www.dinotools.de/2015/07/12/esp8266-frankenstein-firmware/
FreeRTOS
Ich habe selbst noch keine Erfahrung mit FreeRTOS gesammelt. Daher hier nur ein paar Links
- FreeRTOS™Real-time operating system for microcontrollers
https://www.freertos.org/ - ESP-IDF Programming Guide : FreeRTOS
https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/system/freertos.html - How to get started with FreeRTOS and ESP8266
https://www.freecodecamp.org/news/how-to-get-started-with-freertos-and-esp8266-7a16035ddd71/
Weitere Links
- MQTT
- ESPEasy
- Async Web Server for ESP8266 and ESP32
https://GitHub.com/me-no-dev/ESPAsyncWebServer -
Tuya - IoT as a Service
Viele Geräte haben einen ESP8266 mit Tuya Firmware. Besser geht es ohne