From e3d91a03ff62fe0690e32a9a5fece491618a51e4 Mon Sep 17 00:00:00 2001 From: Shawn A Date: Mon, 18 Jun 2018 15:28:32 -0500 Subject: [PATCH] add esp32 persistent test support persistent support was added via a PR, but not very well, it is buggy. --- WiFiManager.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/WiFiManager.cpp b/WiFiManager.cpp index dd50e20..86d41a1 100644 --- a/WiFiManager.cpp +++ b/WiFiManager.cpp @@ -2266,19 +2266,21 @@ String WiFiManager::getModeString(uint8_t mode){ // set mode ignores WiFi.persistent bool WiFiManager::WiFi_Mode(WiFiMode_t m,bool persistent) { + bool ret; #ifdef ESP8266 if((wifi_get_opmode() == (uint8) m ) && !persistent) { return true; } - bool ret; ETS_UART_INTR_DISABLE(); if(persistent) ret = wifi_set_opmode(m); else ret = wifi_set_opmode_current(m); ETS_UART_INTR_ENABLE(); - return ret; #elif defined(ESP32) - return WiFi.mode(m); // @todo persistent not implemented? + if(persistent && esp32persistent) WiFi.persistent(true); + ret = WiFi.mode(m); // @todo persistent check persistant mode , NI + if(persistent && esp32persistent) WiFi.persistent(false); + return ret; #endif } bool WiFiManager::WiFi_Mode(WiFiMode_t m) { @@ -2327,7 +2329,11 @@ bool WiFiManager::WiFi_enableSTA(bool enable,bool persistent) { return true; } #elif defined(ESP32) - return WiFi.enableSTA(enable); // @todo handle persistent when it is implemented in platform + bool ret; + if(persistent && esp32persistent) WiFi.persistent(true); + ret = WiFi.enableSTA(enable); // @todo handle persistent when it is implemented in platform + if(persistent && esp32persistent) WiFi.persistent(false); + return ret; #endif } bool WiFiManager::WiFi_enableSTA(bool enable) {