diff --git a/examples/OneOpenAir/OneOpenAir.ino b/examples/OneOpenAir/OneOpenAir.ino index f0f2038..54c2815 100644 --- a/examples/OneOpenAir/OneOpenAir.ino +++ b/examples/OneOpenAir/OneOpenAir.ino @@ -487,10 +487,22 @@ static void displayExecuteOta(OtaState state, String msg, int processing) { break; } case OtaState::OTA_STATE_SUCCESS: { - if (ag->isOne()) { - oledDisplay.showNewFirmwareSuccess(String(processing)); - } else { - Serial.println("Rebooting... " + String(processing)); + int i = 6; + while(i != 0) { + i = i - 1; + Serial.println("OTA update performed, restarting ..."); + int i = 6; + while (i != 0) { + i = i - 1; + if (ag->isOne()) { + oledDisplay.showNewFirmwareSuccess(String(i)); + } else { + Serial.println("Rebooting... " + String(i)); + } + + delay(1000); + } + esp_restart(); } break; } diff --git a/examples/OneOpenAir/OtaHandler.h b/examples/OneOpenAir/OtaHandler.h index f5ace5b..3dc4242 100644 --- a/examples/OneOpenAir/OtaHandler.h +++ b/examples/OneOpenAir/OtaHandler.h @@ -41,16 +41,13 @@ public: OtaUpdateOutcome ret = attemptToPerformOta(&config); Serial.println(ret); if (ret == OtaUpdateOutcome::UPDATE_PERFORMED) { - Serial.println("OTA update performed, restarting ..."); - int i = 6; - while (i != 0) { - i = i - 1; - if (this->callback) { - this->callback(OtaState::OTA_STATE_SUCCESS, String(i)); - } - delay(1000); + if (this->callback) { + this->callback(OtaState::OTA_STATE_SUCCESS, ""); + } + } else { + if(this->callback) { + this->callback(OtaState::OTA_STATE_FAIL, ""); } - esp_restart(); } }