|
5 years ago | |
---|---|---|
.. | ||
.gitignore | d7dc25f5b6 Merge remote-tracking branch 'origin/Over_The_Air_Update' into | 5 years ago |
CMakeLists.txt | 4ca8bf2e76 Jenkins build fix | 5 years ago |
Kconfig.projbuild | b482389eca Align with main branch (#18) | 5 years ago |
LICENSE.md | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
README.md | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
ap.json | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
bootstrap.min.css.gz | 7e4ed77af0 move to bootstrap | 5 years ago |
bootstrap.min.js.gz | 7e4ed77af0 move to bootstrap | 5 years ago |
code.js | 93f8560a74 sort entries in nvs editor | 5 years ago |
component.mk | b6f1ce9a7a NVS Refactor ** Factory+Squeezelite FLASH required for this branch! | 5 years ago |
compress.bat | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
connect | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
dns_server.c | 0ab1cd438b Full OTA refactor and other stability improvement | 5 years ago |
dns_server.h | 0ab1cd438b Full OTA refactor and other stability improvement | 5 years ago |
http_server.c | d2f17f5b05 Update status.json message format: add severity | 5 years ago |
http_server.h | 0ab1cd438b Full OTA refactor and other stability improvement | 5 years ago |
index.html | 8e3e2fdee8 rename 'System' to 'Firmware' | 5 years ago |
jquery.min.js.gz | 7e4ed77af0 move to bootstrap | 5 years ago |
json.c | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
json.h | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
lock.png | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
main.c.txt | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
popper.min.js.gz | 7e4ed77af0 move to bootstrap | 5 years ago |
settings.png | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
status | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
style.css | 0996cad1ac better credits | 5 years ago |
wifi0.png | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
wifi1.png | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
wifi2.png | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
wifi24.png | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
wifi3.png | 6e7793a756 initial work on a wifi/http configuration module | 5 years ago |
wifi_manager.c | 2944f51eec Improve status.json | 5 years ago |
wifi_manager.h | b6f1ce9a7a NVS Refactor ** Factory+Squeezelite FLASH required for this branch! | 5 years ago |
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.
Ther are effectively three different ways you can embed esp32-wifi-manager with your code:
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.
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.