Afreet Software, Inc.
     Software created by Alex Shovkoplyas, VE3NEA

Morse Expert
for Android

Ham Cockpit

CW Skimmer

DX Atlas

RTTY Skimmer Server



CW Skimmer Server

Pileup Runner

DX Bulletin Reader

Voice Shaper

Band Master


Morse Runner



Morse Midi


Tech stuff



QRQ Profiler


SSTV Tools


ToyNtp 1.2

A simple time server for Windows 2000/XP/7



ToyNTP is a simple time server that implements the SNTP protocol and uses a GPS receiver, Garmin GPS 18x LVC, as time reference. ToyNTP was designed to be used with Faros in the locations where access to the SNTP servers on the Internet is not available, but it may be used for other purposes as well, in particular, it may be configured to keep the PC clock synchronized to a GPS receiver.

ToyNtp1.png, 33kB

Fig.1. ToyNTP, UTC time display

In addition to the UTC time, ToyNtp obtains and displays the GPS fix information (latitude/longitude, height, speed, etc.), as well as the satellite locations on the sky and their signal strength.

ToyNtp2.png, 35kB

Fig. 2. GPS fix and satellite data

Time Tracking

ToyNtp uses the PPS (pulse per second) signal from the GPS receiver to synchronize its UTC clock. According to the specifications of GPS-18x, the accuracy of the PPS signal is 1 Ás, however, there is an unknown delay between the time when the PPS line flips from low to high, and the time when Windows tells the program about this event. This delay is not constant, its variance depends on the version of Windows and the behavior of the device drivers installed on the system.

The chart on the PPS Tracking page in ToyNtp shows the difference between the actual and expected time of the PPS events. The UTC time is derived from the PPS events with a robust Kalman filter. The red line on the chart is the output of the filter, the pale blue band is the aperture of the filter: the samples outside of this band are considered outliers and discarded.

The variance of the PPS time of arrival seems to depend on the DPC latency of the system. Two screenshots below illustrate this dependency. The DPC latency, measured with DPC Latency Checker, was 6 Ás on the Pentium IV system and 160 Ás on Core i7. The samples are scattered about 20 times wider on the Core i7 chart - note that the vertical scale on that chart is different.

PpsXP.png, 18kB

Fig. 3. PPS jitter on Pentium IV / Windows XP

PpsW7.png, 37kB

Fig. 4. PPS jitter on Core i7 2600 / Windows 7 64-bit

Hardware Setup

Be sure to get the -LVC version of GPS-18x. The other two versions, -PC and -USB, do not have a PPS output line and cannot be used for time synchronization.

GPS-18x must be connected to a physical COM (RS-232) port, a USB-to-serial adapter cannot be used in this application.

Solder a DB-9 femail connector to the bare wire terminals of GPS-18x LVC as shown in Table 1.

GPS-18x requires a 5V power supply. The +5V voltage may be obtained from a USB port on the PC, as shown in the table, or from a separate power supply.

GPS-18x LVC.gif, 14kB

Fig. 5. Garmin GPS 18x LVC

YellowDB-9 pin 1
WhiteDB-9 pin 2
GreenDB-9 pin 3
Black (thin),
Black (thick)
DB-9 pin 5,
RedUSB +5V

Table 1. Connections between the GPS receiver and a DB-9 femail connector

Configuring Faros

Faros and ToyNtp may be installed either on different computers or on the same computer. In the latter case, Faros will be able to split the roundtrip time of its SNTP packets in the forward and backward trip time, as shown on the screenshot below, and its time estimate will be more accurate. The following instructions assume that both programs run on the same machine.

Open the TimeServer.lst file located in the Faros folder for editing using Notepad, and add this line at the end of the file:
Save the file, then click on View / UTC Clock Info in the Faros menu, click on the Time Servers tab, and select localhost in the list of time servers. Deselect all other servers. Click on Apply Selection, then on Close.

FarosClock.png, 32kB

Fig. 6. UTC Clock dialog in Faros

Copyright © 1998-2020 Afreet Software, Inc.




Author's e-mail