WiFiManager ESP8266 WiFi connection manager library (Arduino IDE)

ESP8266 WiFi Configuration Library

The burden every headless wireless connected device needs to overcome is how to connect to the network without having to hardcode any credentials in it’s firmware.

For the ESP8266 based devices programmed with the Arduino IDE, I have put together this little library that tries to make connecting as seamless and quick as possible. It’s called WiFiManager.

user friendly setup of esp8266 devices

no need to hardcode credentials anymore

simple and self contained, get started with a couple of copy/pastes

captive portal so you get the configuration page as soon as you connect to the WiFi from mobile devices

configuration portal is mobile visible/usable

How It works

when your ESP starts up, it sets it up in Station mode and tries to connect to a previously saved Access Point

if this is unsuccessful (or no previous network saved) it moves the ESP into Access Point mode and spins up a DNS and WebServer (default ip 192.168.4.1)

using any wifi enabled device with a browser(computer, phone, tablet) connect to the newly created Access Point

because of the Captive Portal and the DNS server you will either get a ‘Join to network’ type of popup or get any domain you try to access redirected to the configuration portal

choose one of the access points scanned, enter password, click save, ESP will reboot and retry the whole flow above

Get it from github: WiFiManager github

This package works fine with stable release 2.0.0 or newer of the Arduino IDE

Up to date documentation can be found on the github page, where any exceptions should also be noted

All the involved projects are moving very fast, so a lot of changes have happened, but the basic use for this, has remained the same.

Category: blog