[ntp:questions] How to debug GPS PPS?

David Lord snews at lordynet.org
Wed Dec 30 22:18:15 UTC 2009


xyz-2041 wrote:
> On Dec 28, 7:59 am, Thomas Laus <lau... at acm.org> wrote:
>> On 2009-12-28, xyz-2041 <xyz2... at gmail.com> wrote:
>>
>>> Plugged in the GPS unit's serial cable into a Windows
>>> computer running WinOncore12 v1.0 (Build 37):
>>>  http://www.google.com/#q=WinOncore12Installation.exe
>>> Seemed to work without any problems.  Generated
>>> all sort of graphs and charts.  Let it run and it
>>> told me exact latitude, longitude and height above
>>> sea level.
>>> Used an analog volt meter and from pin 5 (supposed
>>> to be ground), I only noticed voltage on pins 2 and 3.
>>> Pin 2 was going erratically negative once a second.
>>> I believe that this must be received data as per
>>> standards.  Pin 3 was +5 volts, but dropping to
>>> -5 volts once per second.
>> You did not mention how your Oncore receiver was being interfaced to
>> your computer or it's model number.  
> 
> GT+.  Serial port.
> 
> 
>> I use one of the TAPR boards and
>> Oncore UT+ combination.  The NTP refclock driver for the Oncore includes
>> the code for receiving the PPS signal on the computer DCD pin.
> 
> It doesn't need pulse stretching?

I'm not familiar with the oncore but you mentioned checking
levels on serial pins but didn't state what you found on pin 1.
Can you check this for the pps signal?

Try a large setting for mindist.

tos mindist 0.05

Also remove any minpoll/maxpoll from your server line or set
to minpoll 6.


David

> 
> 
>>> I've changed my configs a bit, /var/log/ntp.log and
>>> /var/log/ntpd.log don't show any errors.
>>> However, "ntpq -c pe" still doesn't show any response:
>>>  GPS_NMEA(0)     .GPS.            0 l    -   16    0    0.000
>>> 0.000   0.001
>>>  PPS(0)          .GPS.            0 l    -   16    0    0.000
>>> 0.000   0.001
>>>  GPS_ONCORE(0)   .GPS-.           0 l    -   16    0    0.000
>>> 0.000   0.001
>> You should not be using GPS_NMEA or PPS.  
> 
> OK.  Turned both of those off.
> 
> 
>> The type 30 refclock
>> communicates with the receiver using Motorola Binary protocol.  You may
>> need to use WinOncore to set your receiver communications to use the
>> binary protocol or even better, reset the receiver to factory defaults.
> 
> OK.  Used WinOncore to default.  Made sure that it was
> set to Motorola/binary.  Power cycled.  Hooked back
> up to FreeBSD server.  This is what was produced--for
> a while:
> 
>      remote           refid      st t when poll reach   delay
> offset  jitter
> ======================================================
>  GPS_ONCORE(0)   .GPS.            0 l   99   16   40    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l  200   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l  418   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l  636   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l  938   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l 1167   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l 1226   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l 1352   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l 2028   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l  61m   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l  67m   16    0    0.000
> 192.362   0.002
> 
>  GPS_ONCORE(0)   .GPS.            0 l 176m   16    0    0.000
> 192.362   0.002
> 
> Re-defaulted.  Now back to this:
> 
>  GPS_ONCORE(0)   .GPS.            0 l    -   16    0    0.000
> 0.000   0.002
> 
> 
>> Your config files already have your position defined, so there is no
>> need to have anything in your receiver at startup.  The almanac will be
>> received while NTP is settling down after startup.  You will need to
>> configure at least 4 other NTP servers to speed up the initial startup.
> 
> Got those.
> 
> 
>> The refclock code wants to have a synchronized NTP server before adding
>> itself to the peer selection.  I find about 30 minutes after a cold
>> start my PPS LED will start to flash and I observe that my Oncore gets
>> selected.
> 
> PPS LED was flashing, but NTP never synchronized.
> 
> 
>>> - Create symbolic links:
>>>     ln -s  /dev/cuad0  /dev/oncore.pps.0
>>>     ln -s  /dev/cuad0  /dev/oncore.serial.0
>>>     ln -s  /dev/cuad0  /dev/gps0
>>>     ln -s  /dev/cuad0  /dev/pps0d
>>> - Create /etc/devfs.conf links:
>>>     link cuad0 pps0
>>>     link cuad0 gps0
>>>     link cuad0 oncore.pps.0
>>>     link cuad0 oncore.serial.0
>> I think that you will find that the symbolic links in /dev are not required and
>> only the /etc/devfs.conf entries are all you will need.  You won't need
>> either pps0 or gps0 entries for anything.  Only the oncore* stuff is
>> needed for the refclock type 30.
> 
> OK.
> 
> Well, this just doesn't seem to be working.  Does anyone have other
> suggestions on how to get this GT+ working?
> 
> If not, does anyone have some other suggestions?  Would I be able
> to use this Motorola antenna with another GPS unit?  Other low-cost
> ways of getting GPS accuracy on this FreeBSD/NTP box?
> 




More information about the questions mailing list