From ff2897d7c625533d10b448d397f91fd11f327b4e Mon Sep 17 00:00:00 2001 From: David McCurley <44048235+mrengineer7777@users.noreply.github.com> Date: Fri, 28 Apr 2023 10:04:54 -0500 Subject: [PATCH] eraseAP --- libraries/WiFi/src/WiFiSTA.cpp | 16 ++++++++++++++++ libraries/WiFi/src/WiFiSTA.h | 1 + 2 files changed, 17 insertions(+) diff --git a/libraries/WiFi/src/WiFiSTA.cpp b/libraries/WiFi/src/WiFiSTA.cpp index 7bcafea1d3e..185aaa84503 100644 --- a/libraries/WiFi/src/WiFiSTA.cpp +++ b/libraries/WiFi/src/WiFiSTA.cpp @@ -366,6 +366,22 @@ bool WiFiSTAClass::disconnect(bool wifioff, bool eraseap) return false; } +/** + * @brief Reset WiFi settings in NVS to default values. + * @return true if erase succeeded + * @note: Resets SSID, password, protocol, mode, etc. + * These settings are maintained by WiFi driver in IDF. + * WiFi driver must be initialized. + */ +bool WiFiSTAClass::eraseAP(void) { + if(WiFi.getMode()==WIFI_MODE_NULL) { + if(!WiFi.enableSTA(true)) + return false; + } + + return esp_wifi_restore()==ESP_OK; +} + /** * Change IP configuration settings disabling the dhcp client * @param local_ip Static ip configuration diff --git a/libraries/WiFi/src/WiFiSTA.h b/libraries/WiFi/src/WiFiSTA.h index b8bb855c198..2cdea7667b8 100644 --- a/libraries/WiFi/src/WiFiSTA.h +++ b/libraries/WiFi/src/WiFiSTA.h @@ -53,6 +53,7 @@ class WiFiSTAClass bool reconnect(); bool disconnect(bool wifioff = false, bool eraseap = false); + bool eraseAP(void); bool isConnected();