GPS Clock v1
First GPS clock prototype.

This project was created after practical problems with DCF clock synchronization. DCF clocks can set themselves automatically, but the long-wave signal is sensitive to interference and sometimes the clock could not synchronize for several days. Constantly searching for a better place for the receiver was not the kind of standalone operation I wanted.

The original idea was again a DCF-controlled clock, but with seconds and date display. After some discussion we arrived at a more interesting solution: use a GPS receiver instead of DCF. Since I had already experimented with GPS receivers, the direction was clear.

The clock uses a COMPASS NAVIBE GB337 GPS receiver with its own battery and Bluetooth 2.0 interface. The NMEA output format is easy to parse and the receiver was able to occasionally see at least one satellite even in a basement. For a clock, one satellite is enough to obtain accurate time, even though it would not be enough for normal position calculation.

Communication between the GPS receiver and the clock was solved using a Bluetooth module from connectBlue, represented locally by Spezial Electronic. The module used here is OEMSPA310. The module is self-contained and can be connected to the GPS clock processor with only minor interface circuitry.

Processor Schematic

GPS clock processor schematic
Processor board schematic.

The whole construction is split into two parts: processor board and display board. This schematic shows the processor section.

Display Schematic

GPS clock display schematic
Display board schematic.

This schematic shows the display section.

Processor PCB and Assembly

GPS clock processor PCB
Processor board PCB.
GPS clock processor assembly plan
Processor board assembly plan.

The processor PCB is a single-sided 100x74 mm board. Assembly should be straightforward; do not forget the wire jumper under IC3.

Display PCB and Assembly

GPS clock display PCB
Display board PCB.
GPS clock display assembly plan
Display board assembly plan.

The display PCB is a single-sided 157x60 mm board. Pay attention to the wire jumpers: there are 11+6 of them. The six additional jumpers connect segment anodes and often do not need to be fitted because they are already connected inside the display. The display board pin order is mirrored relative to the processor board.

Bring-Up and Settings

The circuit does not require adjustment and works immediately after power is applied. The only value that may need tuning is the resistor value for the selected LED displays, especially R2-R9. The Bluetooth module also has to be configured so it can communicate with the GPS receiver.

Operation

The clock has a single button with two functions. A short press displays the current date in DD:MM.YY format. After about five seconds the display returns to the normal time mode.

A long press of about three seconds switches between summer and winter time. This has to be done manually. The clock remembers the last selected mode even after a power loss and restores it after power returns.

No other settings are required. The clock is synchronized automatically from GPS time. Only one satellite is needed for correct time information, so the receiver placement is not very critical. Because the GPS receiver communicates over Bluetooth, it can be placed several tens of meters away from the clock in a location with better reception.

The design is built around a PIC16F628A microcontroller. The display is driven by a 7446 decoder, or the older D146D can be used. Power is supplied through a bridge rectifier and voltage regulator, which makes the input polarity tolerant and also allows using an AC adapter. The regulator needs a small heatsink.

The Bluetooth module uses 3.3V logic, while the processor uses 5V logic. A simple transistor level converter made from Q8, Q9 and surrounding resistors was therefore added. The Bluetooth module is connected with three wires: supply +, supply - and TX data output connected to JP1.

A different GPS module with RS232 output could also be connected directly to JP1 instead of the Bluetooth module, which would reduce the overall cost.

Bluetooth Module Setup

The OEMSPA310 module has to be paired with the GPS receiver using the Basic Wizard software included with the module and also in the project documentation. During configuration the GPS receiver must be switched on so the module can find and pair with it.

The important values are the NAVIBE GB337 PIN code 0000, communication speed 38400 B/s and Flow Control set to NONE. I also enabled the option to configure the OEMSPA310 module directly over Bluetooth, which may be useful later. The first configuration must be performed over a cable.

Configuring the OEMSPA310 Bluetooth module for GPS communication.

The following video shows what the GPS receiver actually sends:

Example data sent by the GPS receiver.

Possible Faults

The clock should currently work without problems. Older firmware versions had stability problems and the clock could occasionally freeze and require a restart.

Bill of Materials

Processor Board

DesignatorQtyValue / TypeNote
R1110K
R2-R98330RAccording to the selected LED displays.
R10-R1564.7K
R16, R17282K
R18110K
R19115K
C11470uF/25V
C21100uF/10V
C31100nF
C4, C5233pF
Q1110.240MHz crystal
Q2-Q76KC308Or similar PNP.
Q8, Q92KC238Or similar NPN.
B11DB106Or another 1A bridge.
IC117805With heatsink.
IC217446NOr D146D.
IC31PIC16F628AProgrammed microcontroller.
F11200mA/F fuseIncluding PCB holder.
JP1, JP22Breakable jumper header
S1190° PCB button

Display Board

DesignatorQtyValue / TypeNote
RR1, R22100ROr according to used LEDs.
LED1-LED44Red 5mm LED
DL1-DL66BS-AA11RDOr another common-anode display.

Documentation

The documentation package contains construction files, Eagle project and firmware for the microcontroller.

Declaration

This construction is original work and may not be republished on other websites or used commercially without my permission. Linking to this website and this construction is allowed. I assume no responsibility for the behavior of the device or for any damage caused by its use. The device is intended only for personal use.

This construction uses microcontroller firmware protected by copyright. A free license is granted for personal use. Any sale is not allowed without the author's permission. Since I am not the author of this firmware, it is published here with the consent of its author Botas.