From ab59cbb7b64909090d64866ebdf43fd27f584c5d Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Wed, 21 Jan 2015 18:23:46 -0500 Subject: Coverity/splint cleanup. Turned up a bug in where a counter was incremented un the Navcom driver; this required one test rebuild. --- driver_navcom.c | 4 +-- driver_oncore.c | 2 +- driver_sirf.c | 6 ++++ driver_zodiac.c | 3 ++ gps2udp.c | 2 +- gpsmon.c | 3 +- test/daemon/navcom.log.chk | 86 +++++++++++++++++++++++----------------------- 7 files changed, 58 insertions(+), 48 deletions(-) diff --git a/driver_navcom.c b/driver_navcom.c index 55f0a323..57566d7f 100644 --- a/driver_navcom.c +++ b/driver_navcom.c @@ -793,9 +793,9 @@ static gps_mask_t handle_0x86(struct gps_device_t *session) session->gpsdata.skyview[i].elevation = (short)ele; session->gpsdata.skyview[i].azimuth = (short)azm; /*@ ignore @*//* splint is confused */ - s = session->gpsdata.skyview[i++].ss = (p2_snr ? p2_snr : ca_snr) / 4.0; + s = session->gpsdata.skyview[i].ss = (p2_snr ? p2_snr : ca_snr) / 4.0; /*@ end @*/ - session->gpsdata.skyview[i].used = (stat == 0xff); + session->gpsdata.skyview[i++].used = (stat == 0xff); if (stat == 0xff) nsu++; } diff --git a/driver_oncore.c b/driver_oncore.c index 36c26de3..8cea6e7c 100644 --- a/driver_oncore.c +++ b/driver_oncore.c @@ -109,7 +109,7 @@ oncore_msg_navsol(struct gps_device_t *session, unsigned char *buf, unpacked_date.tm_sec = (int)getub(buf, 10); unpacked_date.tm_isdst = 0; #ifdef S_SPLINT_S - unpacked_date. tm_wday = unpacked_date. tm_yday = 0; + unpacked_date.tm_wday = unpacked_date.tm_yday = 0; #endif /* S_SPLINT_S */ nsec = (uint) getbeu32(buf, 11); diff --git a/driver_sirf.c b/driver_sirf.c index 746ac661..9ec40e82 100644 --- a/driver_sirf.c +++ b/driver_sirf.c @@ -886,6 +886,9 @@ static gps_mask_t sirf_msg_geodetic(struct gps_device_t *session, unpacked_date.tm_hour = (int)getub(buf, 15); unpacked_date.tm_min = (int)getub(buf, 16); unpacked_date.tm_sec = 0; +#ifdef S_SPLINT_S + unpacked_date.tm_wday = unpacked_date.tm_yday = 0; +#endif /* S_SPLINT_S */ subseconds = getbeu16(buf, 17) * 1e-3; /*@ -compdef -unrecog */ session->newdata.time = (timestamp_t)mkgmtime(&unpacked_date) + subseconds; @@ -1069,6 +1072,9 @@ static gps_mask_t sirf_msg_ppstime(struct gps_device_t *session, unpacked_date.tm_mday = (int)getub(buf, 4); unpacked_date.tm_mon = (int)getub(buf, 5) - 1; unpacked_date.tm_year = (int)getbeu16(buf, 6) - 1900; +#ifdef S_SPLINT_S + unpacked_date.tm_isdst = 0; +#endif /* S_SPLINT_S */ /*@ -compdef */ session->newdata.time = (timestamp_t)mkgmtime(&unpacked_date); /*@ +compdef */ diff --git a/driver_zodiac.c b/driver_zodiac.c index 1c3c8731..0d066d1f 100644 --- a/driver_zodiac.c +++ b/driver_zodiac.c @@ -165,6 +165,9 @@ static gps_mask_t handle1000(struct gps_device_t *session) unpacked_date.tm_hour = (int)getzword(22); unpacked_date.tm_min = (int)getzword(23); unpacked_date.tm_sec = (int)getzword(24); +#ifdef S_SPLINT_S + unpacked_date.tm_isdst = 0; +#endif /* S_SPLINT_S */ subseconds = (int)getzlong(25) / 1e9; /*@ -compdef */ session->newdata.time = (timestamp_t)mkgmtime(&unpacked_date) + subseconds; diff --git a/gps2udp.c b/gps2udp.c index 7342dc05..c530275e 100644 --- a/gps2udp.c +++ b/gps2udp.c @@ -90,7 +90,7 @@ static int send_udp (char *nmeastring, size_t ind) if (ind == 0) { /* compute message size and add 0x0a 0x0d */ for (ind=0; nmeastring [ind] != '\0'; ind ++) { - if (ind >= sizeof(message)) { + if (ind >= sizeof(message) - 3) { fprintf(stderr, "gps2udp: too big [%s] \n", nmeastring); return -1; } diff --git a/gpsmon.c b/gpsmon.c index 549628a6..16ea331a 100644 --- a/gpsmon.c +++ b/gpsmon.c @@ -687,6 +687,7 @@ static void gpsmon_hook(struct gps_device_t *device, gps_mask_t changed UNUSED) /*@+type@*/ (void)strlcpy(buf, PPSBAR, sizeof(buf)); + /* coverity[missing_lock] */ session.ppslast = noclobber.timedrift; /* coverity[missing_lock] */ session.ppscount++; @@ -1295,7 +1296,7 @@ int main(int argc, char **argv) cmdline = curses_get_command(); else { - /* coverity[string_null] */ + /* coverity[string_null_argument] */ ssize_t st = read(0, &inbuf, 1); if (st == 1) { diff --git a/test/daemon/navcom.log.chk b/test/daemon/navcom.log.chk index 66f3f57f..f9a950fd 100644 --- a/test/daemon/navcom.log.chk +++ b/test/daemon/navcom.log.chk @@ -7,213 +7,213 @@ $GPGBS,102008,0.22,M,0.22,M,10.35,M*02 $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,34*7C -{"class":"SKY","time":"2007-01-14T00:01:47.624Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.624Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":false}]} $GPZDA,102009.00,15,01,2007,00,00*6C $GPGGA,102009,3020.5010,N,01213.7241,E,2,09,1.00,627.58,M,31.479,M,,*41 $GPRMC,102009,A,3020.5010,N,01213.7241,E,31847.9464,0.000,150107,,*27 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102009,0.22,M,0.22,M,10.35,M*03 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:09.000Z","ept":3.920,"lat":30.341683205,"lon":12.228735818,"alt":627.577,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":16383.999,"climb":0.008,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,32*7A -{"class":"SKY","time":"2007-01-14T00:01:47.625Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":32,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.625Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":32,"used":false}]} $GPZDA,102010.00,15,01,2007,00,00*64 $GPGGA,102010,3020.5010,N,01213.7242,E,2,09,1.00,627.56,M,31.479,M,,*44 $GPRMC,102010,A,3020.5010,N,01213.7242,E,0.0019,90.000,150107,,*1B -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102010,0.22,M,0.22,M,10.35,M*0B {"class":"TPV","mode":3,"time":"2007-01-15T10:20:10.000Z","ept":3.920,"lat":30.341683095,"lon":12.228735894,"alt":627.558,"epx":0.222,"epy":0.222,"epv":10.350,"track":90.0000,"speed":0.001,"climb":16383.996,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,44*7B -{"class":"SKY","time":"2007-01-14T00:01:47.626Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":44,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.626Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":44,"used":false}]} $GPZDA,102011.00,15,01,2007,00,00*65 $GPGGA,102011,3020.5010,N,01213.7242,E,2,09,1.00,627.55,M,31.479,M,,*46 $GPRMC,102011,A,3020.5010,N,01213.7242,E,0.0019,90.000,150107,,*1A -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102011,0.22,M,0.22,M,10.35,M*0A {"class":"TPV","mode":3,"time":"2007-01-15T10:20:11.000Z","ept":3.920,"lat":30.341683146,"lon":12.228735886,"alt":627.552,"epx":0.222,"epy":0.222,"epv":10.350,"track":90.0000,"speed":0.001,"climb":0.001,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,44*7B -{"class":"SKY","time":"2007-01-14T00:01:47.627Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":44,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.627Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":44,"used":false}]} $GPZDA,102012.00,15,01,2007,00,00*66 $GPGGA,102012,3020.5010,N,01213.7242,E,2,09,1.00,627.55,M,31.480,M,,*43 $GPRMC,102012,A,3020.5010,N,01213.7242,E,0.0019,0.000,150107,,*20 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:12.000Z","ept":3.920,"lat":30.341683214,"lon":12.228735860,"alt":627.552,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":0.001,"climb":0.000,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,34*7E $GPGSV,3,3,10,07,43,056,43,22,13,173,44*7B -{"class":"SKY","time":"2007-01-14T00:01:47.628Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":44,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.628Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":44,"used":false}]} $GPZDA,102013.00,15,01,2007,00,00*67 $GPGGA,102013,3020.5010,N,01213.7242,E,2,09,1.00,627.54,M,31.479,M,,*45 $GPRMC,102013,A,3020.5010,N,01213.7242,E,0.0019,0.000,150107,,*21 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102013,0.22,M,0.22,M,10.35,M*08 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:13.000Z","ept":3.920,"lat":30.341683205,"lon":12.228735860,"alt":627.538,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":0.001,"climb":0.001,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,34*7E $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.629Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.629Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102014.00,15,01,2007,00,00*60 $GPGGA,102014,3020.5010,N,01213.7242,E,2,09,1.00,627.55,M,31.479,M,,*43 $GPRMC,102014,A,3020.5010,N,01213.7242,E,31847.9407,0.000,150107,,*2D -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102014,0.22,M,0.22,M,10.35,M*0F {"class":"TPV","mode":3,"time":"2007-01-15T10:20:14.000Z","ept":3.920,"lat":30.341683138,"lon":12.228735911,"alt":627.551,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":16383.996,"climb":0.002,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,34*7E $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.630Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.630Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102015.00,15,01,2007,00,00*61 $GPGGA,102015,3020.5010,N,01213.7242,E,2,09,1.00,627.55,M,31.479,M,,*42 $GPRMC,102015,A,3020.5010,N,01213.7242,E,0.0019,0.000,150107,,*27 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102015,0.22,M,0.22,M,10.35,M*0E {"class":"TPV","mode":3,"time":"2007-01-15T10:20:15.000Z","ept":3.920,"lat":30.341683138,"lon":12.228735852,"alt":627.550,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":0.001,"climb":0.005,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,01*7A -{"class":"SKY","time":"2007-01-14T00:01:47.631Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":1,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.631Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":1,"used":false}]} $GPZDA,102016.00,15,01,2007,00,00*62 $GPGGA,102016,3020.5010,N,01213.7242,E,2,09,1.00,627.56,M,31.479,M,,*42 $GPRMC,102016,A,3020.5010,N,01213.7242,E,0.0000,0.000,150107,,*2C -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102016,0.22,M,0.22,M,10.35,M*0D {"class":"TPV","mode":3,"time":"2007-01-15T10:20:16.000Z","ept":3.920,"lat":30.341683189,"lon":12.228735877,"alt":627.561,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":0.000,"climb":0.000,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,33*7B -{"class":"SKY","time":"2007-01-14T00:01:47.632Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":33,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.632Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":33,"used":false}]} $GPZDA,102017.00,15,01,2007,00,00*63 $GPGGA,102017,3020.5010,N,01213.7241,E,2,09,1.00,627.56,M,31.479,M,,*40 $GPRMC,102017,A,3020.5010,N,01213.7241,E,0.0019,90.000,150107,,*1F -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102017,0.22,M,0.22,M,10.35,M*0C {"class":"TPV","mode":3,"time":"2007-01-15T10:20:17.000Z","ept":3.920,"lat":30.341683180,"lon":12.228735826,"alt":627.560,"epx":0.222,"epy":0.222,"epv":10.350,"track":90.0000,"speed":0.001,"climb":0.006,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.633Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.633Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102018.00,15,01,2007,00,00*6C $GPGGA,102018,3020.5010,N,01213.7242,E,2,09,1.00,627.56,M,31.479,M,,*4C $GPRMC,102018,A,3020.5010,N,01213.7242,E,0.0060,71.565,150107,,*14 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102018,0.22,M,0.22,M,10.35,M*03 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:18.000Z","ept":3.920,"lat":30.341683112,"lon":12.228735945,"alt":627.564,"epx":0.222,"epy":0.222,"epv":10.350,"track":71.5651,"speed":0.003,"climb":16383.997,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,34*7E $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.634Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.634Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102019.00,15,01,2007,00,00*6D $GPGGA,102019,3020.5010,N,01213.7242,E,2,09,1.00,627.56,M,31.479,M,,*4D $GPRMC,102019,A,3020.5010,N,01213.7242,E,0.0019,0.000,150107,,*2B -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102019,0.22,M,0.22,M,10.35,M*02 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:19.000Z","ept":3.920,"lat":30.341683172,"lon":12.228735936,"alt":627.559,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":0.001,"climb":0.005,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,45,06,36,062,43,25,36,245,43*7E $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.635Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":45,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.635Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":45,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102020.00,15,01,2007,00,00*67 $GPGGA,102020,3020.5010,N,01213.7242,E,2,09,1.00,627.54,M,31.480,M,,*43 $GPRMC,102020,A,3020.5010,N,01213.7242,E,31847.9445,0.000,150107,,*2C -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102020,0.22,M,0.22,M,10.35,M*08 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:20.000Z","ept":3.920,"lat":30.341683180,"lon":12.228735886,"alt":627.543,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":16383.998,"climb":0.002,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.636Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.636Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102021.00,15,01,2007,00,00*66 $GPGGA,102021,3020.5010,N,01213.7242,E,2,09,1.00,627.52,M,31.479,M,,*42 $GPRMC,102021,A,3020.5010,N,01213.7242,E,31847.9464,0.000,150107,,*2E -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102021,0.22,M,0.22,M,10.35,M*09 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:21.000Z","ept":3.920,"lat":30.341683256,"lon":12.228735869,"alt":627.515,"epx":0.222,"epy":0.222,"epv":10.350,"track":0.0000,"speed":16383.999,"climb":16383.999,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,34*7F $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.637Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.637Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102022.00,15,01,2007,00,00*65 $GPGGA,102022,3020.5010,N,01213.7242,E,2,09,1.00,627.54,M,31.479,M,,*47 $GPRMC,102022,A,3020.5010,N,01213.7242,E,0.0027,45.000,150107,,*1F -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102022,0.22,M,0.22,M,10.35,M*0A {"class":"TPV","mode":3,"time":"2007-01-15T10:20:22.000Z","ept":3.920,"lat":30.341683197,"lon":12.228735835,"alt":627.542,"epx":0.222,"epy":0.222,"epv":10.350,"track":45.0000,"speed":0.001,"climb":0.001,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,32*79 $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.638Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":32,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.638Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":32,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102023.00,15,01,2007,00,00*64 $GPGGA,102023,3020.5010,N,01213.7242,E,2,09,1.00,627.52,M,31.479,M,,*40 $GPRMC,102023,A,3020.5010,N,01213.7242,E,45039.7977,45.000,150107,,*1E -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.0,1.0,1.8*02 +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.0,1.0,1.8*01 $GPGBS,102023,0.22,M,0.22,M,10.35,M*0B {"class":"TPV","mode":3,"time":"2007-01-15T10:20:23.000Z","ept":3.920,"lat":30.341683248,"lon":12.228735852,"alt":627.520,"epx":0.222,"epy":0.222,"epv":10.350,"track":45.0000,"speed":23170.474,"climb":0.000,"eps":0.44,"epc":20.70} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,39,03,10,284,35*7E $GPGSV,3,3,10,07,43,056,43,22,13,173,35*7D -{"class":"SKY","time":"2007-01-14T00:01:47.639Z","xdop":0.55,"ydop":0.68,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":35,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.639Z","xdop":0.55,"ydop":0.74,"vdop":1.80,"tdop":1.30,"hdop":1.00,"gdop":2.40,"pdop":2.00,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":39,"used":true},{"PRN":3,"el":10,"az":284,"ss":35,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":35,"used":false}]} $GPZDA,102024.00,15,01,2007,00,00*63 $GPGGA,102024,3020.5010,N,01213.7242,E,2,09,1.10,627.55,M,31.479,M,,*41 $GPRMC,102024,A,3020.5010,N,01213.7242,E,0.0057,90.000,150107,,*16 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.3,1.1,2.1*0A +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.3,1.1,2.1*09 $GPGBS,102024,0.22,M,0.22,M,12.08,M*00 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:24.000Z","ept":5.880,"lat":30.341683205,"lon":12.228735911,"alt":627.549,"epx":0.222,"epy":0.222,"epv":12.075,"track":90.0000,"speed":0.003,"climb":0.001,"eps":0.44,"epc":22.43} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,33*79 $GPGSV,3,3,10,07,43,056,43,22,13,173,34*7C -{"class":"SKY","time":"2007-01-14T00:01:47.640Z","xdop":0.55,"ydop":0.68,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":33,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.640Z","xdop":0.55,"ydop":0.74,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":33,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":false}]} $GPZDA,102025.00,15,01,2007,00,00*62 $GPGGA,102025,3020.5010,N,01213.7242,E,2,09,1.10,627.54,M,31.479,M,,*41 $GPRMC,102025,A,3020.5010,N,01213.7242,E,0.0042,26.565,150107,,*18 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.3,1.1,2.1*0A +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.3,1.1,2.1*09 $GPGBS,102025,0.22,M,0.22,M,12.08,M*01 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:25.000Z","ept":5.880,"lat":30.341683256,"lon":12.228735936,"alt":627.539,"epx":0.222,"epy":0.222,"epv":12.075,"track":26.5651,"speed":0.002,"climb":0.003,"eps":0.44,"epc":24.15} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,32*78 $GPGSV,3,3,10,07,43,056,43,22,13,173,34*7C -{"class":"SKY","time":"2007-01-14T00:01:47.641Z","xdop":0.55,"ydop":0.68,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":32,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.641Z","xdop":0.55,"ydop":0.74,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":32,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":false}]} $GPZDA,102026.00,15,01,2007,00,00*61 $GPGGA,102026,3020.5010,N,01213.7242,E,2,09,1.10,627.53,M,31.479,M,,*45 $GPRMC,102026,A,3020.5010,N,01213.7242,E,31847.9464,90.000,150107,,*10 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.3,1.1,2.1*0A +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.3,1.1,2.1*09 $GPGBS,102026,0.24,M,0.24,M,12.08,M*02 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:26.000Z","ept":5.880,"lat":30.341683265,"lon":12.228735920,"alt":627.531,"epx":0.236,"epy":0.236,"epv":12.075,"track":90.0000,"speed":16383.999,"climb":16383.998,"eps":0.46,"epc":24.15} $GPGSV,3,1,10,21,78,040,46,31,39,230,45,06,36,062,43,25,36,245,43*7E $GPGSV,3,2,10,30,26,132,37,16,40,321,42,18,31,140,38,03,10,284,32*77 $GPGSV,3,3,10,07,43,056,43,22,13,173,34*7C -{"class":"SKY","time":"2007-01-14T00:01:47.642Z","xdop":0.55,"ydop":0.68,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":45,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":37,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":32,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.642Z","xdop":0.55,"ydop":0.74,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":45,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":37,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":32,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":false}]} $GPZDA,102027.00,15,01,2007,00,00*60 $GPGGA,102027,3020.5010,N,01213.7242,E,2,09,1.10,627.54,M,31.479,M,,*43 $GPRMC,102027,A,3020.5010,N,01213.7242,E,31847.9464,90.000,150107,,*11 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.3,1.1,2.1*0A +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.3,1.1,2.1*09 $GPGBS,102027,0.24,M,0.24,M,12.08,M*03 {"class":"TPV","mode":3,"time":"2007-01-15T10:20:27.000Z","ept":5.880,"lat":30.341683239,"lon":12.228735920,"alt":627.541,"epx":0.236,"epy":0.236,"epv":12.075,"track":90.0000,"speed":16383.999,"climb":0.002,"eps":0.47,"epc":24.15} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,33*79 $GPGSV,3,3,10,07,43,056,43,22,13,173,34*7C -{"class":"SKY","time":"2007-01-14T00:01:47.643Z","xdop":0.55,"ydop":0.68,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":33,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.643Z","xdop":0.55,"ydop":0.74,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":33,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":false}]} $GPZDA,102028.00,15,01,2007,00,00*6F $GPGGA,102028,3020.5010,N,01213.7242,E,2,09,1.10,627.56,M,31.479,M,,*4E $GPRMC,102028,A,3020.5010,N,01213.7242,E,31847.9445,0.000,150107,,*24 -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.3,1.1,2.1*0A +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.3,1.1,2.1*09 $GPGBS,102028,0.24,M,0.24,M,12.08,M*0C {"class":"TPV","mode":3,"time":"2007-01-15T10:20:28.000Z","ept":5.880,"lat":30.341683214,"lon":12.228735936,"alt":627.555,"epx":0.236,"epy":0.236,"epv":12.075,"track":0.0000,"speed":16383.998,"climb":0.007,"eps":0.47,"epc":24.15} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,34*7E $GPGSV,3,3,10,07,43,056,43,22,13,173,34*7C -{"class":"SKY","time":"2007-01-14T00:01:47.644Z","xdop":0.55,"ydop":0.68,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.644Z","xdop":0.55,"ydop":0.74,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":false}]} $GPZDA,102029.00,15,01,2007,00,00*6E $GPGGA,102029,3020.5010,N,01213.7242,E,2,09,1.10,627.54,M,31.479,M,,*4D $GPRMC,102029,A,3020.5010,N,01213.7242,E,31847.9464,90.000,150107,,*1F -$GPGSA,A,3,31,6,25,30,16,18,3,7,22,,,,2.3,1.1,2.1*0A +$GPGSA,A,3,21,31,6,25,30,16,18,3,7,,,,2.3,1.1,2.1*09 $GPGBS,102029,0.25,M,0.25,M,12.08,M*0D {"class":"TPV","mode":3,"time":"2007-01-15T10:20:29.000Z","ept":5.880,"lat":30.341683231,"lon":12.228735877,"alt":627.537,"epx":0.249,"epy":0.249,"epv":12.075,"track":90.0000,"speed":16383.999,"climb":0.000,"eps":0.49,"epc":24.15} $GPGSV,3,1,10,21,78,040,46,31,39,230,44,06,36,062,43,25,36,245,43*7F $GPGSV,3,2,10,30,26,132,38,16,40,321,42,18,31,140,38,03,10,284,34*7E $GPGSV,3,3,10,07,43,056,43,22,13,173,34*7C -{"class":"SKY","time":"2007-01-14T00:01:47.645Z","xdop":0.55,"ydop":0.68,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":false},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":true}]} +{"class":"SKY","time":"2007-01-14T00:01:47.645Z","xdop":0.55,"ydop":0.74,"vdop":2.10,"tdop":1.50,"hdop":1.10,"gdop":2.80,"pdop":2.30,"satellites":[{"PRN":21,"el":78,"az":40,"ss":46,"used":true},{"PRN":31,"el":39,"az":230,"ss":44,"used":true},{"PRN":6,"el":36,"az":62,"ss":43,"used":true},{"PRN":25,"el":36,"az":245,"ss":43,"used":true},{"PRN":30,"el":26,"az":132,"ss":38,"used":true},{"PRN":16,"el":40,"az":321,"ss":42,"used":true},{"PRN":18,"el":31,"az":140,"ss":38,"used":true},{"PRN":3,"el":10,"az":284,"ss":34,"used":true},{"PRN":7,"el":43,"az":56,"ss":43,"used":true},{"PRN":22,"el":13,"az":173,"ss":34,"used":false}]} -- cgit v1.2.1