Lokal webbserver på ESP32 med Mongoose och TTGO T-Display

  • June 10, 2025

Mongoose är ett inbyggt nätverksbibliotek från Cesanta. Det kan ge en ESP32 ett lokalt webbgränssnitt och API-endpoints. Mongoose-biblioteket och Mongoose OS är olika projekt; använd dokumentationen för det du faktiskt installerar.

Börja med ett underhållet exempel

Använd Cesantas ESP32 Device Dashboard eller aktuell Mongoose-dokumentation som utgångspunkt. Exemplets kort, SDK och byggsystem måste passa ihop. En ESP32-C6-konfiguration kan inte utan vidare användas till ett ursprungligt TTGO T-Display med ESP32.

En konkret arbetsordning

  1. Identifiera exakt TTGO-modell, krets, flashstorlek och USB-gränssnitt på kortet. Anteckna även vilken bildskärmskontroller kortet faktiskt använder.
  2. Följ exemplets angivna ESP-IDF-version och byggkommandon. Spara versions- eller commitreferensen i projektet.
  3. Bygg det oförändrade nätverksexemplet först, innan du lägger till skärm och sensorer.
  4. Konfigurera ditt eget testnätverk enligt exemplets anvisningar. Håll lösenord utanför offentliga kodarkiv.
  5. Läs den lokala IP-adressen i loggen och öppna sidan från en klient på samma nätverk.
  6. Lägg till en endpoint med ett okänsligt testvärde. Testa både ett korrekt svar och en okänd URL.
  7. Integrera först därefter skärmen med ett bibliotek och pinout som passar just den TTGO-versionen.

Händelseloopen behöver tid

Mongoose arbetar med händelser och en nätverkshändelseloop. Långvariga blockeringar i sensorkod eller skärmuppdatering kan göra webbservern långsam eller instabil. Använd korta uppgifter, mät svarstiden och testa över tid. Kopiera inte funktionsnamn eller så kallade glue-filer från ett gammalt exempel utan att kontrollera att de finns i den använda versionen.

HTTP är inte automatiskt HTTPS

En fungerande HTTP-endpoint blir inte säker bara genom att ändra text i webbläsarens adress. TLS kräver konkret konfiguration av bland annat nycklar och certifikat samt utrymme i enheten. Använd projektets aktuella TLS-exempel och verifiera anslutningen i klienten. Ett bibliotek ger inte heller i sig åtkomstkontroll eller säkra uppdateringar.

Testning och licens

Börja på ett isolerat testnätverk och undvik portvidarebefordran till en oskyddad prototyp. Kontrollera bibliotekslicensen och eventuella kommersiella villkor för din användning. En handledning är ett lärprojekt; produktionsanvändning kräver en separat genomgång av autentisering, lagrade hemligheter, indatavalidering och uppdateringsstrategi.

Hitta utvecklingskort, eller bygg först exemplet med den hårdvara du redan har.

Lämna en kommentar

Observera att kommentarer måste godkännas innan de publiceras.