[chrony-users] Automotive usage of chronyd

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


For an AGL (Automotive-Grade-Linux) project, I'm evaluating if we could use chronyd on IVI (In-Vehicle-Infotainment) systems. At first sight, it looks much closer to our needs than ntpd.

The usual automotive clock references are
* RTC chip (but maybe not on all systems)
* GPS sensor (not always ; can be with or without PPS when present (usually without))
* NTP over Wifi (on some systems ; even then, the connections are very occasional)
* RDS (on FM signal, with ~100ms precision)

The good news is that a precision of ~0.5s will be enough for most OEMs.

Two questions :
1. Can chronyd use non-precise references like a GPS sensor without PPS (+-200ms) or an RDS FM timestamp (+-100ms)?
2. Can chronyd set the system time when it has not been initialized yet (Jan 1, 1970) ?

I made a first test in a near worst-case scenario : system without RTC and without network, but with only a USB GPS sensor (without PPS). Time/date after boot is Jan 1, 1970, 00:00:00. I send the timestamps of the GPS sensor to chronyd (over a socket), but chronyd rejects them. Even if I use the first GPS timestamp to force the system time, the subsequent timestamps are still rejected by chronyd ("refclock sample not valid age=-0.41" from refclock.c - valid_sample_time())). What is the condition for a valid sample ? I can understand that samples are rejected, but the "< 0.0" conditions looks like the drift is only allowed in one direction. Is that right ?

Thank you very much,


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