refactor: restart action improved

This commit is contained in:
Yurii
2024-11-15 00:55:38 +03:00
parent 19feb85230
commit e6119dc7ee
3 changed files with 15 additions and 8 deletions

View File

@@ -32,7 +32,8 @@ protected:
unsigned long lastHeapInfo = 0;
unsigned int minFreeHeap = 0;
unsigned int minMaxFreeBlockHeap = 0;
unsigned long restartSignalTime = 0;
bool restartSignalReceived = false;
unsigned long restartSignalReceivedTime = 0;
bool heatingEnabled = false;
unsigned long heatingDisabledTime = 0;
PumpStartReason extPumpStartReason = PumpStartReason::NONE;
@@ -73,8 +74,14 @@ protected:
}
if (vars.actions.restart) {
this->restartSignalTime = millis();
this->restartSignalReceivedTime = millis();
this->restartSignalReceived = true;
vars.actions.restart = false;
Log.sinfoln(FPSTR(L_MAIN), F("Received restart signal"));
}
if (!vars.states.restarting && this->restartSignalReceived && millis() - this->restartSignalReceivedTime > 5000) {
vars.states.restarting = true;
// save settings
@@ -88,7 +95,7 @@ protected:
fsNetworkSettings.write();
}
Log.sinfoln(FPSTR(L_MAIN), F("Restart signal received. Restart after 10 sec."));
Log.sinfoln(FPSTR(L_MAIN), F("Restart scheduled in 10 sec."));
}
vars.mqtt.connected = tMqtt->isConnected();
@@ -160,8 +167,8 @@ protected:
// restart
if (vars.states.restarting && millis() - this->restartSignalTime > 10000) {
vars.states.restarting = false;
if (this->restartSignalReceived && millis() - this->restartSignalReceivedTime > 15000) {
this->restartSignalReceived = false;
ESP.restart();
}
@@ -173,7 +180,7 @@ protected:
// critical heap
if (!vars.states.restarting && (freeHeap < 2048 || maxFreeBlockHeap < 2048)) {
this->restartSignalTime = millis();
this->restartSignalReceivedTime = millis();
vars.states.restarting = true;
}

View File

@@ -419,7 +419,7 @@
"note": {
"disclaimer1": "After a successful upgrade the filesystem, ALL settings will be reset to default values! Save backup before upgrading.",
"disclaimer2": "After a successful upgrade, the device will automatically reboot after 10 seconds."
"disclaimer2": "After a successful upgrade, the device will automatically reboot after 15 seconds."
},
"settingsFile": "Settings file",

View File

@@ -419,7 +419,7 @@
"note": {
"disclaimer1": "После успешного обновления файловой системы ВСЕ настройки будут сброшены на стандартные! Создайте резервную копию ПЕРЕД обновлением.",
"disclaimer2": "После успешного обновления устройство автоматически перезагрузится через 10 секунд."
"disclaimer2": "После успешного обновления устройство автоматически перезагрузится через 15 секунд."
},
"settingsFile": "Файл настроек",