[ntp:questions] Why do the nmea and pps drivers differ regarding the default for flag2?
Dave Hart
hart at ntp.org
Wed Nov 9 03:33:07 UTC 2011
On Wed, Oct 26, 2011 at 09:32, Dave Hart <hart at ntp.org> wrote:
> On Wed, Oct 26, 2011 at 04:07, Doug Calvert
> <dfc-list at douglasfcalvert.net> wrote:
>> Hello,
>>
>> Why do the nmea and pps drivers differ regarding the default for flag2? How
>> would a user know which is appropriate?
>>
>>> PPS(22):
>>> flag2 0 | 1
>>> Specifies PPS capture on the rising (assert) pulse edge if 0; falling
>>> (clear)
>>> edge if 1. (default), 1 for clear.
>>
>>> NMEA(20):
>>> flag2 0 | 1
>>> If PPS signal processing is enabled, capture the pulse on the rising edge
>>> if 0
>>> (default); capture on the falling edge if 1.
>
> This appears to be a documentation error in driver22.html -- from
> looking at the code, it appears to me both drivers default to flag2 0.
> This is just speculation, but it may be an older implementation of
> the PPS driver defaulted to using the clear edge, or that may have
> been a documented intention never realized in code.
>
> As to knowing which one is appropriate, it depends on the polarity of
> your PPS signal. With the GPS 18x LVC's PPS output wired to the DCD
> pin, capturing the assert edge is correct in my experience. The pulse
> defaults to 100 msec long, so if the wrong edge were selected, the 100
> msec error would be relatively obvious. Also note the GPS 18x LVC,
> like some other inexpensive GPS sensors provides nonstandard RS-232
> signalling. Standard 232 uses +/- 12V signals, which supports long
> cables. The 18x LVC's 232 output is so-called TTL-level 232, using 0V
> and 3-5V rather than -/+ 12V respectively. If you're a stickler for
> standards, or find your system's serial port is, you might use a
> "gadget box" to convert from TTL to proper 232 voltages. If that
> gadget box inverts the DCD signal in the process, it's handy to be
> able to select the "clear" edge as the on-time event.
To follow up, this was a documentation error, the default for the PPS
driver's flag2 was in fact 0, and the documentation has been
corrected, as this excerpt of
http://www.eecis.udel.edu/~mills/ntp/html/drivers/driver22.html shows:
flag2 0 | 1
Specifies PPS capture on the rising (assert) pulse edge if 0 (default)
or falling (clear) pulse edge if 1.
ntp-dev also has this updated html/drivers/driver22.html. Thanks for
raising the issue.
Cheers,
Dave Hart
More information about the questions
mailing list