summaryrefslogtreecommitdiff
path: root/driver_sirf.c
diff options
context:
space:
mode:
authorGary E. Miller <gem@rellim.com>2019-01-15 13:41:45 -0800
committerGary E. Miller <gem@rellim.com>2019-01-15 13:41:45 -0800
commit3a95922bf764df8e1578859808a64075bc44333e (patch)
tree4c0283ad703275ca4ca025fcbdfe10979e9e51c0 /driver_sirf.c
parent6b8b2c92dfbdbe791123f3197d4ceec3b0f57a4f (diff)
downloadgpsd-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.c4
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;