[time-nuts] TymServe 2100 1995 Issue - A Kludgy Fix
Hal Murray
hmurray at megapathdsl.net
Wed May 6 07:42:13 UTC 2015
tvb at LeapSecond.com said:
> The hard part is understanding when the GPS receiver fails and when to apply
> the 1024 week correction, or not. This is made difficult or impossible if
> the receiver does not give you internal information or if you do not already
> have external information (like an alternative, independent GPS, or UTC date
> source). If you wanted to cheat you could keep an independent clock inside
> the Arduino and then add or subtract 1024 weeks until it "looked right". But
> this is complicated by power failures in either the GPS receiver or the
> Arduino. Worse yet are cold starts where the receiver doesn't know what the
> UTC-GPS correction is.
Why is that so hard?
If I understand things correctly, the time (UTC) is correct because the GPS
receiver is using the current GPS-UTC offset. But the date is off by 1024
weeks. (or some multiple of that)
All you need for "external information" is the date when the fixup software
was compiled. Call that the build-date. Then the recipe is:
t = dateAndTimeFromGPS
while t < build-date
t += 1024 weeks
That won't solve the problem forever but it will give you another 20 years,
and you can restart the timer anytime you want by rebuilding and reinstalling
the fixup software.
I think the problems with leap-seconds are also non-problems because the
broken firmware will be working with the correct/current GPS-UTC offset. I
don't remember any problems like that 2 years ago.
--
These are my opinions. I hate spam.
More information about the Time-nuts_lists.febo.com
mailing list