ATtiny1614 based GPS satellite clock using built-in RTC

This is another quite simple satellite clock (GPS). It has the special feature that it uses the built-in RTC of the ATtiny1614 to maintain the time during any periods of limited satellite coverage or at start up following a power cycle, mains failure etc. and this can be useful since a cold start of a GPS module can mean, depending on the reception, many minutes before a usable time is received.

When using an external crystal, this RTC can provide an accuracy of approximately +/- 2 seconds per day (20ppm), and that in standby mode with a current consumption of only 2uA.

Clearly, during periods of satellite reception, the timestamp obtained is so accurate that no error can normally be measured (but see the comment on Leap Seconds below).

A Super Capacitor powers the microcontroller in standby mode, say during a power failure.

The Arduino TimeZone library is used to handle the local time zone/DST rules so the correct local time is always displayed. Time is displayed on an I2C based LCD 1602 unit.

It is constructed on a sandwich of two 8cm x 6cm prototype boards. The Patch antenna is mounted horizontally on a wire loop and its active surface faces upwards.

All schematics and code are provided so anyone interested can duplicate the project.

clock-neo-LCD_V1_01P.ino (9.8 KB)
clock-neo-LCD.pdf (702.0 KB)