optimize OTA handling

This commit is contained in:
Nicu Hodos 2020-11-04 00:39:16 +01:00
parent 35440ecca0
commit 03a1fc0e21

View File

@ -4,6 +4,8 @@
#include "ntp_time.h" #include "ntp_time.h"
#include "display.h" #include "display.h"
#define STAY_CONNECTED_FOR_MINS(min) (min*60)
int currentHour = -1; int currentHour = -1;
time_t timeAtStartup; time_t timeAtStartup;
@ -23,8 +25,6 @@ void setup() {
} }
void loop() { void loop() {
ArduinoOTA.handle();
if ((currentHour != hour())) { if ((currentHour != hour())) {
wifi.reconnect(); wifi.reconnect();
wifi.printStatus(); wifi.printStatus();
@ -33,8 +33,11 @@ void loop() {
} }
currentHour = hour(); currentHour = hour();
} }
if (WiFi.status() == WL_CONNECTED && difftime(now(), timeAtStartup) > 60) { if (WiFi.status() == WL_CONNECTED) {
wifi.disconnect(); ArduinoOTA.handle();
if (difftime(now(), timeAtStartup) > STAY_CONNECTED_FOR_MINS(1)) {
wifi.disconnect();
}
} }
displayTime(); displayTime();
displayColon(true); displayColon(true);