gpsd-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Build Errors with Timeservice + Ubuntu 16.04


From: Gary E. Miller
Subject: Re: Build Errors with Timeservice + Ubuntu 16.04
Date: Thu, 4 Jun 2020 13:18:20 -0700

Yo Dan!

On Thu, 4 Jun 2020 15:49:58 -0400
Dan Williams <dwilliams@nextdroid.com> wrote:

> I've adjusted the build parameters as you suggested; results are
> below.
> 
> (I won't comment on the documentation, until I understand more)

What you think you should have been told by the doc, but have not found,
is also important.

> > Why are you building detached HEAD?  If you are pulling git, then
> > use all the bug fixes in git HEAD.  Especially if you use a u-blox
> > 9-series.  
> 
> Both branches have the same result -- but to answer your question: I
> built off the release, because releases are often more stable than
> nightlies. I've checked out 'master', and will build off that, from
> now on.

gpsd git HEAD is pretty stable.  We use CI so wh know it builds on most
of our supported chares, and only commit atter regression tests work.

Bonus, bugs you find can be fixed quickly for you.

> > What is your receiver?  
> 
> An OxTS RT-3000.
> https://www.oxts.com/products/rt3000/

That will be a big problem.  The doc rquires a login and the protocol
is not supported by gpsd.

> It's relatively high-end, but I'm not able to figure out what chip it
> uses. We have it configured to send:
> - GPGGA @ 10hz
> - GPRMC @ 1hz
> - GPZDA @ 10hz
> - GPGSA @ 1hz

When GNSS receivers send high speed data it is often just averaged data.

Since that device is not publicly documented, there will be issues
hiding here.

Your gpspipe.log was not long enough to show any GSA.

Why buy a high end receiver and then only output low end data?

> It sounds like you're saying that PPS should be enabled with a plain
> scons build, yes?

It is enabled by default, IFF your system supports it.  This is documented
in the build instructions.

> And that plain build, will be sending PPS signals?

gpsd does not send PPS signals, it receives them, if possible and
configured to do so.  And when you run as root.

> That is the intended behavior?

Some parts of gpsd seem to defy expections, so intention hard to prove.

> Do I understand that correctly?

Dunno, seems not yet.

> Okay, Second Try:
> 
> 1) Build

You forgot the VERY important and documented cleaning step:
  $ scons -c

> > $ scons && scons check  
>      - note:  I get the same results when I add "--config=force
> ntpshm=yes pps=yes")
>      - this DOES pass the checks, but doesn't send any PPS messages.

Why would scons check, or any scons command,  send PPS?  Building is not
running.

> 2) gpsd Invocation
> > $ stty -F /dev/ttyS6 115200 && ./gpsd -bn /dev/ttyS6  

Whoops!  You forgot to run as root.  This is documented and required to
do PPS and SHM things.  Big show stopping mistake.

With new code you could, as root, just do: gpsd -bns 115002 /dev/ttyS6

>     - you may notice that I'm just running it from the build
> directory, for now.

Fine, common.  But you forgot to run as root.

> 3) pstree output
> > root@gt104:/opt/gpsd# pstree -paul | grep gpsd
> >  |-gpsd,9616,dwilliams -bn /dev/ttyS6
> >  |   `-{gpsd},9619
> >  |   |                       |-grep,9696 --color=auto gpsd  

Good, not systemd in the middle of things here.

> 
> 4) netstat
> > root@gt104:/opt/gpsd# netstat -apn | fgrep 2947
> > tcp        0      0 127.0.0.1:2947          0.0.0.0:*  
> LISTEN      9616/gpsd
> > tcp6       0      0 ::1:2947                :::*  
>  LISTEN      9616/gpsd

Ditto.

> Which we know, because cgps and gpsmon, etc show output.

Nope.  But I'll spare you the tedium of the failure modes you avoided.

> 5) gpspipe output
> (attached in 'gpspipe.log')
> - includes both input-nmea and output-json

No GSA, otherwise pretty minimal.  Such a waste.

> - Note the missing PPS json messages.

Many, many reasons for this.  The first thing to do is to run gpsd for
a short while with logging and see why gpsd did not see any PPS.  Given
your unique configuration not a surprise.

Do this, as root, let it run one minute, then send the output:

# gpsd -bns 115200 -D 6 /dev/ttyS0  |& fgrep PPS > pps.log

RGDS
GARY
---------------------------------------------------------------------------
Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97703
        gem@rellim.com  Tel:+1 541 382 8588

            Veritas liberabit vos. -- Quid est veritas?
    "If you can't measure it, you can't improve it." - Lord Kelvin

Attachment: pgpUe2g4Y3cf0.pgp
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]