Philippe G 8820a85112 missing space after command header - release преди 3 години
..
.gitignore d7dc25f5b6 Merge remote-tracking branch 'origin/Over_The_Air_Update' into преди 4 години
CMakeLists.txt 5f9848dad1 use inline multilayer battery SVG преди 4 години
Kconfig.projbuild ee1d54a1ba add a GPIO to drive external amplifier преди 4 години
LICENSE.md 6e7793a756 initial work on a wifi/http configuration module преди 4 години
README.md 6e7793a756 initial work on a wifi/http configuration module преди 4 години
ap.json 6e7793a756 initial work on a wifi/http configuration module преди 4 години
bootstrap.min.css.gz 7e4ed77af0 move to bootstrap преди 4 години
bootstrap.min.js.gz 7e4ed77af0 move to bootstrap преди 4 години
code.js 8820a85112 missing space after command header - release преди 3 години
component.mk 5f9848dad1 use inline multilayer battery SVG преди 4 години
compress.bat 6e7793a756 initial work on a wifi/http configuration module преди 4 години
connect 6e7793a756 initial work on a wifi/http configuration module преди 4 години
dns_server.c 0ab1cd438b Full OTA refactor and other stability improvement преди 4 години
dns_server.h 0ab1cd438b Full OTA refactor and other stability improvement преди 4 години
http_server.c 4fa993f1a1 trying to solve memory issue - release преди 4 години
http_server.h d4315f29ca OTA + nvs parameters bug fixes преди 4 години
index.html 9f3bc774d4 equalizer sampling message & default squeezelite command line преди 4 години
jquery.min.js.gz 7e4ed77af0 move to bootstrap преди 4 години
lock.png 6e7793a756 initial work on a wifi/http configuration module преди 4 години
main.c.txt 6e7793a756 initial work on a wifi/http configuration module преди 4 години
popper.min.js.gz 7e4ed77af0 move to bootstrap преди 4 години
settings.png 6e7793a756 initial work on a wifi/http configuration module преди 4 години
status 6e7793a756 initial work on a wifi/http configuration module преди 4 години
style.css 6b52cf5c15 fully hide dummy iframe преди 4 години
wifi0.png 6e7793a756 initial work on a wifi/http configuration module преди 4 години
wifi1.png 6e7793a756 initial work on a wifi/http configuration module преди 4 години
wifi2.png 6e7793a756 initial work on a wifi/http configuration module преди 4 години
wifi24.png 6e7793a756 initial work on a wifi/http configuration module преди 4 години
wifi3.png 6e7793a756 initial work on a wifi/http configuration module преди 4 години
wifi_manager.c dfebb8ceb6 Add set_GPIO, handle GPIO 36/39 bug преди 4 години
wifi_manager.h 4369614bb4 Bug Fix: OTA now works from the Squeezelite app partition - release преди 4 години

README.md

What is esp32-wifi-manager?

esp32-wifi-manager is an esp32 program that enables easy management of wifi networks through a web application.

esp32-wifi-manager is lightweight (8KB of task stack in total) and barely uses any CPU power through a completely event driven architecture. It's an all in one wifi scanner, http server & dns daemon living in the least amount of RAM possible.

For real time constrained applications, esp32-wifi-manager can live entirely on PRO CPU, leaving the entire APP CPU untouched for your own needs.

esp32-wifi-manager will automatically attempt to re-connect to a previously saved network on boot, and it will start its own wifi access point through which you can manage wifi networks if a saved network cannot be found and/or if the connection is lost.

esp32-wifi-manager is an esp-idf project that compiles successfully with the esp-idf 3.2 release. You can simply copy the project and start adding your own code to it.

Demo

esp32-wifi-manager demo

Look and Feel

esp32-wifi-manager on an mobile device esp32-wifi-manager on an mobile device

Adding esp32-wifi-manager to your code

Ther are effectively three different ways you can embed esp32-wifi-manager with your code:

  • Just forget about it and poll in your code for wifi connectivity status
  • Use event callbacks
  • Modify esp32-wifi-manager code directly to fit your needs

Event callbacks are the cleanest way to use the wifi manager and that's the recommended way to do it. A typical use-case would be to get notified when wifi manager finally gets a connection an access point. In order to do this you can simply define a callback function:

void cb_connection_ok(void *pvParameter){
	ESP_LOGI(TAG, "I have a connection!");
}

Then just register it by calling:

wifi_manager_set_callback(EVENT_STA_GOT_IP, &cb_connection_ok);

That's it! Now everytime the event is triggered it will call this function.

License

esp32-wifi-manager is MIT licensed. As such, it can be included in any project, commercial or not, as long as you retain original copyright. Please make sure to read the license file.