driver4.htm   [plain text]


<HTML><HEAD><TITLE>
Spectracom 8170 and Netclock/2 WWVB Receivers
</TITLE></HEAD><BODY><H3>
Spectracom 8170 and Netclock/2 WWVB Receivers
</H3><HR>

<H4>Synopsis</H4>

Address: 127.127.4.<I>u</I>
<BR>Reference ID: <TT>WWVB</TT>
<BR>Driver ID: <TT>WWVB_SPEC</TT>
<BR>Serial Port: <TT>/dev/wwvb<I>u</I></TT>; 9600 baud, 8-bits, no
parity
<BR>Features: <TT>tty_clk</TT>

<H4>Description</H4>

This driver supports all known Spectracom radio and satellite clocks,
including the Model 8170 and Netclock/2 WWVB Synchronized Clocks and the
Netclock/GPS GPS Master Clock. The claimed accuracy of the WWVB clocks
is 100 usec relative to the broadcast signal. These clocks have proven a
reliable source of time, except in some parts of the country with high
levels of conducted RF interference. WIth the GPS clock the claimed
accuracy is 130 ns. However, in most cases the actual accuracy is
limited by the precision of the timecode and the latencies of the serial
interface and operating system.

<P>The DIPswitches on these clocks should be set to 24-hour display,
AUTO DST off, data format 0 or 2 (see below) and baud rate 9600. If this
clock is used as the source for the IRIG Audio Decoder
(<tt>refclock_irig.c</tt> in this distribution), set the DIPswitches for
AM IRIG output and IRIG format 1 (IRIG B with signature control).

<P>There are two timecode formats used by these clocks. Format 0, which
is available with all clocks, and format 2, which is available with all
clocks except the original (unmodified) Model 8170.

<P>Format 0 (22 ASCII printing characters):
<br>&lt;cr&gt;&lt;lf&gt;i ddd hh:mm:ss TZ=zz&lt;cr&gt;&lt;lf&gt;

<p>on-time = first &lt;cr&gt;
<br>i = synchronization flag (' ' = in synch, '?' = out synch)
<br>hh:mm:ss = hours, minutes, seconds</PRE>

<p>The alarm condition is indicated by other than ' ' at <TT>i</TT>,
which occurs during initial synchronization and when received signal is
lost for about ten hours.

<P>Format 2 (24 ASCII printing characters):
<br>lt;cr&gt;lf&gt;iqyy ddd hh:mm:ss.fff ld

<p>on-time = &lt;cr>
<br>i = synchronization flag (' ' = in synch, '?' = out synch)
<br>q = quality indicator (' ' = locked, 'A'...'D' = unlocked)
<br>yy = year (as broadcast)
<br>ddd = day of year
<br>hh:mm:ss.fff = hours, minutes, seconds, milliseconds</PRE>

<p>The alarm condition is indicated by other than ' ' at <TT>i</TT>,
which occurs during initial synchronization and when received signal is
lost for about ten hours. The unlock condition is indicated by other
than ' ' at <TT>q</TT>.

<P>The <TT>q</TT> is normally ' ' when the time error is less than 1 ms
and a character in the set <TT>A...D</TT> when the time error is less
than 10, 100, 500 and greater than 500 ms respectively. The <TT>l</TT>
is normally ' ', but is set to <TT>L</TT> early in the month of an
upcoming UTC leap second and reset to ' ' on the first day of the
following month. The <TT>d</TT> is set to <TT>S</TT> for standard time
<TT>S</TT>, <TT>I</TT> on the day preceding a switch to daylight time,
<TT>D</TT> for daylight time and <TT>O</TT> on the day preceding a
switch to standard time. The start bit of the first
&lt;cr&gt; is synchronized to the indicated time as returned.

<P>This driver does not need to be told which format is in use - it
figures out which one from the length of the message. A three-stage
median filter is used to reduce jitter and provide a dispersion measure.
The driver makes no attempt to correct for the intrinsic jitter of the
radio itself, which is a known problem with the older radios.

<H4>Monitor Data</H4>

The driver writes each timecode as received to the <TT>clockstats</TT>
file. When enabled by the <TT>flag4</TT> fudge flag, a table of quality
data maintained internally by the Netclock/2 is retrieved and written to
the <TT>clockstats</TT> file when the first timecode message of a new
dayis received.

<H4>Fudge Factors</H4>

<DL>

<DT><TT>time1 <I>time</I></TT></DT>
<DD>Specifies the time offset calibration factor, in seconds and
fraction,
with default 0.0.</DD>

<DT><TT>time2 <I>time</I></TT></DT>
<DD>Not used by this driver.</DD>

<DT><TT>stratum <I>number</I></TT></DT>
<DD>Specifies the driver stratum, in decimal from 0 to 15, with default
0.</DD>

<DT><TT>refid <I>string</I></TT></DT>
<DD>Specifies the driver reference identifier, an ASCII string from one
to four characters, with default <TT>WWVB</TT>.</DD>

<DT><TT>flag1 0 | 1</TT></DT>
<DD>Not used by this driver.</DD>

<DT><TT>flag2 0 | 1</TT></DT>
<DD>Not used by this driver.</DD>

<DT><TT>flag3 0 | 1</TT></DT>
<DD>Not used by this driver.</DD>

<DT><TT>flag4 0 | 1</TT></DT>
<DD>Enable verbose <TT>clockstats</TT> recording if set.</DD>

</DL>

Additional Information

<P><A HREF="refclock.htm">Reference Clock Drivers</A>
<HR><ADDRESS>David L. Mills (mills@udel.edu)</ADDRESS></BODY></HTML>