Commit 2ded4194 authored by FloX's avatar FloX Committed by Me No Dev

Update WiFiMulti.cpp (#1220)

* Update WiFiMulti.cpp

added 5 sec timeout from ESP8266

* Update WiFiMulti.cpp

* Update WiFiMulti.h
parent 7eb6fc52
......@@ -42,7 +42,7 @@ bool WiFiMulti::addAP(const char* ssid, const char *passphrase)
return APlistAdd(ssid, passphrase);
}
uint8_t WiFiMulti::run(void)
uint8_t WiFiMulti::run(uint32_t connectTimeout)
{
int8_t scanResult;
......@@ -118,8 +118,9 @@ uint8_t WiFiMulti::run(void)
WiFi.begin(bestNetwork.ssid, bestNetwork.passphrase, bestChannel, bestBSSID);
status = WiFi.status();
// wait for connection or fail
while(status != WL_CONNECTED && status != WL_NO_SSID_AVAIL && status != WL_CONNECT_FAILED) {
auto startTime = millis();
// wait for connection, fail, or timeout
while(status != WL_CONNECTED && status != WL_NO_SSID_AVAIL && status != WL_CONNECT_FAILED && (millis() - startTime) <= connectTimeout) {
delay(10);
status = WiFi.status();
}
......
......@@ -54,7 +54,7 @@ public:
bool addAP(const char* ssid, const char *passphrase = NULL);
uint8_t run(void);
uint8_t run(uint32_t connectTimeout=5000);
private:
std::vector<WifiAPlist_t> APlist;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment