From f820dc78be3c4b48a030675b678339fdb0b50548 Mon Sep 17 00:00:00 2001 From: Shawn A Date: Thu, 25 Jan 2018 13:08:56 -0600 Subject: [PATCH] fix esp32 SSID tokens --- WiFiManager.cpp | 20 +++++++++++++++----- WiFiManager.h | 2 ++ 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/WiFiManager.cpp b/WiFiManager.cpp index dc7be8a..da4a752 100644 --- a/WiFiManager.cpp +++ b/WiFiManager.cpp @@ -583,7 +583,7 @@ void WiFiManager::handleWifi(boolean scan) { } String pitem = FPSTR(HTTP_FORM_START); - pitem.replace("{v}", WiFi.SSID()); + pitem.replace("{v}", WiFi_SSID()); page += pitem; page += getStaticOut(); @@ -971,7 +971,7 @@ void WiFiManager::handleInfo() { page += F(""); page += F("
SSID
"); - page += WiFi.SSID(); + page += WiFi_SSID(); page += F("
"); page += F("
BSSID
"); @@ -1148,7 +1148,7 @@ void WiFiManager::handleExit() { void WiFiManager::reportStatus(String &page){ - if (WiFi.SSID() != ""){ + if (WiFi_SSID() != ""){ if (WiFi.status()==WL_CONNECTED){ page += "
"; page += F("Connected to "); @@ -1161,7 +1161,7 @@ void WiFiManager::reportStatus(String &page){ } else { page += "
"; page += "Not Connected to "; - page += WiFi.SSID(); + page += WiFi_SSID(); } } else { page += "
"; @@ -1585,11 +1585,21 @@ bool WiFiManager::WiFi_hasAutoConnect(){ wifi_config_t conf; esp_wifi_get_config(WIFI_IF_STA, &conf); const char* ssid = reinterpret_cast(conf.sta.ssid); - DEBUG_WM(ssid); return ssid != ""; #endif } +const char* WiFiManager::WiFi_SSID(){ + #ifdef ESP8266 + return WiFi.SSID(); + #elif defined(ESP32) + wifi_config_t conf; + esp_wifi_get_config(WIFI_IF_STA, &conf); + const char* ssid = reinterpret_cast(conf.sta.ssid); + return ssid; + #endif +} + void WiFiManager::WiFiEvent(WiFiEvent_t event){ WiFiManager _WiFiManager; if(event == SYSTEM_EVENT_STA_DISCONNECTED){ diff --git a/WiFiManager.h b/WiFiManager.h index 469018f..7f73305 100644 --- a/WiFiManager.h +++ b/WiFiManager.h @@ -267,6 +267,8 @@ class WiFiManager uint8_t WiFi_softap_num_stations(); bool WiFi_hasAutoConnect(); void WiFi_autoReconnect(); + const char* WiFi_SSID(); + static void WiFiEvent(WiFiEvent_t event); void debugSoftAPConfig();