add not applicable as restart reason
This commit is contained in:
@@ -18,6 +18,7 @@ enum class RestartReason
|
||||
OTAAborted,
|
||||
OTAUnknownState,
|
||||
DeviceUnpaired,
|
||||
NotApplicable
|
||||
};
|
||||
|
||||
#define RESTART_REASON_VALID_DETECT 0xa00ab00bc00bd00d;
|
||||
@@ -25,6 +26,8 @@ enum class RestartReason
|
||||
extern int restartReason;
|
||||
extern uint64_t restartReasonValid;
|
||||
|
||||
extern RestartReason currentRestartReason;
|
||||
|
||||
inline static void restartEsp(RestartReason reason)
|
||||
{
|
||||
restartReason = (int)reason;
|
||||
@@ -32,15 +35,19 @@ inline static void restartEsp(RestartReason reason)
|
||||
ESP.restart();
|
||||
}
|
||||
|
||||
inline static String getRestartReason()
|
||||
inline static void initializeRestartReason()
|
||||
{
|
||||
uint64_t cmp = RESTART_REASON_VALID_DETECT;
|
||||
if(restartReasonValid != cmp)
|
||||
if(restartReasonValid == cmp)
|
||||
{
|
||||
return "UnknownNoRestartRegistered";
|
||||
currentRestartReason = (RestartReason)restartReason;
|
||||
memset(&restartReasonValid, 0, sizeof(restartReasonValid));
|
||||
}
|
||||
}
|
||||
|
||||
switch((RestartReason)restartReason)
|
||||
inline static String getRestartReason()
|
||||
{
|
||||
switch(currentRestartReason)
|
||||
{
|
||||
case RestartReason::RequestedViaMqtt:
|
||||
return "RequestedViaMqtt";
|
||||
@@ -74,6 +81,8 @@ inline static String getRestartReason()
|
||||
return "OTAUnknownState";
|
||||
case RestartReason::DeviceUnpaired:
|
||||
return "DeviceUnpaired";
|
||||
case RestartReason::NotApplicable:
|
||||
return "NotApplicable";
|
||||
default:
|
||||
return "Unknown: " + restartReason;
|
||||
}
|
||||
|
||||
2
main.cpp
2
main.cpp
@@ -31,6 +31,7 @@ unsigned long restartTs = (2^32) - 5 * 60000;
|
||||
|
||||
RTC_NOINIT_ATTR int restartReason;
|
||||
RTC_NOINIT_ATTR uint64_t restartReasonValid;
|
||||
RestartReason currentRestartReason = RestartReason::NotApplicable;
|
||||
|
||||
TaskHandle_t networkTaskHandle = nullptr;
|
||||
TaskHandle_t nukiTaskHandle = nullptr;
|
||||
@@ -167,6 +168,7 @@ void setup()
|
||||
Log->print(F("NUKI Hub version ")); Log->println(NUKI_HUB_VERSION);
|
||||
|
||||
bool firstStart = initPreferences();
|
||||
initializeRestartReason();
|
||||
|
||||
if(preferences->getInt(preference_restart_timer) > 0)
|
||||
{
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user