| 63 | void setup() {} |
| 64 | |
| 65 | void loop() { |
| 66 | network->loop(); |
| 67 | |
| 68 | if (fsNetworkSettings.tick() == FD_WRITE) { |
| 69 | Log.sinfoln(FPSTR(L_NETWORK_SETTINGS), F("Updated")); |
| 70 | } |
| 71 | |
| 72 | if (fsSettings.tick() == FD_WRITE) { |
| 73 | Log.sinfoln(FPSTR(L_SETTINGS), F("Updated")); |
| 74 | } |
| 75 | |
| 76 | if (fsSensorsSettings.tick() == FD_WRITE) { |
| 77 | Log.sinfoln(FPSTR(L_SENSORS_SETTINGS), F("Updated")); |
| 78 | } |
| 79 | |
| 80 | if (vars.actions.restart) { |
| 81 | this->restartSignalReceivedTime = millis(); |
| 82 | this->restartSignalReceived = true; |
| 83 | vars.actions.restart = false; |
| 84 | |
| 85 | Log.sinfoln(FPSTR(L_MAIN), F("Received restart signal")); |
| 86 | } |
| 87 | |
| 88 | if (!vars.states.restarting && this->restartSignalReceived && millis() - this->restartSignalReceivedTime > 5000) { |
| 89 | vars.states.restarting = true; |
| 90 | |
| 91 | // save settings |
| 92 | fsSettings.updateNow(); |
| 93 | |
| 94 | // save sensors settings |
| 95 | fsSensorsSettings.updateNow(); |
| 96 | |
| 97 | // force save network settings |
| 98 | if (fsNetworkSettings.updateNow() == FD_FILE_ERR && LittleFS.begin()) { |
| 99 | fsNetworkSettings.write(); |
| 100 | } |
| 101 | |
| 102 | Log.sinfoln(FPSTR(L_MAIN), F("Restart scheduled in 10 sec.")); |
| 103 | } |
| 104 | |
| 105 | vars.mqtt.connected = tMqtt->isConnected(); |
| 106 | vars.network.connected = network->isConnected(); |
| 107 | vars.network.rssi = network->isConnected() ? WiFi.RSSI() : 0; |
| 108 | |
| 109 | if (settings.system.logLevel >= TinyLogger::Level::SILENT && settings.system.logLevel <= TinyLogger::Level::VERBOSE) { |
| 110 | if (Log.getLevel() != settings.system.logLevel) { |
| 111 | Log.setLevel(static_cast<TinyLogger::Level>(settings.system.logLevel)); |
| 112 | } |
| 113 | } |
| 114 | |
| 115 | if (network->isConnected()) { |
| 116 | if (!this->ntpStarted) { |
| 117 | if (strlen(settings.system.ntp.server)) { |
| 118 | configTime(0, 0, settings.system.ntp.server); |
| 119 | setenv("TZ", settings.system.ntp.timezone, 1); |
| 120 | tzset(); |
| 121 | |
| 122 | this->ntpStarted = true; |