W-Lan Zugangsdaten zur Laufzeit angeben

Die meisten Programme die wohl auf dem ESP-Modul laufen, verbinden sich mit dem Internet über einen zentralen W-Lan Access-Point. In fast allen Beispielen, werden dabei W-Lan Zugangspunkt und Passwort im Code eingegeben.

// W-Lan Zugansdaten
const char WIFI_SSID[] = ".............."; // Anpassen
const char WIFI_PSK[] = "..............";  // Anpassen

Dies hat folgende Nachteile:

  • Will man das Passwort oder den Zugangspunkt wechseln, muss man den Code anpassen, compilieren und erneut auf das Modul laden
  • Will man den Code mit anderen Leuten teilen, muss man für die Variablen einen Platzhalter einfügen. Das ist vor allem dann mühsam, wenn man den Code von Zeit zu Zeit überarbeitet und dann immer wieder daran denken muss, diese Platzhalter anzupassen

Dabei gibt es eine elegante Lösung. Die Library WifiManager. Der WifiManager braucht gerade mal zwei Zeilen um Dein ganzen Wifi-Code zu ersetzen. Und das geht so. Zuerst musst du die Library über den Library Manager einbinden. Suche nach wifimanager und installiere die von tzapu.

Als nächstes muss Du die Library in Deinem Programm einbinden:

#include <ESP8266WiFi.h> 
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <WiFiManager.h>  // das ist sie! Die vorangehenden sind ebenfalls einzubinden, wenn nicht sowieso schon da.

Als nächstes muss Du in Deiner setup() Routine die Library initialisieren:

void setup() {
  WiFiManager wifiManager;
  wifiManager.autoConnect("AP-NAME", "AP-PASSWORD");
}

Der Zugangspunkt und das Passwort kannst Du auch weglassen, dann wird ein automatischer, eindeutiger Name, bzw. kein Passwort verwendet.

Nun ist Dein Gerät bereit. Wenn Du das Modul das erste Mal startest, dann geht es automatisch in den Access-Point-Modus. Mit dem Handy kannst Du Dich nun via W-Lan mit dem Modul verbinden. Wenn Du eine beliebige Seite aufrufst, wirst Du automatisch auf diese Seite weitergeleitet:

ESP8266 WiFi Captive Portal Homepage

Nun kannst Du Dich in Dein Lokales W-Lan Netzwerk einlogen

ESP8266 WiFi Captive Portal Configuration

Der Zugang wird auf dem Modul gespeichert und bei einem Neustart verbindet sich das Modul automatisch mit dem letzten gespeicherten W-Lan Netzwerk.

Das Projekt bietet noch viele, weitere Möglichkeiten und hat eine ausführliche Hilfeseite. Schau doch einfach mal vorbei:

https://github.com/tzapu/WiFiManager

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert