From 60560e634284a5beb194588bdb5696e396824044 Mon Sep 17 00:00:00 2001 From: David Gauchard Date: Fri, 1 Feb 2019 12:13:10 +0100 Subject: [PATCH 1/2] stop lwIP dhcp client with WiFi goes off. --- libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp b/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp index a6239decef..82341fae96 100644 --- a/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp +++ b/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp @@ -389,6 +389,11 @@ bool ESP8266WiFiGenericClass::mode(WiFiMode_t m) { bool ret = false; + if (m == WIFI_OFF) + // calls lwIP's dhcp_stop(), + // safe to call even if not started + wifi_station_dhcpc_stop(); + ETS_UART_INTR_DISABLE(); if(_persistent) { ret = wifi_set_opmode(m); From 5d540e037a3f8fb6db384a1c57c074709c82bfbf Mon Sep 17 00:00:00 2001 From: David Gauchard Date: Fri, 1 Feb 2019 16:23:36 +0100 Subject: [PATCH 2/2] stop dhcp-client when really unused --- 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 82341fae96..e1a3583ff8 100644 --- a/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp +++ b/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp @@ -389,7 +389,7 @@ bool ESP8266WiFiGenericClass::mode(WiFiMode_t m) { bool ret = false; - if (m == WIFI_OFF) + if (m != WIFI_STA && m != WIFI_AP_STA) // calls lwIP's dhcp_stop(), // safe to call even if not started wifi_station_dhcpc_stop();