Hi,
I hope it's OK to post this here, as I believe it is not an ntpMerlin specific issue (please correct me if I am wrong)
I have an AiMesh setup with an AX-86U Pro as main router running chrony. One of the network clients is a Raspberry Pi with attached Adafruit GPS/PPS module. This client runs a chrony instance, which is using the GPS as refclock and a handful of public NTP servers with the "noselect" option for monitoring purposes. The chrony instance on the AX-86U uses the Raspberry as single source (and the same "noselect"ed public servers for monitoring) and acts as time server for my local network.
The issue is that even though the Raspi's time offset is usually less than 1μs, the offset on the AX-86U occasionally jumps to 300-500ms, requiring large corrections of the clock. The Raspi is connected directly to one of the router's ethernet ports. As far as I can tell no other NTP service is running. The ntp entware package is not installed. In the GUI the "Enable local ntp server" box is not checked and there is no entry in the NTP server fields. There is an ntp-symlink pointing to busybox but I have no idea if and where this is configured.
Here is a screenshot of the Raspi's source time offset and some diagnostic info
		
		
	
	
		 
	
	
	
	
		
And this is the AX-86U's interpretation of that input
7 days with severe spikes
		 
	
Last 24h without an extreme spike but still quite large values.
		 
	
Diagnostic info
	
	
	
		
What's even more confusing to me is that I am already averaging 15 readings from the source, hence I expect the Raspi's time signal to be pretty smooth. This is the chrony config
	
	
	
		
Is the behavior of the router's clock as expected? If not how can it be improved?
				
			I hope it's OK to post this here, as I believe it is not an ntpMerlin specific issue (please correct me if I am wrong)
I have an AiMesh setup with an AX-86U Pro as main router running chrony. One of the network clients is a Raspberry Pi with attached Adafruit GPS/PPS module. This client runs a chrony instance, which is using the GPS as refclock and a handful of public NTP servers with the "noselect" option for monitoring purposes. The chrony instance on the AX-86U uses the Raspberry as single source (and the same "noselect"ed public servers for monitoring) and acts as time server for my local network.
The issue is that even though the Raspi's time offset is usually less than 1μs, the offset on the AX-86U occasionally jumps to 300-500ms, requiring large corrections of the clock. The Raspi is connected directly to one of the router's ethernet ports. As far as I can tell no other NTP service is running. The ntp entware package is not installed. In the GUI the "Enable local ntp server" box is not checked and there is no entry in the NTP server fields. There is an ntp-symlink pointing to busybox but I have no idea if and where this is configured.
Here is a screenshot of the Raspi's source time offset and some diagnostic info
		Code:
	
	# chronyc -m sources sourcestats tracking
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
#? GPS                           0   4   377    12    +43ms[  +43ms] +/-  100ms
#* PPS                           0   4   377     9  +1197ns[+1282ns] +/-  634ns
^? zeit.fu-berlin.de             1  10   377   287  -2570us[-2570us] +/-   56ms
^? ptbtime1.ptb.de               1  10   377   34m  -2986us[-2982us] +/- 9605us
^? ptbtime2.ptb.de               1  10   377   972  -3281us[-3281us] +/-   10ms
^? ptbtime3.ptb.de               1  10   377   979  -3861us[-3861us] +/- 9732us
^? ns.tu-berlin.de               2  10   377   760  -2796us[-2797us] +/-   12ms
Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev
==============================================================================
GPS                        11   4   160    +70.967    503.715    +59ms    18ms
PPS                        63  39   994     +0.000      0.001     +0ns   794ns
zeit.fu-berlin.de          16   9  258m     +0.042      0.091  -1868us   423us
ptbtime1.ptb.de            10   5  155m     +0.067      0.256  -1547us   451us
ptbtime2.ptb.de            23  14  396m     +0.118      0.086  -1452us   794us
ptbtime3.ptb.de             6   4   86m     -0.046      0.731  -2396us   280us
ns.tu-berlin.de            11   8  189m     -0.042      0.226  -2118us   517us
Reference ID    : 50505300 (PPS)
Stratum         : 1
Ref time (UTC)  : Sun Jun 25 14:17:04 2023
System time     : 0.000000005 seconds fast of NTP time
Last offset     : +0.000000086 seconds
RMS offset      : 0.000000074 seconds
Frequency       : 0.684 ppm fast
Residual freq   : +0.000 ppm
Skew            : 0.001 ppm
Root delay      : 0.000000001 seconds
Root dispersion : 0.000010801 seconds
Update interval : 16.0 seconds
Leap status     : NormalAnd this is the AX-86U's interpretation of that input
7 days with severe spikes
Last 24h without an extreme spike but still quite large values.
Diagnostic info
		Code:
	
	# chronyc -m sources  sourcestats tracking
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^* 192.168.1.105                 1  -1   377     7    +70us[  +76us] +/-  123us
^? zeit.fu-berlin.de             1   6   377    35  -4203us[ -786ms] +/-   58ms
^? ptbtime1.ptb.de               1   6   377    44  -2085us[ -783ms] +/- 8489us
^? ptbtime2.ptb.de               1   6   377    39  -3051us[ -784ms] +/- 9530us
^? ptbtime3.ptb.de               1   6   377    37  -3013us[ -784ms] +/- 9361us
^? ns.tu-berlin.de               2   6   377    51   +778ms[-3362us] +/-   14ms
Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev
==============================================================================
192.168.1.105              16   8    19     +0.056      1.637   +291ns  6080ns
zeit.fu-berlin.de          55  24   58m  -2575.711    109.491   +313ms   231ms
ptbtime1.ptb.de            63  28   66m  -2646.124     88.932   +154ms   231ms
ptbtime2.ptb.de            58  26   61m  -2624.447    102.515   +250ms   239ms
ptbtime3.ptb.de            64  28   67m  -2596.221     86.995   +297ms   235ms
ns.tu-berlin.de            50  21   52m  -2570.033    124.756   +319ms   233ms
Reference ID    : C0A80169 (192.168.1.105)
Stratum         : 2
Ref time (UTC)  : Sun Jun 25 14:22:33 2023
System time     : 0.000000000 seconds slow of NTP time
Last offset     : +0.000006530 seconds
RMS offset      : 0.052360762 seconds
Frequency       : 15.524 ppm slow
Residual freq   : +0.056 ppm
Skew            : 1.888 ppm
Root delay      : 0.000136754 seconds
Root dispersion : 0.000075826 seconds
Update interval : 3.8 seconds
Leap status     : NormalWhat's even more confusing to me is that I am already averaging 15 readings from the source, hence I expect the Raspi's time signal to be pretty smooth. This is the chrony config
		Code:
	
	server 192.168.1.105 minpoll -7 maxpoll 0 filter 15
server zeit.fu-berlin.de noselect
server ptbtime1.ptb.de noselect
server ptbtime2.ptb.de noselect
server ptbtime3.ptb.de noselect
server times.tubit.tu-berlin.de noselect
minsources 1
maxdrift 100
driftfile /opt/var/lib/chrony/drift
dumponexit
dumpdir /opt/var/lib/chrony
pidfile /opt/var/run/chrony/chronyd.pid
ntsdumpdir /opt/var/lib/chrony
makestep 1.0 3
rtcsync
allow 192.168.0.0/16
deny 192.168.1.104
deny 192.168.1.105
broadcast 60 192.168.1.255
logchange 0.5
sched_priority 1
lock_all
bindaddress 192.168.1.1Is the behavior of the router's clock as expected? If not how can it be improved?
 
	
 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		 
 
		