driver_hpgps.adoc 4.49 KB
Newer Older
James Browning's avatar
James Browning committed
1
= Hewlett Packard GPS Receivers -  HP 58503A and HP Z3801A
2
include::html.include[]
3

James Browning's avatar
James Browning committed
4
== Synopsis
5

6
["verse",subs="normal"]
7
Name: hpgps
8 9
Reference ID: GPS
Driver ID: GPS_HP
10
Serial Port: /dev/hpgps__u__; 9600bps 8N1, 19200bps 7N2 for the HP Z3801A
11

James Browning's avatar
James Browning committed
12
== Warning
13 14

As of September 2017 we have reports that the internal clock on a
15
Z3801A was observed to roll over to 1998 (see
16
link:rollover.html[Rollover issues in time sources]). Users should
17
audit for rollover before deploying any of these devices.
18

James Browning's avatar
James Browning committed
19
== Description
20 21

This driver supports the HP 58503A Time and Frequency Reference Receiver
22
and HP Z3801A GPS Receiver. It will probably work with other Z38xx models.
23
Two-unit pairs of these are sometimes known as a KS-24361. All of
24
these product are well past end-of-life.
25 26 27 28

These receivers are very old designs, dating from around 1990, so
their GPS receiver stages are not very sensitive by modern
standards. On the other hand, lots of them are available cheap,
29
because they used to be standard kit on cell towers and were surplussed
30 31 32 33
off in the thousands.

They use HP SmartClock (TM) to implement an Enhanced GPS receiver. The
receiver accuracy when locked to GPS in normal operation is better
34 35
than 1 µs. The accuracy when operating in holdover is typically
better than 10 µs per day. The receiver should be operated with
36 37 38
factory default settings. Initial driver operation: expects the
receiver to be already locked to GPS, configured and able to output
timecode format 2 messages.
39

40
The driver uses the poll sequence +:PTIME:TCODE?+ to get a response from
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
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>scpi >
-------------------------------------

The driver processes the response at the <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:

-------------------------------------
scpi >T#yyyymmddhhmmssMFLRVcc<cr><lf>
-------------------------------------

59
The T is the on-time character, at 980 ms before the next 1PPS edge.
60 61
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> is
62 63 64 65
24 characters later, which is about 25 ms. at 9600 bps, so the first
approximation for the +time1+ option is nominally -0.955 s. This number
probably needs adjusting for each machine / OS type, so far: -0.955000 s
on an HP 9000 Model 712/80 HP-UX 9.05 -0.953175 s on an HP 9000 Model 370
66 67 68
HP-UX 9.10

This driver will probably work with the 58503B and 59551A if they are
69
set up appropriately.
70

71
To use an HP Z3801A, specify +subtype 1+ on the server config line to setup
72
the right line parameters.
73

74 75
The timekeeping portion of HP's business was sold to Symmetricom; Symmetricom
was later acquired by https://www.microsemi.com/[Microsemi].
76

James Browning's avatar
James Browning committed
77
== Rollover compensation
78 79 80

Some devices in this product line have a front-panel display of
date-time and controls to manipulate it.  On these, it is possible to
81
reset the device's hidden base date for your current era. Consult
82 83
your documentation for details.

James Browning's avatar
James Browning committed
84
== Driver Options
85

86 87
+unit+ 'number'::
  The driver unit number, defaulting to 0. Used as a distinguishing
88
  suffix in the driver device name.
89
+time1+ 'time'::
90 91
   Specifies the time offset calibration factor, in seconds and fraction,
   with default 0.0.
92
+time2+ 'time'::
93
   Not used by this driver.
94
+stratum+ 'number'::
95
   Specifies the driver stratum, in decimal from 0 to 15, with default 0.
96
+refid+ 'string'::
97
   Specifies the driver reference identifier, an ASCII string from one to
98 99
   four characters, with default +GPS+.
+flag1 {0 | 1}+::
100
   Not used by this driver.
101
+flag2 {0 | 1}+::
102
   Not used by this driver.
103
+flag3 {0 | 1}+::
104
   Not used by this driver.
105
+flag4 {0 | 1}+::
106
   Not used by this driver.
107
+subtype+::
108
   Setting mode 1 configures for the HP Z3801A.
109 110
+mode+::
  Synonym for subtype, retained for backward compatibility.
111 112 113
+path+ 'filename'::
  Overrides the default device path.
+ppspath+ 'filename'::
114
  Not used by this driver.
115 116
+baud+ 'number'::
  Overrides the default baud rate.
117

James Browning's avatar
James Browning committed
118
== Configuration Example
119 120

----------------------------------------------------------------------------
121
refclock hpgps
122 123
----------------------------------------------------------------------------

124 125
'''''

126
include::includes/footer.adoc[]