gpsd-users
[Top][All Lists]
Advanced

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

Re: PPS fix determination vs. cgps?


From: Gary E. Miller
Subject: Re: PPS fix determination vs. cgps?
Date: Fri, 22 Jan 2021 09:56:42 -0800

Yo Steve!

On Fri, 22 Jan 2021 11:04:01 -0600
Steve Bourland <sbourland@swri.org> wrote:

> > Looks like you are sending GPRMC, GPGSA and GPGSV every cycle.  That
> > is not normal.  The Garmin, and most other receivers, do not compute
> > GSV every fix, so sending it every fix is a waste.  Maybe that is
> > confusing the cycle ender.
> >
> > BTW, what is your serial port speed?  
> 
> 4800 baud....happy to see if I can speed that up if the Garmin will
> do it...but feel like years ago I looked into it and in NMEA mode,
> 4800 is the max output speed?  Will investigate.

The Garmin 18 will do up to 19,200.  The 5Hz will got to 38,400.

4,800 is marginal, especially when sky view is output every second.

gpsctl can change the speed for you, but it is a bit finicky.

> > Can you reset your device to gpsd normal NMEA sentences and see if
> > that changes anything?  At least try GSV every 5 fixes, not every
> > one.  
> 
> Reading through the Garmin docs to see how to manage this....assuming
> I'll need to do something along the lines of:

TRy reading the gosd doc: man gpsctl

The command is "gpsctl -n", also a bit finicky.

> # cat command.dos > /dev/ttyS0
> 
> Where command.dos is just a simple text file with the appropriate
> ASCII magic in it from the docs.....terminated with <CR><LF> (hence
> the .dos suffix)?

Sadly, Garmin controls are not ASCII.  Which is why gpsctl.


> Can I use gpsctl to send commands to the unit
> (checking the man page...looks like '-x' might be my friend there),
> or will it struggle since it is using the "NMEA0183" driver?

You can use -x, with effort.  force the driver with -t.  Odd that the
device was not detected as a Garmin.

> Also....do these lines worry you as they worry me?
> gpsd:PROG: => Probing for Garmin NMEA
> gpsd:IO: SER: => GPS: $PGRMCE*0E\x0d\x0a
> gpsd:IO: <= GPS: $GPGSA,A,3,01,26,,31,32,,,,,,,,1.9,1.7,0.9*33^M
> gpsd:PROG: NMEA0183: xxGSA sets mode 3
> gpsd:DATA: NMEA0183: xxGSA: clear sats_used

Looks normal.

> My reading of those indicate to me that gpsd tried to send 
> $PGRMCE*0E\x0d\x0a to the unit, which according to the docs should
> result in a response with the values for PGRMC currently being
> used....but I don't see that reply in the log :(

Dunno, it does not happen immediately, so would not be in your frament.
But it should reply.  Too slow speed can cause messages to be dropped.

> Not sure when I will get around to this but didn't want to leave this 
> thread dangling.

We never finish anything here, just steps forward.

> > Nope.  Same thing, the mode byte.  You see it in include/gps.h as
> > gps_fix_t -> mode.  The issue here is always WHEN, not WHERE.
> > Nothing is the "same time" in gpsd.  
> 
> So the GPGSA is indicating we have a 3D fix...but not in time for the
> PPS to see it?

Maybe, maybe not.  You never know until you fix it.

> Sorry, trying to understand what's going on...

Let us know when you do, no one totally understands this.

> that
> problem indicated by the line:
> gpsd:PROG: NMEA0183: GPGSA is just after a cycle ender.

Not a problem.  Just a warning.  You will get better results when
GSA is not output every cycle.  Especially at 4,800.

> So cgps and xgps are "seeing" the GPGSA lines,

No, they have no idea of NMEA.

> but the PPS thread
> isn't getting it before the cycle ends...

Maybe, maybe not.  There are a large number of reasons that a PPS can
be rejected.  4,800 is a common one.

> and therefore doesn't know.
> we have the fix?  Am I anywhere close to understanding what we think
> is happening? Thanks,

Who knows, until we know everything is guesses (theories).

Best experiment is to speed up the serial, then try reducing skyview update
rate.

Or, spend $10 on a modern GPS.  The Garmin 18 are ancient.  Barley
functional my modern standards.

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: pgpvBifmDBv7D.pgp
Description: OpenPGP digital signature


reply via email to

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