use delayed restart for proper GUI responses
This commit is contained in:
parent
1be2b1a667
commit
b1f3af3797
17
src/main.cpp
17
src/main.cpp
|
@ -174,6 +174,15 @@ class GwSerialLog : public GwLogWriter{
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
void delayedRestart(){
|
||||||
|
xTaskCreate([](void *p){
|
||||||
|
delay(500);
|
||||||
|
ESP.restart();
|
||||||
|
vTaskDelete(NULL);
|
||||||
|
},"reset",1000,NULL,0,NULL);
|
||||||
|
}
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
|
|
||||||
uint8_t chipid[6];
|
uint8_t chipid[6];
|
||||||
|
@ -218,7 +227,7 @@ void setup() {
|
||||||
});
|
});
|
||||||
webserver.on("/api/reset", HTTP_GET,[](AsyncWebServerRequest *request){
|
webserver.on("/api/reset", HTTP_GET,[](AsyncWebServerRequest *request){
|
||||||
logger.logDebug(GwLog::LOG,"Reset Button");
|
logger.logDebug(GwLog::LOG,"Reset Button");
|
||||||
ESP.restart();
|
delayedRestart();
|
||||||
});
|
});
|
||||||
class StatusRequest : public RequestMessage{
|
class StatusRequest : public RequestMessage{
|
||||||
public:
|
public:
|
||||||
|
@ -268,8 +277,7 @@ void setup() {
|
||||||
result=JSON_OK;
|
result=JSON_OK;
|
||||||
logger.logString("update config and restart");
|
logger.logString("update config and restart");
|
||||||
config.saveConfig();
|
config.saveConfig();
|
||||||
delay(100);
|
delayedRestart();
|
||||||
ESP.restart();
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
DynamicJsonDocument rt(100);
|
DynamicJsonDocument rt(100);
|
||||||
|
@ -295,8 +303,7 @@ void setup() {
|
||||||
config.reset(true);
|
config.reset(true);
|
||||||
logger.logString("reset config, restart");
|
logger.logString("reset config, restart");
|
||||||
result=JSON_OK;
|
result=JSON_OK;
|
||||||
delay(100);
|
delayedRestart();
|
||||||
ESP.restart();
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
webserver.on("/api/resetConfig",HTTP_GET,[](AsyncWebServerRequest *request){
|
webserver.on("/api/resetConfig",HTTP_GET,[](AsyncWebServerRequest *request){
|
||||||
|
|
Loading…
Reference in New Issue