void updateUptime() { sysUptime_mins++; if(sysUptime_mins == 60) { sysUptime_mins=0; sysUptime_hours++; } if(sysUptime_hours == 24) { sysUptime_hours=0; sysUptime_days++; } } void buildUptimeString() { if(sysUptime_days > 0) sprintf(uptimeStr, "%dd %02d:%02d", sysUptime_days, sysUptime_hours, sysUptime_mins); else sprintf(uptimeStr, "%02d:%02d", sysUptime_hours, sysUptime_mins); } void createDeviceName() { byte mac[6]; WiFi.macAddress(mac); sprintf(confDevWiFi.deviceName, "%s-%02X%02X", FIRMWARE_SHORTNAME, (uint8_t)mac[4], (uint8_t)mac[5]); } void restart() { delay(100); //ESP.restart(); // Adding Safer Restart method ESP.wdtDisable(); ESP.reset(); delay(2000); } void logSysdata() { // Serial.print (NTP.getDateStr_YMD()); Serial.print (" "); Serial.print (NTP.getTimeStr ()); // Serial.print (" "); Serial.print (NTP.isSummerTime () ? "Summer Time. " : "Winter Time. "); Serial.println(); // Serial.print ("Uptime: "); // Serial.print (NTP.getUptimeString ()); Serial.print (" since "); // Serial.println (NTP.getDateTimeString (NTP.getFirstSync ()).c_str ()); // Serial.printf ("Free heap: %u", ESP.getFreeHeap ()); Serial.println(); char logBuf[101]; sprintf_P(logBuf, "SYS: uptime=%s, freeHeap=%u, heapFragm=%u%%", uptimeStr, ESP.getFreeHeap(), ESP.getHeapFragmentation()); sendLog(logBuf, LOGLEVEL_INFO); }