NTP samples: 72 replies, best per round/server: 18; local clock drift vs NTP: +1.70 ppm Per-round NTP best offsets (s, relative to board clock) and server spread: round ntp1(delay) ntp2(delay) ntp3(delay) spread_ms resid_vs_fit_ms r1 1790931373.325233( 68.5ms) 1790931373.327086( 73.7ms) 1790931373.323854( 67.1ms) 3.23 +1.10 +2.94 -0.31 r2 1790931373.323892( 66.0ms) 1790931373.325250( 70.6ms) 1790931373.325805( 71.2ms) 1.91 -0.29 +1.06 +1.60 r3 1790931373.319700( 57.7ms) 1790931373.321981( 62.2ms) 1790931373.324088( 68.3ms) 4.39 -4.53 -2.26 -0.17 r4 1790931373.321446( 60.7ms) 1790931373.325700( 69.0ms) 1790931373.321714( 63.6ms) 4.25 -2.83 +1.41 -2.59 r5 1790931373.323808( 65.1ms) 1790931373.328886( 74.6ms) 1790931373.325714( 70.6ms) 5.08 -0.51 +4.55 +1.37 r6 1790931373.322036( 59.4ms) 1790931373.321430( 63.0ms) 1790931373.329130( 76.0ms) 7.70 -2.33 -2.95 +4.73 Table: uptime / DMS / NITZ / ntp1 / ntp2 / ntp3 (UTC at the sample's local midpoint; NTP = board clock + NTP offset at that instant) round uptime DMS_UTC NITZ_UTC ntp1 ntp2 ntp3 DMS-NTP_ms qmi_halfwin_ms r1 2287.40 09:34:23.383 09:34:22 09:34:23.664 09:34:23.666 09:34:23.663 -280.7 17.5 r1 2287.45 09:34:23.428 09:34:22 09:34:23.707 09:34:23.709 09:34:23.706 -278.6 18.8 r1 2287.49 09:34:23.469 09:34:22 09:34:23.751 09:34:23.752 09:34:23.749 -280.9 17.2 r2 2314.72 09:34:50.704 09:34:49 09:34:50.982 09:34:50.984 09:34:50.984 -279.0 19.2 r2 2314.77 09:34:50.746 09:34:49 09:34:51.026 09:34:51.028 09:34:51.028 -281.0 17.7 r2 2314.81 09:34:50.787 09:34:49 09:34:51.068 09:34:51.069 09:34:51.070 -281.6 17.0 r3 2342.02 09:35:18.007 09:35:17 09:35:18.280 09:35:18.282 09:35:18.284 -278.1 20.9 r3 2342.07 09:35:18.052 09:35:17 09:35:18.327 09:35:18.329 09:35:18.331 -279.8 18.5 r3 2342.12 09:35:18.093 09:35:17 09:35:18.369 09:35:18.371 09:35:18.374 -281.2 16.8 r4 2369.33 09:35:45.308 09:35:44 09:35:45.584 09:35:45.588 09:35:45.584 -279.3 18.9 r4 2369.37 09:35:45.350 09:35:44 09:35:45.627 09:35:45.631 09:35:45.627 -280.4 17.2 r4 2369.41 09:35:45.390 09:35:44 09:35:45.668 09:35:45.672 09:35:45.668 -281.5 16.4 r5 2396.63 09:36:12.613 09:36:11 09:36:12.891 09:36:12.896 09:36:12.893 -279.4 19.0 r5 2396.68 09:36:12.658 09:36:11 09:36:12.937 09:36:12.942 09:36:12.939 -280.0 18.4 r5 2396.72 09:36:12.701 09:36:11 09:36:12.980 09:36:12.986 09:36:12.982 -280.4 17.9 r6 2423.97 09:36:39.952 09:36:39 09:36:40.229 09:36:40.228 09:36:40.236 -279.3 19.1 r6 2424.02 09:36:39.996 09:36:39 09:36:40.273 09:36:40.273 09:36:40.280 -280.1 18.1 r6 2424.06 09:36:40.037 09:36:39 09:36:40.316 09:36:40.315 09:36:40.323 -281.5 16.7 DMS - NTP (ms): n=18 mean -280.2 median -280.3 min -281.6 max -278.1 stdev 1.0 ; max |DMS-NTP| 281.6 ms; qmicli half-window max 20.9 ms NITZ - NTP (ms, NITZ truncated to 1 s => expected in (-1000, 0]): n=12 min -1161.6 max -359.6 NTP server spread (max-min of best offsets within a round): max 7.70 ms DMS formula check: Unix UTC = DMS_ms/1000 + 315964800 -> DMS-NTP mean above (0 = formula exact; ~ +18000 ms would mean GPS time without leap correction)