[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [gpsd-dev] [PATCH] Fix on NMEA driver 2D mode
From: |
Eric S. Raymond |
Subject: |
Re: [gpsd-dev] [PATCH] Fix on NMEA driver 2D mode |
Date: |
Wed, 21 Mar 2012 18:12:32 -0400 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
José Miguel Gonçalves <address@hidden>:
> While working with a Septentrio PolarRx2 receiver, I've noticed that
> I never got 2D fixes with xgps, while the Septentrio proprietary
> software told me that it had a fix. I've tracked down the bug to the
> GGA processing in the NMEA driver.
If you re-patch yours so the test (session->newdata.mode != MODE_2D)
is replaced by (session->newdata.mode > MODE_2D), do you still get fixes?
> Best regards,
> José Gonçalves
>
> diff --git a/driver_nmea.c b/driver_nmea.c
> index 8eb5c1f..e1626f3 100644
> --- a/driver_nmea.c
> +++ b/driver_nmea.c
> @@ -364,12 +364,11 @@ static gps_mask_t processGPGGA(int c UNUSED, char
> *field[],
> /*
> * SiRF chipsets up to version 2.2 report a null altitude field.
> * See <http://www.sirf.com/Downloads/Technical/apnt0033.pdf>.
> - * If we see this, force mode to 2D at most.
> + * If we see this, force mode to 2D.
> */
> if (altitude[0] == '\0') {
> - if (session->newdata.mode == MODE_3D) {
> - session->newdata.mode =
> - session->gpsdata.status ? MODE_2D : MODE_NO_FIX;
> + if (session->newdata.mode != MODE_2D) {
> + session->newdata.mode = MODE_2D;
> mask |= MODE_SET;
> }
> } else {
>
I'd like to have a test logfile for this receiver. Can you supply one?
--
<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>