From 01517e3045f8a0aea67e6f4bb9d54c0b38d8e9c9 Mon Sep 17 00:00:00 2001 From: Develo Date: Wed, 14 Oct 2020 15:05:38 -0300 Subject: [PATCH 1/9] Add Wrong Password wifi status case --- libraries/ESP8266WiFi/src/include/wl_definitions.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/ESP8266WiFi/src/include/wl_definitions.h b/libraries/ESP8266WiFi/src/include/wl_definitions.h index 5c8c536602..e20ee928ca 100644 --- a/libraries/ESP8266WiFi/src/include/wl_definitions.h +++ b/libraries/ESP8266WiFi/src/include/wl_definitions.h @@ -55,7 +55,8 @@ typedef enum { WL_CONNECTED = 3, WL_CONNECT_FAILED = 4, WL_CONNECTION_LOST = 5, - WL_DISCONNECTED = 6 + WL_WRONG_PASSWORD = 6, + WL_DISCONNECTED = 7 } wl_status_t; /* Encryption modes */ From dba63d358112106734ebe508b77ec402729af5c1 Mon Sep 17 00:00:00 2001 From: Develo Date: Wed, 14 Oct 2020 15:08:36 -0300 Subject: [PATCH 2/9] Add wrong password case for status return --- libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp b/libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp index 5082dfd88a..65f0ea35a7 100644 --- a/libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp +++ b/libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp @@ -624,8 +624,9 @@ wl_status_t ESP8266WiFiSTAClass::status() { case STATION_NO_AP_FOUND: return WL_NO_SSID_AVAIL; case STATION_CONNECT_FAIL: - case STATION_WRONG_PASSWORD: return WL_CONNECT_FAILED; + case STATION_WRONG_PASSWORD: + return WL_WRONG_PASSWORD; case STATION_IDLE: return WL_IDLE_STATUS; default: From 5f321f4ff900859c15f1a922380defe1d54f9e7c Mon Sep 17 00:00:00 2001 From: Develo Date: Wed, 14 Oct 2020 15:12:26 -0300 Subject: [PATCH 3/9] Add wrong password case for debug --- libraries/ESP8266WiFi/src/ESP8266WiFiMulti.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libraries/ESP8266WiFi/src/ESP8266WiFiMulti.cpp b/libraries/ESP8266WiFi/src/ESP8266WiFiMulti.cpp index f68045e6af..d172486b9a 100644 --- a/libraries/ESP8266WiFi/src/ESP8266WiFiMulti.cpp +++ b/libraries/ESP8266WiFi/src/ESP8266WiFiMulti.cpp @@ -60,6 +60,9 @@ static void printWiFiStatus(wl_status_t status) case WL_CONNECT_FAILED: DEBUG_WIFI_MULTI("[WIFIM] Connecting failed.\n"); break; + case WL_WRONG_PASSWORD: + DEBUG_WIFI_MULTI("[WIFIM] Wrong password.\n"); + break; default: DEBUG_WIFI_MULTI("[WIFIM] Connecting failed (%d).\n", status); break; From a483cb3776b64d844e6517e5f033f996c323b340 Mon Sep 17 00:00:00 2001 From: Develo Date: Wed, 14 Oct 2020 15:48:44 -0300 Subject: [PATCH 4/9] Add Wrong password case to interactive example --- libraries/esp8266/examples/interactive/interactive.ino | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libraries/esp8266/examples/interactive/interactive.ino b/libraries/esp8266/examples/interactive/interactive.ino index 3c21455a29..e54340e642 100644 --- a/libraries/esp8266/examples/interactive/interactive.ino +++ b/libraries/esp8266/examples/interactive/interactive.ino @@ -42,7 +42,8 @@ void setup() { "WL_CONNECTED = 3\n" "WL_CONNECT_FAILED = 4\n" "WL_CONNECTION_LOST = 5\n" - "WL_DISCONNECTED = 6\n" + "WL_WRONG_PASSWORD" = 6\n" + "WL_DISCONNECTED = 7\n" ); } From 46709105d746fa742e577dffcdb7773d02122b0e Mon Sep 17 00:00:00 2001 From: Develo Date: Wed, 14 Oct 2020 15:51:31 -0300 Subject: [PATCH 5/9] Add case for wrong password to station doc --- doc/esp8266wifi/station-class.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/doc/esp8266wifi/station-class.rst b/doc/esp8266wifi/station-class.rst index 01dab377f9..787de49684 100644 --- a/doc/esp8266wifi/station-class.rst +++ b/doc/esp8266wifi/station-class.rst @@ -250,8 +250,9 @@ Wait until module connects to the access point. This function is intended for mo Function returns one of the following connection statuses: - ``WL_CONNECTED`` after successful connection is established -- ``WL_NO_SSID_AVAIL`` in case configured SSID cannot be reached -- ``WL_CONNECT_FAILED`` if password is incorrect +- ``WL_NO_SSID_AVAIL`` in case configured SSID cannot be reached +- ``WL_CONNECT_FAILED`` if connection failed +- ``WL_CONNECT_WRONG_PASSWORD`` if password is incorrect - ``WL_IDLE_STATUS`` when Wi-Fi is in process of changing between statuses - ``WL_DISCONNECTED`` if module is not configured in station mode - ``-1`` on timeout From 9f9492046377a4dac8e8bd974527d88d879864bb Mon Sep 17 00:00:00 2001 From: Develo Date: Wed, 14 Oct 2020 15:58:28 -0300 Subject: [PATCH 6/9] Add case for wrong password to resumeFromShutdown --- libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp b/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp index 304883506a..5fc4f667c8 100644 --- a/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp +++ b/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp @@ -827,15 +827,21 @@ bool ESP8266WiFiGenericClass::resumeFromShutdown (WiFiState* state) } } // state->state.fwconfig.bssid is not real bssid (it's what user may have provided when bssid_set==1) - if (WiFi.begin((const char*)state->state.fwconfig.ssid, + auto beginResult = WiFi.begin((const char*)state->state.fwconfig.ssid, (const char*)state->state.fwconfig.password, state->state.channel, nullptr/*(const uint8_t*)state->state.fwconfig.bssid*/, // <- try with gw's mac address? - true) == WL_CONNECT_FAILED) + true); + if (beginResult == WL_CONNECT_FAILED) { DEBUG_WIFI("core: resume: WiFi.begin failed\n"); return false; } + if (beginResult == WL_WRONG_PASSWORD) + { + DEBUG_WIFI("core: resume: WiFi.begin wrong password\n"); + return false; + } } if (state->state.mode & WIFI_AP) From 0e646178276f41f60f3fc2280827023d8d456bfd Mon Sep 17 00:00:00 2001 From: Develo Date: Wed, 14 Oct 2020 16:00:14 -0300 Subject: [PATCH 7/9] Add wrong password case to wifi readme --- doc/esp8266wifi/readme.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/doc/esp8266wifi/readme.rst b/doc/esp8266wifi/readme.rst index 23ec9a329a..2c22ee150b 100644 --- a/doc/esp8266wifi/readme.rst +++ b/doc/esp8266wifi/readme.rst @@ -260,8 +260,9 @@ This function returns following codes to describe what is going on with Wi-Fi co * 0 : ``WL_IDLE_STATUS`` when Wi-Fi is in process of changing between statuses * 1 : ``WL_NO_SSID_AVAIL``\ in case configured SSID cannot be reached * 3 : ``WL_CONNECTED`` after successful connection is established -* 4 : ``WL_CONNECT_FAILED`` if password is incorrect -* 6 : ``WL_DISCONNECTED`` if module is not configured in station mode +* 4 : ``WL_CONNECT_FAILED`` if connection failed +* 6 : ``WL_CONNECT_WRONG_PASSWORD`` if password is incorrect +* 7 : ``WL_DISCONNECTED`` if module is not configured in station mode It is a good practice to display and check information returned by functions. Application development and troubleshooting will be easier with that. From bea1c1c3738481f6f24be928010545c4a82135d2 Mon Sep 17 00:00:00 2001 From: Develo Date: Wed, 14 Oct 2020 16:04:26 -0300 Subject: [PATCH 8/9] Fix typo --- libraries/esp8266/examples/interactive/interactive.ino | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/esp8266/examples/interactive/interactive.ino b/libraries/esp8266/examples/interactive/interactive.ino index e54340e642..b3bd1ff931 100644 --- a/libraries/esp8266/examples/interactive/interactive.ino +++ b/libraries/esp8266/examples/interactive/interactive.ino @@ -42,7 +42,7 @@ void setup() { "WL_CONNECTED = 3\n" "WL_CONNECT_FAILED = 4\n" "WL_CONNECTION_LOST = 5\n" - "WL_WRONG_PASSWORD" = 6\n" + "WL_WRONG_PASSWORD = 6\n" "WL_DISCONNECTED = 7\n" ); } From a5fde2b2fb794397726564de0bd0d4d761639f6d Mon Sep 17 00:00:00 2001 From: "Earle F. Philhower, III" Date: Thu, 15 Oct 2020 09:21:34 -0700 Subject: [PATCH 9/9] Update ESP8266WiFiGeneric.cpp Tab/space issue --- libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp b/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp index 5fc4f667c8..1df25be3e6 100644 --- a/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp +++ b/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp @@ -827,7 +827,7 @@ bool ESP8266WiFiGenericClass::resumeFromShutdown (WiFiState* state) } } // state->state.fwconfig.bssid is not real bssid (it's what user may have provided when bssid_set==1) - auto beginResult = WiFi.begin((const char*)state->state.fwconfig.ssid, + auto beginResult = WiFi.begin((const char*)state->state.fwconfig.ssid, (const char*)state->state.fwconfig.password, state->state.channel, nullptr/*(const uint8_t*)state->state.fwconfig.bssid*/, // <- try with gw's mac address?