diff --git a/interface/src/app/status/Status.tsx b/interface/src/app/status/Status.tsx index bc468fc62..7477d07d1 100644 --- a/interface/src/app/status/Status.tsx +++ b/interface/src/app/status/Status.tsx @@ -38,6 +38,7 @@ import { AuthenticatedContext } from 'contexts/authentication'; import { useI18nContext } from 'i18n/i18n-react'; import { NTPSyncStatus, NetworkConnectionStatus } from 'types'; import { useInterval } from 'utils'; +import { formatDateTime } from 'utils/time'; import RestartMonitor from './RestartMonitor'; @@ -138,7 +139,7 @@ const SystemStatus = () => { case NTPSyncStatus.NTP_INACTIVE: return LL.INACTIVE(0); case NTPSyncStatus.NTP_ACTIVE: - return LL.ACTIVE(); + return LL.ACTIVE() + (data.ntp_time !== undefined) ? ' (' + formatDateTime(data.ntp_time) + ')' : ''; default: return LL.UNKNOWN(); } diff --git a/src/web/WebStatusService.cpp b/src/web/WebStatusService.cpp index 3710ab374..a93f39f5b 100644 --- a/src/web/WebStatusService.cpp +++ b/src/web/WebStatusService.cpp @@ -68,6 +68,12 @@ void WebStatusService::systemStatus(AsyncWebServerRequest * request) { } return 0; }(); + time_t now = time(nullptr); + if (now > 1500000000L) { + char t[25]; + strftime(t, sizeof(t), "%FT%T", localtime(&now)); + root["ntp_time"] = t; + } #endif root["ap_status"] = EMSESP::esp8266React.apStatus();