/* ESPurna OTA MODULE Copyright (C) 2016 by Xose PĂ©rez */ #include #include "ArduinoOTA.h" // ----------------------------------------------------------------------------- // OTA // ----------------------------------------------------------------------------- void otaSetup() { ArduinoOTA.setPort(OTA_PORT); ArduinoOTA.setHostname(config.hostname.c_str()); ArduinoOTA.setPassword((const char *) OTA_PASS); ArduinoOTA.onStart([]() { #if ENABLE_RF rfEnable(false); #endif #if DEBUG Serial.println(F("[OTA] Start")); #endif }); ArduinoOTA.onEnd([]() { #if DEBUG Serial.println(F("[OTA] End")); #endif #if ENABLE_RF rfEnable(true); #endif }); ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) { #if DEBUG Serial.printf("[OTA] Progress: %u%%\r", (progress / (total / 100))); #endif }); ArduinoOTA.onError([](ota_error_t error) { #if DEBUG Serial.printf("[OTA] Error[%u]: ", error); if (error == OTA_AUTH_ERROR) Serial.println(F("[OTA] Auth Failed")); else if (error == OTA_BEGIN_ERROR) Serial.println(F("[OTA] Begin Failed")); else if (error == OTA_CONNECT_ERROR) Serial.println(F("[OTA] Connect Failed")); else if (error == OTA_RECEIVE_ERROR) Serial.println(F("[OTA] Receive Failed")); else if (error == OTA_END_ERROR) Serial.println(F("[OTA] End Failed")); #endif }); ArduinoOTA.begin(); } void otaLoop() { ArduinoOTA.handle(); }