Problems with NTP skipping forward, then back, then forward.

I have both X2 and X4 Connectports. Whenever they get NTP updates, the clock slowly (over a minute) goes forward in steps, then pauses for about a minute, then jumps backwards and slowly works its way forward again.

Sometimes it ends up where it would have been if it hadn’t done an update.

I have the latest firmware on both connectports and I’ve tried different NTP servers. The X4 is suppose to have RTC, but it does the same thing that the X2 does (but maybe less extreme)

Anyone else seeing this behavior?

If you are gathering sensor data, how do you do reliable timestamps?

I’ve tried time.time(), but because of the NTP bug it can make the timestamps a mess. I’ve also had the same problem using scheduler.py which is reliant on time.time() from digi_sched.py

Any suggestions helpful.

First, make sure you have a LONG retry period - say 86400 seconds (1 day). The Digi default of 60 seconds is crazy and will result in such erratic behavior.

If this doesn’t solve the problem try a different NTP server. The Digi algorithm seems to get confused when NTP access has high jitter (variabile delay between accesses). Worst case (sadly) stop using NTP.

Thanks – great suggestion. The interval was left at the 60 default. I’ve changed that. That change should at least give me only one weird section a day in the data.

I’ve tried 4 or 5 NTP servers and they all had the same issue (or rather the X2 had the same issue).

You may not see it even once per day.

If I understood what someone told me about NTP, the ‘jitter’ compensation is related to the sample interval size. So checking once per day means jitter is less important & has less impact, while checking once per minute means you are paranoid and the algorithms are supposed to try harder to be exact.

On most of the systems I’ve used it on, the 86400 solves the wild fluctuation (but I had one that just had to abandon SNTP - not sure hwy).

Just an update - I have been having conversations with various developers. You want to try to find a firmware image claimed to be 2.10.x.x, not 2.9.x.x. There have been some fixes for SNTP.

Also, do NOT select some massive, poor performing NTP server like NIST.gov. NIST is accurate, but frequently doesn’t give you answers. Digi’s app.idigi.com provides SNTP responses and will not be as congested as a site like NIST.gov