Re: [chrony-users] Can chrony correct very wrong RTC?

[ Thread Index | Date Index | More chrony.tuxfamily.org/chrony-users Archives ]


Hi Miroslav,

thank you for your quick reply!

On 10/15/18 10:31 AM, Miroslav Lichvar wrote:
On Mon, Oct 15, 2018 at 10:10:38AM +0200, Leo von Klenze wrote:
Hello,

I've a cubietruck with a very weird RTC. It is off by about 2384 seconds
per day if the box is not running. While running the offset is just
about 480s per day.
That's bad. Unless the board is always running, so the drift doesn't
change so much, I'm not sure how much the RTC support in chrony will
be useful.
I've done some further experiments and I'm pretty sure now that this task cannot be handled by chrony alone due to the different drift if running/stopped.

Is there anything chrony can do about it? I'm not quite sure out of the
docs what chrony exactly is doing with the drift f the RTC. I'm using
rtcfile option in config and "-s" switch on startup. However chrony sets
the system clock from the RTC on startup but without any correction (as
far as I can see).
AFAIK there is no limit on the frequency error.

Are there any errors from chronyd in the system log? What does the rtc
file contain when chronyd is starting? What does "chronyc rtcdata"
print?
No, there are no errors. Chrony states the drift in rtcdata as long as the RTC is not synchronized with the SysClock. Afterwards rtcdata reports no drift anymore.

Can chrony handle such a case or do I have go get hwclock with
/etc/adjtime in place as well?
It depends on what are your expectations. It certainly won't be able
to compensate for the "off" drift.

You can try hwclock, but I doubt it would do better (assuming chrony
works as expected).

I've implemented the following scenario now and it seems to work well enough:

- I've calculated once the drift when box is powered off and written it to /etc/adjtime

1) on boot I set the Sysclock from the RTC via hwclock. hwclocks uses the drift from /etc/adjtime
2) afterwards chrony is started and I configured chrony to synchronize the RTC on runtime
3) on shutdown I ensure that the RTC is set to the Sysclock one last time via hwclock

So hwclock manages the drift during power off, chrony during running. It seems to qork quite well.

As far as I've understood now, it is just hard for chrony to manage both drifts since they are that different.

--

Leo von Klenze
Geschäftsführer
+49 176 10072624

Scansation ist Top Supplier Retail
        2018!

Scansation GmbH
www.scansation.de

Zielstattstr. 133, 81379 München
Geschäftsführer: Andreas Klett, Leo von Klenze
Amtsgericht München, HRB 227036

Attachment: signature.asc
Description: OpenPGP digital signature



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/