I recently finished a small Arduino based clock that uses an inexpensive GP module coupled with a 2 line LCD display. I used the template from my QCX case as the basis for the design of the enclosure.
It allows me to see the current time based on GPS. I added a switch on the front to allow the time to be displayed in either Australian Eastern Standard Time (AEST) or Australian Eastern Standard Summer Time (AESST) to cater for daylight savings.
The software was simple, I simply used the Arduino LCD and the Adafruit GPS libraries to do the heavy lifting and did some simple time math using the NEMA time string to cater for my GMT offset based on the position of the summer / winter switch.
The clone modules from China are *really bad* – They take a minute or two to synchronise with the GPS, but at least they work. And they work indoors, which surprised me a lot!
On the To-Do list, is to add a real battery backed RTC device to allow it to display the time immediately on turn on, and use the GPS signal to slave synchronise the RTC to GPS. I am not interested in millisecond precision, so it should work beautifully.
The source code for the project is here. You may do whatever you like with it. Please respect other peoples licences (It relies on the TinyGPS library). Enjoy 🙂 GPSClockSource