ESP8266WebServer kleiner als ESP8266AsyncWebServer?

Ich habe ein Platzproblem in einem Sketch, der auf einem ESP8285 läuft.

Der hat einen Normalmodus, in dem auf Basis von ESP8266AsyncTCP ein paar Server laufen (Telnet, Modbus, Fauxmo (für Alexa)). Dazu kommt ein Konfigurationsmodus, der nur bei frisch geflashten Boards oder durch Drücken eines Buttons unmittelbar nach dem Booten startet. Im Konfigurationsmodus wird ein eigenes WLAN aufgezogen und ein Webserver gestartet, der mit ESP8266AsyncWebServer implementiert ist. Im Normalbetrieb wird der Webserver nicht gebraucht.

Das Binary ist inzwischen auf ca. 560kB angeschwollen, wodurch kein OTA mehr geht - das Board hat nur 1MB. Deswegen suche ich nach Wegen, den Platzbedarf zu reduzieren.

Bei der Suche nach Alternativen bin ich auf den ESP8266WebServer gestoßen, der wohl ein Vorläufer des asynchronen Webservers ESP8266AsyncWebServer vom gleichen Autor ist und wesentlich weniger Features bietet - was mich nicht stören würde, ich brauche kein SSL, kein JSON und kein SPIFFS etc., ich muss nur genau eine Seite mit Eingabefeldern ausgeben und auf drei verschiedene URLs reagieren.

Vermutlich basieren aber sowohl der ESP8266WebServer als auch der ESP8266AsyncTCP beide auf lwIP. Hat jemand schon mal so eine Kombination laufen gehabt, oder kollidiert das?

Ich würde ungern einen eigenen "dünnen" Webserver implementieren müssen...

Ich vermute, dass musst Du austesten. Ich habe den ESP8266Webserver viel im Einsatz, aber nicht in Verbindung mit den Async-Sachen.

Gruß Tommy

1 Like

Ich habe es jetzt mal umgebaut. Der ESP8266WebServer funktioniert parallel zu den anderen AsyncTCP-Servern und spart satte 230kB in der Binarygröße.

Danke für die Info.

Gruß Tommy

Kleiner Nachtrag: ich habe den wieder verfügbaren Platz genutzt, um jetzt auch noch 16 programmierbare Timer in die Dosen zu integrieren :grin:

Github-Repository

Nur kein Byte ungenutzt lassen :wink:

Gruß Tommy

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.