diff --git a/Ota.cpp b/Ota.cpp index ef4b791..b29314b 100644 --- a/Ota.cpp +++ b/Ota.cpp @@ -1,6 +1,7 @@ #include #include "Ota.h" #include "Logger.h" +#include "RestartReason.h" #define FULL_PACKET 1436 // HTTP_UPLOAD_BUFLEN in WebServer,h @@ -26,7 +27,7 @@ void Ota::updateFirmware(uint8_t* buf, size_t size) if (ESP_OK == esp_ota_set_boot_partition(esp_ota_get_next_update_partition(NULL))) { delay(2000); - esp_restart(); + restartEsp(RestartReason::OTACompleted); } else { diff --git a/RestartReason.h b/RestartReason.h index 57efb4d..8da243d 100644 --- a/RestartReason.h +++ b/RestartReason.h @@ -12,6 +12,7 @@ enum class RestartReason NetworkDeviceCriticalFailure, ConfigurationUpdated, RestartTimer, + OTACompleted, OTATimeout, OTAAborted, OTAUnknownState, @@ -60,8 +61,14 @@ inline static String getRestartReason() return "ConfigurationUpdated"; case RestartReason::RestartTimer: return "RestartTimer"; + case RestartReason::OTACompleted: + return "OTACompleted"; case RestartReason::OTATimeout: return "OTATimeout"; + case RestartReason::OTAAborted: + return "OTAAborted"; + case RestartReason::OTAUnknownState: + return "OTAUnknownState"; case RestartReason::DeviceUnpaired: return "DeviceUnpaired"; default: