summaryrefslogtreecommitdiff
path: root/driver_italk.c
diff options
context:
space:
mode:
authorGary E. Miller <gem@rellim.com>2019-03-26 14:55:47 -0700
committerGary E. Miller <gem@rellim.com>2019-03-26 14:55:47 -0700
commitd664929ab4f527a0bda7fbf263d0337d7fffc743 (patch)
treefe88cba9a295b5396db9591b946522f19b750ac7 /driver_italk.c
parentdc6db8d88e7d416c292a038562f76875dd3fbe1c (diff)
downloadgpsd-d664929ab4f527a0bda7fbf263d0337d7fffc743.tar.gz
driver_italk: remove dodgy epx/epy/eph. Use gpsd_error_model().
Oddly, no regressions changed...
Diffstat (limited to 'driver_italk.c')
-rw-r--r--driver_italk.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/driver_italk.c b/driver_italk.c
index 0f69d077..f15363e2 100644
--- a/driver_italk.c
+++ b/driver_italk.c
@@ -32,11 +32,11 @@ static gps_mask_t decode_itk_utcionomodel(struct gps_device_t *,
static gps_mask_t decode_itk_subframe(struct gps_device_t *, unsigned char *,
size_t);
+/* NAVIGATION_MSG, message id 7 */
static gps_mask_t decode_itk_navfix(struct gps_device_t *session,
unsigned char *buf, size_t len)
{
unsigned short flags, pflags;
- double eph;
gps_mask_t mask = 0;
if (len != 296) {
@@ -76,10 +76,12 @@ static gps_mask_t decode_itk_navfix(struct gps_device_t *session,
session->newdata.ecef.vy, session->newdata.ecef.vz);
mask |= LATLON_SET | ALTITUDE_SET | SPEED_SET | TRACK_SET | CLIMB_SET
| ECEF_SET | VECEF_SET;
- eph = (double)(getles32(buf, 7 + 252) / 100.0);
- /* eph is a circular error, sqrt(epx**2 + epy**2) */
- session->newdata.epx = session->newdata.epy = eph / sqrt(2);
+ /* this eph does not look right, badly documented.
+ * let gpsd_error_model() handle it
+ * session->newdata.eph = (double)(getles32(buf, 7 + 252) / 100.0);
+ */
session->newdata.eps = (double)(getles32(buf, 7 + 254) / 100.0);
+ /* compute epx/epy in gpsd_error_model(), not here */
#define MAX(a,b) (((a) > (b)) ? (a) : (b))
session->gpsdata.satellites_used =