Hewlett Packard 58503A GPS Receiver


Address: 127.127.26.u
Reference ID: GPS
Driver ID: GPS-HP
Serial Port: /dev/hpgpsu; 9600 baud, 8-bits, no parity
Features: none


This driver supports the HP 58503A Time and Frequency Reference Receiver. It uses HP SmartClock (TM) to implement an Enhanced GPS receiver. The receiver accuracy when locked to GPS in normal operation is better than 1 usec. The accuracy when operating in holdover is typically better than 10 us per day. It receiver should be operated with factory default settings. Initial driver operation: expects the receiver to be already locked to GPS, configured and able to output timecode format 2 messages.

The driver uses the poll sequence :PTIME:TCODE? to get a response from the receiver. The receiver responds with a timecode string of ASCII printing characters, followed by a <cr><lf>, followed by a prompt string issued by the receiver, in the following format: T#yyyymmddhhmmssMFLRVcc<cr><lf>

The driver processes the response at the <cr> and <lf><cr> and <lf>, so what the driver sees is the prompt from the previous poll, followed by this timecode. The prompt from the current poll is (usually) left unread until the next poll. So (except on the very first poll) the driver sees this: T#yyyymmddhhmmssMFLRVcc<cr><lf>

The T is the on-time character, at 980 msec. before the next 1PPS edge. The # is the timecode format type. We look for format 2. Without any of the CLK or PPS stuff, then, the receiver buffer timestamp at the <cr>y is 24 characters later, which is about 25 msec. at 9600 bps, so the first approximation for fudge time1 is nominally -0.955 seconds. This number probably needs adjusting for each machine / OS type, so far: -0.955000 on an HP 9000 Model 712/80 HP-UX 9.05 -0.953175 on an HP 9000 Model 370 HP-UX 9.10

This receiver also provides a 1-PPS signal, but I haven't figured out how to deal with any of the CLK or PPS stuff yet. Stay tuned.

Monitor Data

When enabled by the flag4 fudge flag, every received timecode is written as-is to the clockstats file.

Fudge Factors

time1 time
Specifies the time offset calibration factor, in seconds and fraction, with default 0.0.

time2 time
Not used by this driver.

stratum number
Specifies the driver stratum, in decimal from 0 to 15, with default 0.

refid string
Specifies the driver reference identifier, an ASCII string from one to four characters, with default GPS.

flag1 0 | 1
Not used by this driver.

flag2 0 | 1
Not used by this driver.

flag3 0 | 1
Enable ppsclock line discipline/streams module if set.

flag4 0 | 1
Enable clockstats recording if set.

David L. Mills (mills@udel.edu)