Mikrocontroller im Accesspoint-Modus vernetzen



Ziele des Projekts

  • zwei Mikro­con­troller unab­hängig von einem beste­hen­den Router in einem eigen­ständi­gen WLAN-Netz betreiben
  • mit beliebi­gen Tem­per­atursen­soren (hier DHT11/DHT22) an zwei ver­schiede­nen Orten Tem­per­atur und Luft­feuchtigkeit messen
  • die ermit­tel­ten Mess­werte in einem Web­brows­er anzeigen

Benötigte Bauteile

  • ESP32-Mikro­con­troller oder ESP8266-Mikro­con­troller in beliebiger Kom­bi­na­tion
  • DHT11/DHT22 Tem­per­atursen­soren
  • Leitungs­drähte

Konfiguration der Mikrocontroller

Accesspoint-Modus (AP-Modus)

Beim AP-Modus bauen die ESPs ein vom heimis­chen Router unab­hängiges eigen­ständi­ges Netz auf. Neben dem Namen des Routers und dem Pass­wort musst du dem ESP einige Dat­en mit­teilen:

Der Name des Routers und das Pass­wort sind frei wählbar, allerd­ings muss das Pass­wort min­destens 8 Zeichen haben.

ip legt die sta­tis­che IP-Adresse fest.
gate­way ist das Gerät — in diesem Fall der ESP selb­st — das die Kom­mu­nika­tion der ver­bun­de­nen Geräte (der Klien­ten) untere­inan­der regelt.
sub­net ist der Adress­bere­ich der zuge­lasse­nen IP-Adressen. 255 bedeutet, dass dieser Bere­ich jew­eils unverän­der­lich ist, 0 am Ende heißt, dass die IP-Adressen vari­abel sind. Da die erste und die let­zte IP-Adresse aus organ­isatorischen Grün­den nicht vergeben wer­den darf, bleiben 254 IP-Adressen (192.168.4.1 bis 192.168.4.254).
Die neuere Schreib­weise ist übri­gens in diesem Fall 192.168.4/24.

Beachte, dass die Zahlen­blöcke der IP-Adressen durch Kom­ma­ta getren­nt wer­den müssen.

Alle IP-Adressen, die mit 192.168. begin­nen, sind als pri­vat fest­gelegt, sie dür­fen im Inter­net nicht ver­wen­det wer­den. Die näch­ste Zif­fer (4) beze­ich­net das Sub­netz. Hier sind max­i­mal 256 Sub­net­ze (192.168.0 bis 192.168.255) möglich. Die let­zte Zif­fer (1) ist die konkrete IP-Adresse des Geräts.

ip und gate­way müssen gle­ich sein!
Du darf­st kein Sub­netz ver­wen­den, das der Router für DHCP ver­wen­det.

Du kannst dir mit einem Werkzeug einen Überblick über die im pri­vat­en Netz vorhan­de­nen Geräte ver­schaf­fen und anhand der angezeigten IP-Adressen das vom Router für DHCP ver­wen­dete Sub­netz her­aus­find­en.

  • Win­dows:
    Eingabeauf­forderung (cmd) öff­nen
    arp ‑n
  • Lin­ux:
    Kon­sole öff­nen
    arp ‑n zeigt alle über Eth­er­net ver­bun­de­nen Geräte
    arp-scan –local­net zeigt alle über WiFi und Eth­er­net ver­bun­de­nen Geräte
    (arp-scan muss eventuell über die Paketver­wal­tung instal­liert wer­den)

Pro­gramm zum Auf­bau des Net­zes

Ein Smart­phone sucht über das mobile Netz im Inter­net nach der IP-Adresse des ESPServers (192.168.4.1). Da kein DNS-Serv­er erre­ich­bar ist, kann die Seite nicht angezeigt wer­den. Ver­wende stattdessen
http://192.168.4.1

Aufbau des AP-Netzes

Als Klien­ten kön­nen alle WLAN-fähi­gen Geräte ver­wen­det wer­den.

Das Schaubild zeigt den Auf­bau des Net­zes und die Kom­mu­nika­tion der Geräte untere­inan­der. Ich habe einen ESP32-WROOM gewählt, du kannst aber auch eine beliebige Kom­bi­na­tion von ESP32 oder ESP8266-Mikro­con­trollern ver­wen­den.
Der Mikro­con­troller mit der IP 192.168.4.1 baut das WLAN-Netz auf und erhebt gle­ichzeit­ig auch Dat­en für Tem­per­atur und Luft­feuchtigkeit. Der zweite Mikro­con­troller (Host) misst eben­falls Tem­per­atur und Luft­feuchtigkeit. In regelmäßi­gen Abstän­den fragt der Serv­er seine eige­nen Dat­en und die des Hosts ab. Die Klien­ten zeigen die Dat­en auf der Web­seite an.

Manuelle Konfiguration des Klienten

Den Klien­ten wer­den keine IP-Adressen automa­tisch zugeteilt. Daher muss die Kon­fig­u­ra­tion händisch erledigt wer­den.
Zunächst musst du das als “ESPServ­er” angezeigte WLAN auswählen und anschließend die Kon­fig­u­ra­tion anpassen.

Wenn du mehrere Klien­ten ver­wen­den willst, musst du jew­eils eine andere IP-Adresse ver­wen­den (z. B. 192.168.4.5). Die Adresse des Routers bleibt unverän­dert.

iOS

Android

Win­dows 10

ESP als Server und Klient

Ein ESP soll als Serv­er die Dat­en des anderen ESP ein­sam­meln und gle­ichzeit­ig als Klient eben­falls Tem­per­atur und Luft­feuchtigkeit messen.
Daher wird für die IP-Adresse und das Gate­way die gle­iche IP-Adresse ver­wen­det.

Für die kor­rek­te Darstel­lung im Brows­er ist in Zeile 141 eine Änderung nötig:

° -> ° 

Darstel­lung der GET-Anfrage im Seriellen Mon­i­tor

ESP als Host

Für die kor­rek­te Darstel­lung im Brows­er ist in Zeile 65 eine Änderung nötig:

° -> ° 

Quellen


Letzte Aktualisierung: Dez. 12, 2025 @ 14:18

Inhalt