diff --git a/WiFiManager.cpp b/WiFiManager.cpp index 1e6d805..ec235e8 100644 --- a/WiFiManager.cpp +++ b/WiFiManager.cpp @@ -197,9 +197,20 @@ boolean WiFiManager::startConfigPortal() { } boolean WiFiManager::startConfigPortal(char const *apName, char const *apPassword) { - //setup AP - WiFi.mode(WIFI_AP_STA); - DEBUG_WM(F("SET AP STA")); + + if(!WiFi.isConnected()){ + WiFi.persistent(false); + // disconnect sta, start ap + WiFi.disconnect(); // this alone is not enough to stop the autoconnecter + WiFi.mode(WIFI_AP); + WiFi.persistent(true); + } + else { + //setup AP + WiFi.mode(WIFI_AP_STA); + DEBUG_WM(F("SET AP STA")); + } + _apName = apName; _apPassword = apPassword;