I’ve been looking for a two time zone clock that display my time zone (pacific) and GMT. A lot of Amateur Radio operators use GMT for logging. I built this network aware clock using an Arduino Pro mini, two Sparkfun 7-segment displays, a I2C RTC, and an ENC28J60 cheap Ethernet PCB.
There is an Arduino library Ethercard for the ENC28J60 with built-in API’s for DHCP, DNS, and NTP. The clock goes fetches the current time from an NIST NTP server, and updates the RTC every hour (perhaps too frequent). The display time is always derived from the RTC. With a backup battery in the RTC, this thing can go for days or weeks without a NTP update.
The ENC28J60 draws about 180ma. In total, the units draws about 200ma current.
The Sparkfun 7-Segment displays are based on ATMEGA328’s. This design could be simplified using one of those instead of the Arduino Pro Mini.