diff options
author | Gary E. Miller <gem@rellim.com> | 2019-01-15 13:41:45 -0800 |
---|---|---|
committer | Gary E. Miller <gem@rellim.com> | 2019-01-15 13:41:45 -0800 |
commit | 3a95922bf764df8e1578859808a64075bc44333e (patch) | |
tree | 4c0283ad703275ca4ca025fcbdfe10979e9e51c0 /driver_sirf.c | |
parent | 6b8b2c92dfbdbe791123f3197d4ceec3b0f57a4f (diff) | |
download | gpsd-3a95922bf764df8e1578859808a64075bc44333e.tar.gz |
driver_sirf: Do not report empty sats in the skyview.
For some reason SiRFstar reports every possible sat slot, even
when it has no data. Ignore the content free slots.
Diffstat (limited to 'driver_sirf.c')
-rw-r--r-- | driver_sirf.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/driver_sirf.c b/driver_sirf.c index b9f9f87a..74c91152 100644 --- a/driver_sirf.c +++ b/driver_sirf.c @@ -921,6 +921,10 @@ static gps_mask_t sirf_msg_67_16(struct gps_device_t *session, avg_cno = getbeu16(buf, offset + 6); ss = avg_cno / 10.0; status = getbeu32(buf, offset + 8); + if ((0 == avg_cno) && (0 == elevation) && (0 == azimuth)) { + /* null data, skip it */ + continue; + } session->gpsdata.skyview[st].PRN = PRN; session->gpsdata.skyview[st].svid = svId; |