diff --git a/tasmota/support_tasmota.ino b/tasmota/support_tasmota.ino index 57ce2dd32..b20e5ef26 100644 --- a/tasmota/support_tasmota.ino +++ b/tasmota/support_tasmota.ino @@ -1000,7 +1000,9 @@ void ArduinoOTAInit(void) { ArduinoOTA.setPort(8266); ArduinoOTA.setHostname(my_hostname); - if (strlen(SettingsText(SET_WEBPWD))) { ArduinoOTA.setPassword(SettingsText(SET_WEBPWD)); } + if (strlen(SettingsText(SET_WEBPWD))) { + ArduinoOTA.setPassword(SettingsText(SET_WEBPWD)); + } ArduinoOTA.onStart([]() { @@ -1059,6 +1061,14 @@ void ArduinoOTAInit(void) ArduinoOTA.begin(); AddLog_P2(LOG_LEVEL_INFO, PSTR(D_LOG_UPLOAD "Arduino OTA " D_ENABLED " " D_PORT " 8266")); } + +void ArduinoOtaLoop(void) +{ + MDNS.update(); + ArduinoOTA.handle(); + // Once OTA is triggered, only handle that and dont do other stuff. (otherwise it fails) + while (arduino_ota_triggered) { ArduinoOTA.handle(); } +} #endif // USE_ARDUINO_OTA /********************************************************************************************/ diff --git a/tasmota/tasmota.ino b/tasmota/tasmota.ino index 95c9285a2..fe90b1a33 100644 --- a/tasmota/tasmota.ino +++ b/tasmota/tasmota.ino @@ -405,10 +405,7 @@ void loop(void) if (!serial_local) { SerialInput(); } #ifdef USE_ARDUINO_OTA - MDNS.update(); - ArduinoOTA.handle(); - // Once OTA is triggered, only handle that and dont do other stuff. (otherwise it fails) - while (arduino_ota_triggered) ArduinoOTA.handle(); + ArduinoOtaLoop(); #endif // USE_ARDUINO_OTA uint32_t my_activity = millis() - my_sleep;