diff options
author | Gary E. Miller <gem@rellim.com> | 2019-02-06 15:57:00 -0800 |
---|---|---|
committer | Gary E. Miller <gem@rellim.com> | 2019-02-06 15:57:00 -0800 |
commit | cbaf00a6f6d290ddc8527cdfe4490a4284da2bf0 (patch) | |
tree | 35ee852decc34a17d9ffb71f47fbc110e791ecb4 | |
parent | 38d60082cd697eb17aea9f5b8596aa0cc95b65d3 (diff) | |
download | gpsd-cbaf00a6f6d290ddc8527cdfe4490a4284da2bf0.tar.gz |
driver_ubx: UBX-NAV-SOL uses new status values.
-rw-r--r-- | driver_ubx.c | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/driver_ubx.c b/driver_ubx.c index 70780560..41f681a4 100644 --- a/driver_ubx.c +++ b/driver_ubx.c @@ -362,24 +362,37 @@ ubx_msg_nav_sol(struct gps_device_t *session, unsigned char *buf, case UBX_MODE_TMONLY: /* Surveyed-in, better not have moved */ session->newdata.mode = MODE_3D; + session->gpsdata.status = STATUS_TIME; mask |= GOODTIME_IS; break; case UBX_MODE_3D: session->newdata.mode = MODE_3D; + session->gpsdata.status = STATUS_FIX; + mask |= GOODTIME_IS; break; case UBX_MODE_2D: + session->newdata.mode = MODE_2D; + session->gpsdata.status = STATUS_FIX; + mask |= GOODTIME_IS; + break; case UBX_MODE_DR: /* consider this too as 2D */ - case UBX_MODE_GPSDR: /* FIX-ME: DR-aided GPS may be valid 3D */ session->newdata.mode = MODE_2D; + session->gpsdata.status = STATUS_DR; + mask |= GOODTIME_IS; + break; + case UBX_MODE_GPSDR: /* DR-aided GPS is valid 3D */ + session->newdata.mode = MODE_3D; + session->gpsdata.status = STATUS_GNSSDR; + mask |= GOODTIME_IS; break; default: session->newdata.mode = MODE_NO_FIX; + session->gpsdata.status = STATUS_NO_FIX; + break; } if ((flags & UBX_SOL_FLAG_DGPS) != 0) session->gpsdata.status = STATUS_DGPS_FIX; - else if (session->newdata.mode != MODE_NO_FIX) - session->gpsdata.status = STATUS_FIX; mask |= MODE_SET | STATUS_SET; gpsd_log(&session->context->errout, LOG_DATA, |