ESP32-C3-DevKitM-1: Fullstack IoT-projekt för undervisning – Wi-Fi, sensorer och Smart Home Dashboard

|5/10, 2025

ESP32-C3-DevKitM-1: Fullstack IoT-projekt för undervisning – Wi-Fi, sensorer och Smart Home Dashboard

Produktöversikt: ESP32-C3-DevKitM-1

Espressif ESP32?C3?DevKitM?1

Huvudegenskaper & specifikationer

Kortet är särskilt lämpat för IoT-applikationer och små inbyggda system där man vill kombinera trådlös kommunikation med sensorer och styrning.

Relaterade nyare versioner & jämförelser

Espressif har lanserat flera nyare modeller och serier som är intressanta att känna till:

Modell / serieViktiga förbättringar / skillnaderKommentar
ESP32-C5 (DevKitC-1 etc.)Har dual-band Wi-Fi 6 (2,4 + 5 GHz), modernare protokollstöd. espressif.com+3espressif.com+3espboards.dev+3Kan vara ett steg framåt om man vill ha snabbare kommunikation och mer framtidssäkerhet
ESP32-S3 / S-serien (MINI / WROOM etc.)Fler kärnor, mer minne, stöd för mer avancerade perifera funktioner, oftare mer prestanda för AI / signalbehandling Wikipedia+3espressif.com+3espboards.dev+3Bra val när man vill göra tyngre projekt
ESP32-C6, ESP32-H2Nya versioner med stöd för Wi-Fi 6, Zigbee / Thread (i vissa för C6 / H2) espressif.com+3Wikipedia+3espressif.com+3Bra att jämföra för att visa elever utveckling och trender inom IoT-plattformar

Att jämföra funktioner och möjligheter mellan dessa modeller är också en lärorik del för elever att se hur hårdvara utvecklas.

Förslag på lektioner, övningar och miniprojekt: frontend + backend

Nedan följer en modulär lektionsserie med förslag på övningar och ett mindre projekt som kombinerar frontend och backend.

Lektion 1: Introduktion & uppstart

Mål: Eleverna ska kunna koppla upp kortet, ladda kod och läsa av status i seriell monitor.

  • Koppla ESP32-C3-DevKitM-1 till dator via USB.

  • Installera drivrutiner (om nödvändigt) och ställa in miljö (Arduino IDE eller ESP-IDF).

  • Ladda upp ett “Blink”–program som får en LED (inbyggd eller extern) att blinka.

  • Debugga: kontrollera COM-port, spänning, att kortet är i programmeringsläge.

Lektion 2: Sensorinläsning och output

Mål: Mäta en analog sensor och styra en digital utgång.

  • Koppla in en analog temperatur- eller ljussensor (t.ex. LDR eller termistor).

  • Läs av värden via en ADC och visa dem på seriell monitor.

  • Koppla en LED eller relä och styr (HIGH / LOW) beroende på sensorvärdet (t.ex. om ljuset är för lågt, tänd LED).

  • Låt elever experimentera med tröskelvärden.

Lektion 3: Trådlös kommunikation och REST API

Mål: Kortet ska fungera som en liten HTTP-server och ta emot/förmedla data.

  • Sätt upp kortet att ansluta till ett Wi-Fi-nätverk (SSID, lösenord).

  • Skapa en enkel webserver på kortet som visar sensorvärden i webbläsare (t.ex. HTTP GET).

  • Lägg till ett API-endpoint som tillåter att man via URL styr en utgång, t.ex. /led/on och /led/off.

  • Visa hur man kan hämta JSON-data och styra via webbläsare eller via klientprogram.

Lektion 4: Backend & databashantering

Mål: En server (på t.ex. Raspberry Pi, molntjänst eller lokal dator) tar emot data från ESP32 och visar historik.

  • Skapa backend (t.ex. med Python / Flask, Node.js / Express eller Django) som exponerar API-endpoints.

  • Kortet ska pusha sensorvärden (t.ex. via HTTP POST eller MQTT) till backend-servern.

  • Backend sparar data i databas (t.ex. SQLite, MySQL eller MongoDB).

  • Skapa endpoint i backend som returnerar historisk data i JSON.

Lektion 5: Frontend-gränssnitt

Mål: Webbgränssnitt där man kan se sensorvärden i grafer och styra funktioner.

  • Skapa ett enkelt frontend (HTML + CSS + JavaScript) som anropar backend-API och visar värden i realtid (t.ex. med Chart.js eller liknande).

  • Lägg till knappar i frontend för att skicka kommandon (t.ex. tända/släcka LED, starta funktion).

  • Hantera svar och status – visa feedback till användaren (t.ex. “LED är ON / OFF”).

Miniprojekt: “Smart Hem Dashboard”

Projektbeskrivning: Eleverna ska bygga ett system som består av en ESP32-C3-enhet med sensorer och aktuatorer, som kommunicerar med en backend och där frontend visar data samt låter användare styra hushållsfunktioner.

Funktioner att inkludera:

  1. Sensorövervakning

    • Temperatur / luftfuktighet

    • Ljusnivå

    • Rörelse (PIR)

  2. Styrning / aktivering

    • Lysdioder eller relä för att tända/släcka ljus

    • Kanske servo för en liten dörr eller motor

  3. Kommunikation med backend

    • ESP32 pushar data regelbundet

    • Backend tar emot och sparar data

    • Frontend kan läsa aktuell + historik

  4. Frontend-gränssnitt

    • Dashboard med grafer och status

    • Knappar för att styra aktörer

    • Responsiv design (mobil + dator)

  5. Extra utmaningar (valfritt)

    • Automa­tisk logik: t.ex. om mörker + rörelse ? tänd ljus

    • Larm / notifieringar (SMS, e-post)

    • Flera enheter i nätverket (flera ESP-kort)

    • Användning av säkerhet (autentisering, HTTPS)

Förslag på lektionsupplägg / tidsplan

SessionTid (t.ex. 90 min)FokusAktiviteter
190 minIntroduktion & setupKoppla kort, installera miljö, blink-exempel
290 minSensor + utgångInläsning, tröskelstyrning, debugga
390 minWi-Fi & webserverAnslut Wi-Fi, bygg REST API på kortet
490 minBackendintegrationBackend + databas, API-mottagning
590 minFrontendBygga dashboard, knappar, grafer
62 × 90 minProjektElever bygger egna “smart hem” system
ExtravalfriUtmaningar / säkerhetImplementera extra funktioner