From 8ac1e034b17e9adbcc74f31f6c153fae5d6ae7b4 Mon Sep 17 00:00:00 2001 From: Gunnar Skjold Date: Mon, 17 Oct 2022 13:09:28 +0200 Subject: [PATCH] Reverted WiFi_connect method --- src/AmsToMqttBridge.ino | 37 +++++++++---------------------------- 1 file changed, 9 insertions(+), 28 deletions(-) diff --git a/src/AmsToMqttBridge.ino b/src/AmsToMqttBridge.ino index 5d988fac..34a3e761 100644 --- a/src/AmsToMqttBridge.ino +++ b/src/AmsToMqttBridge.ino @@ -991,34 +991,17 @@ void debugPrint(byte *buffer, int start, int length) { Debug.println(""); } +unsigned long wifiTimeout = WIFI_CONNECTION_TIMEOUT; unsigned long lastWifiRetry = -WIFI_CONNECTION_TIMEOUT; void WiFi_connect() { + if(millis() - lastWifiRetry < wifiTimeout) { + delay(50); + return; + } + lastWifiRetry = millis(); + if (WiFi.status() != WL_CONNECTED) { - if(WiFi.status() == WL_DISCONNECTED) { - if(millis() - lastWifiRetry < WIFI_CONNECTION_TIMEOUT) { - return; - } - } if(WiFi.getMode() != WIFI_OFF) { - switch(WiFi.status()) { - case WL_NO_SSID_AVAIL: - debugE("WiFi error, no SSID available"); - break; - case WL_CONNECT_FAILED: - debugE("WiFi error, connection failed"); - break; - case WL_CONNECTION_LOST: - debugE("WiFi error, connection lost"); - break; - #if defined(ESP8266) - case WL_WRONG_PASSWORD: - debugE("WiFi error, wrong password"); - break; - #endif - default: - debugE("WiFi error, %d", WiFi.status()); - break; - } if(wifiReconnectCount > 3) { ESP.restart(); return; @@ -1052,13 +1035,11 @@ void WiFi_connect() { WiFi.softAPdisconnect(true); WiFi.enableAP(false); WiFi.mode(WIFI_OFF); - #if defined(ESP8266) - WiFi.forceSleepBegin(); - #endif yield(); + wifiTimeout = 5000; return; } - lastWifiRetry = millis(); + wifiTimeout = WIFI_CONNECTION_TIMEOUT; WiFiConfig wifi; if(!config.getWiFiConfig(wifi) || strlen(wifi.ssid) == 0) {