diff options
author | Gregory Fong <gregory.fong@virginorbit.com> | 2018-07-29 17:21:24 -0700 |
---|---|---|
committer | Gary E. Miller <gem@rellim.com> | 2018-07-29 17:21:24 -0700 |
commit | f41d577b6352e80919469ee1724a0b9ad4359e67 (patch) | |
tree | 7a96d9194937855ebaecc14bb254236d3ccc5940 | |
parent | d1f79455a50f92b3dbf68c2ad5196423d80ed78a (diff) | |
download | gpsd-f41d577b6352e80919469ee1724a0b9ad4359e67.tar.gz |
Add GREIS (Javad) GPS driver.
All functional changes inside "#ifdef GREIS_ENABLE"
Includes new regression tests. All regressions tests
pass.
Developed by Gregory Fong, with help and support from
Virgin Orbit.
Signed-off-by: Gary E. Miller <gem@rellim.com>
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | SConstruct | 3 | ||||
-rw-r--r-- | driver_greis.c | 963 | ||||
-rw-r--r-- | driver_greis.h | 6 | ||||
-rw-r--r-- | driver_greis_checksum.c | 24 | ||||
-rw-r--r-- | drivers.c | 13 | ||||
-rw-r--r-- | gpsd.h | 40 | ||||
-rw-r--r-- | packet.c | 153 | ||||
-rw-r--r-- | packet_states.h | 12 | ||||
-rw-r--r-- | test/daemon/greis-binary.log | bin | 0 -> 11725 bytes | |||
-rw-r--r-- | test/daemon/greis-binary.log.chk | 396 | ||||
-rw-r--r-- | test/daemon/greis-def.log | bin | 0 -> 16188 bytes | |||
-rw-r--r-- | test/daemon/greis-def.log.chk | 12 | ||||
-rw-r--r-- | test/daemon/greis-reset.log | bin | 0 -> 23212 bytes | |||
-rw-r--r-- | test/daemon/greis-reset.log.chk | 741 | ||||
-rw-r--r-- | test/daemon/greis-test.log | bin | 0 -> 13926 bytes | |||
-rw-r--r-- | test/daemon/greis-test.log.chk | 308 | ||||
-rw-r--r-- | test/daemon/greis-test2.log | bin | 0 -> 2116 bytes | |||
-rw-r--r-- | test/daemon/greis-test2.log.chk | 42 |
19 files changed, 2692 insertions, 22 deletions
@@ -2,6 +2,7 @@ 3.18: not released yet Add ECEF support to U-blox driver. + Add GREIS (Javad) driver from Virgin Orbit. 3.17: 2017-09-07 (Eric S. Raymond <esr@snark.thyrsus.com>) Repair support for non-NMEA devices requring active probing @@ -1119,6 +1119,8 @@ libgpsd_sources = [ "driver_garmin.c", "driver_garmin_txt.c", "driver_geostar.c", + "driver_greis.c", + "driver_greis_checksum.c", "driver_italk.c", "driver_navcom.c", "driver_nmea0183.c", @@ -1364,6 +1366,7 @@ else: python_extensions = { "gps" + os.sep + "packet": [ "crc24q.c", + "driver_greis_checksum.c", "driver_rtcm2.c", "gpspacket.c", "hex.c", diff --git a/driver_greis.c b/driver_greis.c new file mode 100644 index 00000000..fd360fe8 --- /dev/null +++ b/driver_greis.c @@ -0,0 +1,963 @@ +/* + * A Javad GNSS Receiver External Interface Specification (GREIS) driver. + * + * Author(s): + * - Gregory Fong <gregory.fong@virginorbit.com> + * + * Documentation for GREIS can be found at: + * http://www.javad.com/downloads/javadgnss/manuals/GREIS/GREIS_Reference_Guide.pdf + * + * The version used for reference is that which + * "Reflects Firmware Version 3.6.7, Last revised: August 25, 2016". + * + * This assumes little endian byte order in messages, which is the default, but + * that is configurable. A future improvement could change to read the + * information in [MF] Message Format. + * + * This file is Copyright (c) 2017 Virgin Orbit + * SPDX-License-Identifier: BSD-2-clause + */ + +#include <assert.h> +#include <math.h> +#include <stdbool.h> +#include <stdio.h> +#include <string.h> +#include <sys/select.h> + +#include "bits.h" +#include "driver_greis.h" +#include "gpsd.h" + +#if defined(GREIS_ENABLE) && defined(BINARY_ENABLE) + +#define HEADER_LENGTH 5 + +static ssize_t greis_write(struct gps_device_t *session, + const char *msg, size_t msglen); +static const char disable_messages[] = "\%dm\%dm"; +static const char get_vendor[] = "\%vendor\%print,/par/rcv/vendor"; +static const char get_ver[] = "\%ver\%print,rcv/ver"; +static const char set_update_rate_4hz[] = "\%msint\%set,/par/raw/msint,250"; + +/* Where applicable, the order here is how these will be received per cycle. */ +/* TODO: stop hardcoding the cycle time, make it selectable */ +static const char enable_messages_4hz[] = + "\%em\%em,,jps/{RT,UO,GT,PV,SG,DP,SI,EL,AZ,EC,SS,ET}:0.25"; + +/* + * GREIS message handlers. The checksum has been already confirmed valid in the + * packet acceptance logic, so we don't need to retest it here. + */ + +/** + * Handle the message [RE] Reply + */ +static gps_mask_t greis_msg_RE(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + if (0 == memcmp(buf, "%ver%", 5)) { + strlcpy(session->subtype, (const char*)&buf[5], + sizeof(session->subtype)); + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: RE, ->subtype: %s\n", session->subtype); + return DEVICEID_SET; + } + + gpsd_log(&session->context->errout, LOG_INFO, + "GREIS: RE %3zd, reply: %.*s\n", len, (int)len, buf); + return 0; +} + +/** + * Handle the message [ER] Reply + */ +static gps_mask_t greis_msg_ER(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: ER %3zd, reply: %.*s\n", len, (int)len, buf); + return 0; +} + +/** + * Handle the message [~~](RT) Receiver Time. + */ +static gps_mask_t greis_msg_RT(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + if (len < 5) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: RT bad len %zu\n", len); + return 0; + } + + session->driver.greis.rt_tod = getleu32(buf, 0); + + session->driver.greis.seen_rt = true; + session->driver.greis.seen_az = false; + session->driver.greis.seen_ec = false; + session->driver.greis.seen_el = false; + session->driver.greis.seen_si = false; + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: RT, tod: %lu\n", + (unsigned long)session->driver.greis.rt_tod); + + return CLEAR_IS; +} + +/** + * Handle the message [UO] GPS UTC Time Parameters. + */ +static gps_mask_t greis_msg_UO(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + /* + * For additional details on these parameters and the computation done using + * them, refer to the Javad GREIS spec mentioned at the top of this file and + * also to ICD-GPS-200C, Revision IRN-200C-004 April 12, 2000. At the time + * of writing, that could be found at + * https://www.navcen.uscg.gov/pubs/gps/icd200/ICD200Cw1234.pdf . + */ + uint32_t tot; /* Reference time of week [s] */ + uint16_t wnt; /* Reference week number [dimensionless] */ + int8_t dtls; /* Delta time due to leap seconds [s] */ + uint8_t dn; /* 'Future' reference day number [1..7] */ + uint16_t wnlsf; /* 'Future' reference week number [dimensionless] */ + int8_t dtlsf; /* 'Future' delta time due to leap seconds [s] */ + + if (len < 24) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: UO bad len %zu\n", len); + return 0; + } + + tot = getleu32(buf, 12); + wnt = getleu16(buf, 16); + dtls = getsb(buf, 18); + dn = getub(buf, 19); + wnlsf = getleu16(buf, 20); + dtlsf = getsb(buf, 22); + session->driver.greis.seen_uo = true; + + /* + * See ICD-GPS-200C 20.3.3.5.2.4 "Universal Coordinated Time (UTC)". + * I totally ripped this off of driver_navcom.c. Might want to dedupe at + * some point. + */ + if ((wnt % 256U) * 604800U + tot < wnlsf * 604800U + dn * 86400U) { + /* Current time is before effectivity time of the leap second event */ + session->context->leap_seconds = dtls; + } else { + session->context->leap_seconds = dtlsf; + } + + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: UO, leap_seconds: %d\n", session->context->leap_seconds); + + return 0; +} + +/** + * Handle the message [GT] GPS Time. + */ +static gps_mask_t greis_msg_GT(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + uint32_t tow; /* Time of week [ms] */ + uint16_t wn; /* GPS week number (modulo 1024) [dimensionless] */ + + if (len < 7) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: GT bad len %zu\n", len); + return 0; + } + + if (!session->driver.greis.seen_uo) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: can't use GT until after UO has supplied leap second data\n"); + return 0; + } + + tow = getleu32(buf, 0); + wn = getleu16(buf, 4); + + session->newdata.time = gpsd_gpstime_resolve(session, wn, tow / 1000.0); + + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: GT, tow: %u, wn: %u, time: %.2f\n", tow, wn, + session->newdata.time); + + return TIME_SET | NTPTIME_IS | ONLINE_SET; +} + +/** + * Handle the message [PV] Cartesian Position and Velocity. + */ +static gps_mask_t greis_msg_PV(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + double x, y, z; /* Cartesian coordinates [m] */ + float p_sigma; /* Position spherical error probability (SEP) [m] */ + float vx, vy, vz; /* Cartesian velocities [m/s] */ + float v_sigma; /* Velocity SEP [m/s] */ + uint8_t solution_type; + + if (len < 46) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: PV bad len %zu\n", len); + return 0; + } + + x = getled64((char *)buf, 0); + y = getled64((char *)buf, 8); + z = getled64((char *)buf, 16); + p_sigma = getlef32((char *)buf, 24); + vx = getlef32((char *)buf, 28); + vy = getlef32((char *)buf, 32); + vz = getlef32((char *)buf, 36); + v_sigma = getlef32((char *)buf, 40); + solution_type = getub(buf, 44); + + session->newdata.ecef.x = x; + session->newdata.ecef.y = y; + session->newdata.ecef.z = z; + session->newdata.ecef.pAcc = p_sigma; + session->newdata.ecef.vx = vx; + session->newdata.ecef.vy = vy; + session->newdata.ecef.vz = vz; + session->newdata.ecef.vAcc = v_sigma; + ecef_to_wgs84fix(&session->newdata, &session->gpsdata.separation, + x, y, z, vx, vy, vz); + + /* GREIS Reference Guide 3.4.2 "General Notes" part "Solution Types" */ + if (solution_type > 0 && solution_type < 5) { + session->newdata.mode = MODE_3D; + if (solution_type > 1) + session->gpsdata.status = STATUS_DGPS_FIX; + else + session->gpsdata.status = STATUS_FIX; + } + + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: PV, ECEF x=%.2f y=%.2f z=%.2f pAcc=%.2f\n", + session->newdata.ecef.x, + session->newdata.ecef.y, + session->newdata.ecef.z, + session->newdata.ecef.pAcc); + + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: PV, ECEF vx=%.2f vy=%.2f vz=%.2f vAcc=%.2f\n", + session->newdata.ecef.vx, + session->newdata.ecef.vy, + session->newdata.ecef.vz, + session->newdata.ecef.vAcc); + + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: PV, lat: %.2f, lon: %.2f, alt: %.2f, solution_type: %d\n", + session->newdata.latitude, + session->newdata.longitude, session->newdata.altitude, + solution_type); + + return LATLON_SET | ALTITUDE_SET | CLIMB_SET | TRACK_SET | SPEED_SET | + MODE_SET | STATUS_SET | ECEF_SET | VECEF_SET; +} + +/** + * Handle the message [SG] Position and Velocity RMS Errors. + */ +static gps_mask_t greis_msg_SG(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + float hpos; /* Horizontal position RMS error [m] */ + float vpos; /* Vertical position RMS error [m] */ + float hvel; /* Horizontal velocity RMS error [m/s] */ + float vvel; /* Vertical velocity RMS error [m/s] */ + + if (len < 18) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: SG bad len %zu\n", len); + return 0; + } + + hpos = getlef32((char *)buf, 0); + vpos = getlef32((char *)buf, 4); + hvel = getlef32((char *)buf, 8); + vvel = getlef32((char *)buf, 12); + + /* + * All errors are RMS which can be approximated as 1 sigma, so we can just + * multiply to get the length used for GPSD confidence level. + * + * Make the simplifying assumption that error is the same for latitude and + * longitude, since GREIS does not provide those as precomputed components. + * A future improvement might be to compute the individual errors from the + * position covariance matrix, but only if this proves insufficient. + */ + session->newdata.epx = session->newdata.epy = + hpos * (1 / sqrt(2)) * GPSD_CONFIDENCE; + session->newdata.epv = vpos * GPSD_CONFIDENCE; + session->newdata.eps = hvel * GPSD_CONFIDENCE; + session->newdata.epc = vvel * GPSD_CONFIDENCE; + + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: SG, epx: %.2f, epy: %.2f, eps: %.2f, epc: %.2f\n", + session->newdata.epx, session->newdata.epy, + session->newdata.eps, session->newdata.epc); + + return HERR_SET | VERR_SET | SPEEDERR_SET | CLIMBERR_SET; +} + +/** + * Handle the message [DP] Dilution of Precision. + * Note that fill_dop() will handle the unset dops later. + */ +static gps_mask_t greis_msg_DP(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + if (len < 18) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: DP bad len %zu\n", len); + return 0; + } + + /* clear so that computed DOPs get recomputed. */ + gps_clear_dop(&session->gpsdata.dop); + + session->gpsdata.dop.hdop = getlef32((char *)buf, 0); + session->gpsdata.dop.vdop = getlef32((char *)buf, 4); + session->gpsdata.dop.tdop = getlef32((char *)buf, 8); + + session->gpsdata.dop.pdop = sqrt(pow(session->gpsdata.dop.hdop, 2) + + pow(session->gpsdata.dop.vdop, 2)); + + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: DP, hdop: %.2f, vdop: %.2f, tdop: %.2f, pdop: %.2f\n", + session->gpsdata.dop.hdop, session->gpsdata.dop.vdop, + session->gpsdata.dop.tdop, session->gpsdata.dop.pdop); + + return DOP_SET; +} + +/** + * Handle the message [SI] Satellite Indices. + * + * This message tells us how many satellites are seen and contains their + * Universal Satellite Identifier (USI). + */ +static gps_mask_t greis_msg_SI(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + int i; + + if (len < 1) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: SI bad len %zu\n", len); + return 0; + } + + gpsd_zero_satellites(&session->gpsdata); + /* FIXME: check against MAXCHANNELS? */ + session->gpsdata.satellites_visible = len - 1; + for (i = 0; i < session->gpsdata.satellites_visible; i++) { + /* This isn't really PRN, this is USI. Do we need to convert? */ + session->gpsdata.skyview[i].PRN = getub(buf, i); + } + + session->driver.greis.seen_si = true; + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: SI, satellites_visible: %d\n", + session->gpsdata.satellites_visible); + + return 0; +} + +/** + * Handle the message [EL] Satellite Elevations. + */ +static gps_mask_t greis_msg_EL(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + int i; + + if (!session->driver.greis.seen_si) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: can't use EL until after SI provides indices\n"); + return 0; + } + + /* check against number of satellites + checksum */ + if (len < session->gpsdata.satellites_visible + 1U) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: EL bad len %zu, needed at least %d\n", len, + session->gpsdata.satellites_visible + 1); + return 0; + } + + for (i = 0; i < session->gpsdata.satellites_visible; i++) { + short elevation; + + /* GREIS elevation is -90 to 90 degrees */ + /* GREIS uses 127 for n/a */ + /* gpsd uses -91 for n/a, so adjust acordingly */ + elevation = getub(buf, i); + if ((-90 > elevation) || (90 < elevation)) elevation = -91; + session->gpsdata.skyview[i].elevation = elevation; + } + + session->driver.greis.seen_el = true; + gpsd_log(&session->context->errout, LOG_DATA, "GREIS: EL\n"); + + return 0; +} + +/** + * Handle the message [AZ] Satellite Azimuths. + */ +static gps_mask_t greis_msg_AZ(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + int i; + + if (!session->driver.greis.seen_si) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: can't use AZ until after SI provides indices\n"); + return 0; + } + + /* check against number of satellites + checksum */ + if (len < session->gpsdata.satellites_visible + 1U) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: AZ bad len %zu, needed at least %d\n", len, + session->gpsdata.satellites_visible + 1); + return 0; + } + + for (i = 0; i < session->gpsdata.satellites_visible; i++) { + short azimuth; + + /* GREIS azimuth is 0 to 180, multiply by 2 for 0 to 360 */ + /* GREIS uses 255 for n/a */ + /* gpsd azimuth is 0 to 359, so adjust acordingly */ + azimuth = getub(buf, i) * 2; + if (360 == azimuth) azimuth = 0; + else if (360 < azimuth) azimuth = -1; + session->gpsdata.skyview[i].azimuth = azimuth; + } + + session->driver.greis.seen_az = true; + gpsd_log(&session->context->errout, LOG_DATA, "GREIS: AZ\n"); + + return 0; +} + +/** + * Handle the message [EC] SNR (CA/L1). + * EC really outputs CNR, but what gpsd refers to as SNR _is_ CNR. + */ +static gps_mask_t greis_msg_EC(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + int i; + + if (!session->driver.greis.seen_si) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: can't use EC until after SI provides indices\n"); + return 0; + } + + /* check against number of satellites + checksum */ + if (len < session->gpsdata.satellites_visible + 1U) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: EC bad len %zu, needed at least %d\n", len, + session->gpsdata.satellites_visible + 1); + return 0; + } + + for (i = 0; i < session->gpsdata.satellites_visible; i++) + session->gpsdata.skyview[i].ss = getub(buf, i); + + session->driver.greis.seen_ec = true; + gpsd_log(&session->context->errout, LOG_DATA, "GREIS: EC\n"); + + return 0; +} + +/** + * Handle the message [SS] Satellite Navigation Status. + */ +static gps_mask_t greis_msg_SS(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + int i; + int used_count = 0; + + if (!session->driver.greis.seen_si) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: can't use SS until after SI provides indices\n"); + return 0; + } + + /* check against number of satellites + solution type + checksum */ + if (len < session->gpsdata.satellites_visible + 2U) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: SI bad len %zu, needed at least %d\n", len, + session->gpsdata.satellites_visible + 2); + return 0; + } + + for (i = 0; i < session->gpsdata.satellites_visible; i++) { + /* + * From the GREIS Reference Guide: "Codes [0...3], [40...62], and + * [64...255] indicate that given satellite is used in position + * computation and show which measurements are used. The rest of codes + * indicate that satellite is not used in position computation and + * indicate why this satellite is excluded from position computation." + * Refer to Table 3-4 "Satellite Navigation Status" for the specific + * code meanings. + */ + uint8_t nav_status = getub(buf, i); + session->gpsdata.skyview[i].used = + (nav_status <= 3) || + (nav_status >= 40 && nav_status <= 62) || + (nav_status >= 64); + + if (session->gpsdata.skyview[i].used) + used_count++; + } + session->gpsdata.satellites_used = used_count; + + gpsd_log(&session->context->errout, LOG_DATA, + "GREIS: SS, satellites_used: %d\n", + session->gpsdata.satellites_used); + + return used_count ? USED_IS : 0; +} + + +/** + * Handle the message [::](ET) Epoch Time. + * This should be kept as the last message in each epoch. + */ +static gps_mask_t greis_msg_ET(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + uint32_t tod; + gps_mask_t mask = 0; + + if (len < 5) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: ET bad len %zu\n", len); + return 0; + } + + if (!session->driver.greis.seen_rt) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: got ET, but no preceding RT for epoch\n"); + return 0; + } + + tod = getleu32(buf, 0); + if (tod != session->driver.greis.rt_tod) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: broken epoch, RT had %lu, but ET has %lu\n", + (unsigned long)session->driver.greis.rt_tod, + (unsigned long)tod); + return 0; + } + + /* Skyview time does not differ from time in GT message */ + session->gpsdata.skyview_time = NAN; + + gpsd_log(&session->context->errout, LOG_DEBUG, + "GREIS: ET, seen: az %d, ec %d, el %d, rt %d, si %d, uo %d\n", + (int)session->driver.greis.seen_az, + (int)session->driver.greis.seen_ec, + (int)session->driver.greis.seen_el, + (int)session->driver.greis.seen_rt, + (int)session->driver.greis.seen_si, + (int)session->driver.greis.seen_uo); + + /* Make sure we got the satellite data, then report it. */ + if ((session->driver.greis.seen_az && session->driver.greis.seen_ec && + session->driver.greis.seen_el && session->driver.greis.seen_si)) { + /* Skyview seen, update it. Go even if no seen_ss or none visible */ + mask |= SATELLITE_SET; + } else { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: ET: missing satellite details in this epoch\n"); + } + + gpsd_log(&session->context->errout, LOG_DATA, "GREIS: ET, tod: %lu\n", + (unsigned long)tod); + + /* This is a good place to poll firmware version if we need it. + * Waited until now to avoid the startup rush and out of + * critical time path + */ + if (0 == strlen(session->subtype)) { + /* get version */ + (void)greis_write(session, get_ver, sizeof(get_ver) - 1); + } + /* The driver waits for ET to send any reports + * Just REPORT_IS is not enough to trigger sending of reports to clients. + * STATUS_SET seems best, if no status by now the status is no fix */ + return mask | REPORT_IS | STATUS_SET; +} + +struct dispatch_table_entry { + char id0; + char id1; + gps_mask_t (*handler)(struct gps_device_t *, unsigned char *, size_t); +}; + +static struct dispatch_table_entry dispatch_table[] = { + {':', ':', greis_msg_ET}, + {'A', 'Z', greis_msg_AZ}, + {'D', 'P', greis_msg_DP}, + {'E', 'C', greis_msg_EC}, + {'E', 'R', greis_msg_ER}, + {'E', 'L', greis_msg_EL}, + {'G', 'T', greis_msg_GT}, + {'P', 'V', greis_msg_PV}, + {'R', 'E', greis_msg_RE}, + {'S', 'G', greis_msg_SG}, + {'S', 'I', greis_msg_SI}, + {'S', 'S', greis_msg_SS}, + {'U', 'O', greis_msg_UO}, + {'~', '~', greis_msg_RT}, +}; + +#define dispatch_table_size (sizeof(dispatch_table) / sizeof(dispatch_table[0])) + +/** + * Parse the data from the device + */ +static gps_mask_t greis_dispatch(struct gps_device_t *session, + unsigned char *buf, size_t len) +{ + size_t i; + char id0, id1; + + if (len == 0) + return 0; + + /* + * This is set because the device reliably signals end of cycle. + * The core library zeroes it just before it calls each driver's + * packet analyzer. + */ + session->cycle_end_reliable = true; + + /* Length should have already been checked in packet.c, but just in case */ + if (len < HEADER_LENGTH) { + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: Packet length %zu shorter than min length\n", len); + return 0; + } + + /* we may need to dump the raw packet */ + gpsd_log(&session->context->errout, LOG_RAW, + "GREIS: raw packet id '%c%c'\n", buf[0], buf[1]); + + id0 = buf[0]; + id1 = buf[1]; + len -= HEADER_LENGTH; + buf += HEADER_LENGTH; + + for (i = 0; i < dispatch_table_size; i++) { + struct dispatch_table_entry *entry = &dispatch_table[i]; + + if (id0 == entry->id0 && id1 == entry->id1) { + return entry->handler(session, buf, len); + } + } + + gpsd_log(&session->context->errout, LOG_WARN, + "GREIS: unknown packet id '%c%c' length %zu\n", id0, id1, len); + return 0; +} + +/********************************************************** + * + * Externally called routines below here + * + **********************************************************/ + +/** + * Write data to the device with checksum. + * Returns number of bytes written on successful write, -1 otherwise. + */ +static ssize_t greis_write(struct gps_device_t *session, + const char *msg, size_t msglen) +{ + char checksum_str[3] = {0}; + ssize_t count; + + if (session->context->readonly) { + /* readonly mode, do not write anything */ + return -1; + } + + if (NULL == msg) { + /* We do sometimes write zero length to wake up GPS, + * so just test for NULL msg, not zero length message */ + gpsd_log(&session->context->errout, LOG_ERROR, + "GREIS: nothing to write\n"); + return -1; + } + + /* Account for length + checksum marker + checksum + \r + \n + \0 */ + if (msglen + 6 > sizeof(session->msgbuf)) { + gpsd_log(&session->context->errout, LOG_ERROR, + "GREIS: msgbuf is smaller than write length %zu\n", msglen); + return -1; + } + + if (msg != NULL) + memcpy(&session->msgbuf[0], msg, msglen); + + if (msglen == 0) { + /* This is a dummy write, don't give a checksum. */ + session->msgbuf[0] = '\n'; + session->msgbuflen = 1; + gpsd_log(&session->context->errout, LOG_PROG, + "GREIS: Dummy write\n"); + } else { + unsigned char checksum; + + session->msgbuflen = msglen; + session->msgbuf[session->msgbuflen++] = '@'; /* checksum marker */ + + /* calculate checksum with @, place at end, and set length to write */ + checksum = greis_checksum((unsigned char *)session->msgbuf, + session->msgbuflen); + (void)snprintf(checksum_str, sizeof(checksum_str), "%02X", checksum); + session->msgbuf[session->msgbuflen++] = checksum_str[0]; + session->msgbuf[session->msgbuflen++] = checksum_str[1]; + session->msgbuf[session->msgbuflen++] = '\r'; + session->msgbuf[session->msgbuflen++] = '\n'; + + gpsd_log(&session->context->errout, LOG_PROG, + "GREIS: Writing command '%.*s', checksum: %s\n", + (int)msglen, msg, checksum_str); + } + session->msgbuf[session->msgbuflen] = '\0'; + count = gpsd_write(session, session->msgbuf, session->msgbuflen); + + if (count != (ssize_t)session->msgbuflen) + return -1; + else + return count; +} + +#ifdef CONTROLSEND_ENABLE +/** + * Write data to the device, doing any required padding or checksumming + */ +static ssize_t greis_control_send(struct gps_device_t *session, + char *msg, size_t msglen) +{ + return greis_write(session, msg, msglen); +} +#endif /* CONTROLSEND_ENABLE */ + +#ifdef RECONFIGURE_ENABLE +static void greis_event_hook(struct gps_device_t *session, event_t event) +{ + if (session->context->readonly) + return; + + if (event == event_wakeup) { + /* + * Code to make the device ready to communicate. Only needed if the + * device is in some kind of sleeping state, and only shipped to + * RS232C, so that gpsd won't send strings to unidentified USB devices + * that might not be GPSes at all. + */ + + /* + * Disable any existing messages, then request vendor for + * identification. + */ + (void)greis_write(session, disable_messages, + sizeof(disable_messages) - 1); + (void)greis_write(session, get_vendor, sizeof(get_vendor) - 1); + } else if (event == event_identified || event == event_reactivate) { + /* + * Fires when the first full packet is recognized from a previously + * unidentified device OR the device is reactivated after close. The + * session.lexer counter is zeroed. + * + * TODO: If possible, get the software version and store it in + * session->subtype. + */ + (void)greis_write(session, disable_messages, + sizeof(disable_messages) - 1); + (void)greis_write(session, set_update_rate_4hz, + sizeof(set_update_rate_4hz) - 1); + (void)greis_write(session, enable_messages_4hz, + sizeof(enable_messages_4hz) - 1); + + /* Store cycle time (seconds) */ + session->gpsdata.dev.cycle = 0.25; + } else if (event == event_driver_switch) { + /* + * Fires when the driver on a device is changed *after* it + * has been identified. + */ + } else if (event == event_deactivate) { + /* + * Fires when the device is deactivated. Use this to revert + * whatever was done at event_identified and event_configure + * time. + */ + (void)greis_write(session, disable_messages, + sizeof(disable_messages) - 1); + } +} + +/** + * This is the entry point to the driver. When the packet sniffer recognizes + * a packet for this driver, it calls this method which passes the packet to + * the binary processor or the nmea processor, depending on the session type. + */ +static gps_mask_t greis_parse_input(struct gps_device_t *session) +{ + if (session->lexer.type == GREIS_PACKET) { + return greis_dispatch(session, session->lexer.outbuffer, + session->lexer.outbuflen); +#ifdef NMEA0183_ENABLE + } else if (session->lexer.type == NMEA_PACKET) { + return nmea_parse((char *)session->lexer.outbuffer, session); +#endif /* NMEA0183_ENABLE */ + } else + return 0; +} + +/** + * Set port operating mode, speed, parity, stopbits etc. here. + * Note: parity is passed as 'N'/'E'/'O', but you should program + * defensively and allow 0/1/2 as well. + */ +static bool greis_set_speed(struct gps_device_t *session, + speed_t speed, char parity, int stopbits) +{ + /* change on current port */ + static const char set_rate[] = "set,/par/cur/term/rate,"; + static const char set_parity[] = "set,/par/cur/term/parity,"; + static const char set_stops[] = "set,/par/cur/term/stops,"; + static const char parity_none[] = "N"; + static const char parity_even[] = "even"; + static const char parity_odd[] = "odd"; + + char command[BUFSIZ] = {0}; + const char *selected_parity = NULL; + + switch (parity) { + case 'N': + case 0: + selected_parity = parity_none; + break; + case 'E': + case 1: + selected_parity = parity_even; + break; + case 'O': + case 2: + selected_parity = parity_odd; + break; + default: + return false; + } + + (void)snprintf(command, sizeof(command) - 1, "%s%u && %s%s && %s%d", + set_rate, speed, set_parity, selected_parity, + set_stops, stopbits); + return (bool)greis_write(session, command, strlen(command)); +} + +#if 0 +/** + * TODO: Switch between NMEA and binary mode + */ +static void greis_set_mode(struct gps_device_t *session, int mode) +{ + if (mode == MODE_NMEA) { + /* send a mode switch control string */ + } else { + /* send a mode switch control string */ + session->back_to_nmea = false; + } +} +#endif + +#endif /* RECONFIGURE_ENABLE */ + +#ifdef TIMEHINT_ENABLE +#if 0 /* TODO */ +static double greis_time_offset(struct gps_device_t *session) +{ + /* + * If NTP notification is enabled, the GPS will occasionally NTP + * its notion of the time. This will lag behind actual time by + * some amount which has to be determined by observation vs. (say + * WWVB radio broadcasts) and, furthermore, may differ by baud + * rate. This method is for computing the NTP fudge factor. If + * it's absent, an offset of 0.0 will be assumed, effectively + * falling back on what's in ntp.conf. When it returns NAN, + * nothing will be sent to NTP. + */ + return MAGIC_CONSTANT; +} +#endif +#endif /* TIMEHINT_ENABLE */ + +/* This is everything we export */ +/* *INDENT-OFF* */ +const struct gps_type_t driver_greis = { + /* Full name of type */ + .type_name = "GREIS", + /* Associated lexer packet type */ + .packet_type = GREIS_PACKET, + /* Driver type flags */ + .flags = DRIVER_STICKY, + /* Response string that identifies device (not active) */ + .trigger = NULL, + /* Number of satellite channels supported by the device */ + .channels = 128, + /* Startup-time device detector */ + .probe_detect = NULL, + /* Packet getter (using default routine) */ + .get_packet = generic_get, + /* Parse message packets */ + .parse_packet = greis_parse_input, + /* non-perturbing initial query (e.g. for version) */ + .init_query = NULL, + /* fire on various lifetime events */ + .event_hook = greis_event_hook, +#ifdef RECONFIGURE_ENABLE + /* Speed (baudrate) switch */ + .speed_switcher = greis_set_speed, +#if 0 /* TODO */ + /* Switch to NMEA mode */ + .mode_switcher = greis_set_mode, +#endif + /* Message delivery rate switcher (not active) */ + .rate_switcher = NULL, + /* Minimum cycle time of the device. + * Default is 1/100, but this is tunable using /par/raw/msint . */ + .min_cycle = 0.01, +#endif /* RECONFIGURE_ENABLE */ +#ifdef CONTROLSEND_ENABLE + /* Control string sender - should provide checksum and headers/trailer */ + .control_send = greis_control_send, +#endif /* CONTROLSEND_ENABLE */ +#ifdef TIMEHINT_ENABLE +#if 0 /* TODO */ + .time_offset = greis_time_offset, +#endif +#endif /* TIMEHINT_ENABLE */ +/* *INDENT-ON* */ +}; +#endif /* defined(GREIS_ENABLE) && defined(BINARY_ENABLE) */ diff --git a/driver_greis.h b/driver_greis.h new file mode 100644 index 00000000..ccd73e58 --- /dev/null +++ b/driver_greis.h @@ -0,0 +1,6 @@ +#ifndef _DRIVER_GREIS_H_ +#define _DRIVER_GREIS_H_ + +unsigned char greis_checksum(const unsigned char *src, int count); + +#endif /* _DRIVER_GREIS_H_ */ diff --git a/driver_greis_checksum.c b/driver_greis_checksum.c new file mode 100644 index 00000000..e7f69518 --- /dev/null +++ b/driver_greis_checksum.c @@ -0,0 +1,24 @@ +/* + * Checksum for the GNSS Receiver External Interface Specification (GREIS). + * + * This file is Copyright (c) 2017 Virgin Orbit + * SPDX-License-Identifier: BSD-2-clause + */ + +#include <limits.h> + +#include "driver_greis.h" + +static inline unsigned char greis_rotate_left(unsigned char val) +{ + /* left circular rotation by two bits */ + return (val << 2) | (val >> (CHAR_BIT - 2)); +} + +unsigned char greis_checksum(const unsigned char *src, int count) +{ + unsigned char res = 0; + while (count--) + res = greis_rotate_left(res) ^ *src++; + return greis_rotate_left(res); +} @@ -242,6 +242,15 @@ static void nmea_event_hook(struct gps_device_t *session, event_t event) (void)nmea_send(session, "$PMTK605"); break; #endif /* MTK3301_ENABLE */ +#ifdef GREIS_ENABLE + case 9: + /* probe for Javad GREIS -- expect reply with JAVAD */ + gpsd_log(&session->context->errout, LOG_PROG, + "=> Probing for Javad GREIS\n"); + /* TODO: confirm this actually gets JAVAD response */ + (void)nmea_send(session, "print,/par/rcv/vendor"); + break; +#endif /* GREIS_ENABLE */ default: break; } @@ -1741,6 +1750,7 @@ extern const struct gps_type_t driver_evermore; extern const struct gps_type_t driver_garmin_ser_binary; extern const struct gps_type_t driver_garmin_usb_binary; extern const struct gps_type_t driver_geostar; +extern const struct gps_type_t driver_greis; extern const struct gps_type_t driver_italk; extern const struct gps_type_t driver_navcom; extern const struct gps_type_t driver_nmea2000; @@ -1803,6 +1813,9 @@ static const struct gps_type_t *gpsd_driver_array[] = { #ifdef GEOSTAR_ENABLE &driver_geostar, #endif /* GEOSTAR_ENABLE */ +#ifdef GREIS_ENABLE + &driver_greis, +#endif /* GREIS_ENABLE */ #ifdef ITRAX_ENABLE &driver_italk, #endif /* ITRAX_ENABLE */ @@ -70,9 +70,23 @@ extern "C" { #ifdef EARTHMATE_ENABLE #define ZODIAC_ENABLE #endif -#if defined(ZODIAC_ENABLE) || defined(SIRF_ENABLE) || defined(GARMIN_ENABLE) || defined(TSIP_ENABLE) || defined(EVERMORE_ENABLE) || defined(ITRAX_ENABLE) || defined(UBLOX_ENABLE) || defined(SUPERSTAR2_ENABLE) || defined(ONCORE_ENABLE) || defined(GEOSTAR_ENABLE) || defined(NAVCOM_ENABLE) || defined(NMEA2000_ENABLE) + +#if defined(EVERMORE_ENABLE) || \ + defined(GARMIN_ENABLE) || \ + defined(GEOSTAR_ENABLE) || \ + defined(GREIS_ENABLE) || \ + defined(ITRAX_ENABLE) || \ + defined(NAVCOM_ENABLE) || \ + defined(NMEA2000_ENABLE) || \ + defined(ONCORE_ENABLE) || \ + defined(SIRF_ENABLE) || \ + defined(SUPERSTAR2_ENABLE) || \ + defined(TSIP_ENABLE) || \ + defined(UBLOX_ENABLE) || \ + defined(ZODIAC_ENABLE) #define BINARY_ENABLE #endif + #if defined(TRIPMATE_ENABLE) || defined(BINARY_ENABLE) #define NON_NMEA0183_ENABLE #endif @@ -163,12 +177,13 @@ struct gps_lexer_t { #define ONCORE_PACKET 13 #define GEOSTAR_PACKET 14 #define NMEA2000_PACKET 15 -#define MAX_GPSPACKET_TYPE 15 /* increment this as necessary */ -#define RTCM2_PACKET 16 -#define RTCM3_PACKET 17 -#define JSON_PACKET 18 -#define PACKET_TYPES 19 /* increment this as necessary */ -#define SKY_PACKET 20 +#define GREIS_PACKET 16 +#define MAX_GPSPACKET_TYPE 16 /* increment this as necessary */ +#define RTCM2_PACKET 17 +#define RTCM3_PACKET 18 +#define JSON_PACKET 19 +#define PACKET_TYPES 20 /* increment this as necessary */ +#define SKY_PACKET 21 #define TEXTUAL_PACKET_TYPE(n) ((((n)>=NMEA_PACKET) && ((n)<=MAX_TEXTUAL_TYPE)) || (n)==JSON_PACKET) #define GPS_PACKET_TYPE(n) (((n)>=NMEA_PACKET) && ((n)<=MAX_GPSPACKET_TYPE)) #define LOSSLESS_PACKET_TYPE(n) (((n)>=RTCM2_PACKET) && ((n)<=RTCM3_PACKET)) @@ -582,6 +597,17 @@ struct gps_device_t { unsigned int physical_port; } geostar; #endif /* GEOSTAR_ENABLE */ +#ifdef GREIS_ENABLE + struct { + uint32_t rt_tod; /* RT message time of day (modulo 1 day) */ + bool seen_rt; /* true if seen RT message */ + bool seen_uo; /* true if seen UO message */ + bool seen_si; /* true if seen SI message */ + bool seen_az; /* true if seen AZ message */ + bool seen_ec; /* true if seen EC message */ + bool seen_el; /* true if seen EL message */ + } greis; +#endif /* GREIS_ENABLE */ #ifdef SIRF_ENABLE struct { unsigned int need_ack; /* if NZ we're awaiting ACK */ @@ -38,6 +38,7 @@ PERMISSIONS #include <unistd.h> #include "bits.h" +#include "driver_greis.h" #include "gpsd.h" #include "crc24q.h" #include "strfuncs.h" @@ -196,6 +197,23 @@ static size_t oncore_payload_cksum_length(unsigned char id1, unsigned char id2) } #endif /* ONCORE_ENABLE */ +#ifdef GREIS_ENABLE + +static unsigned long greis_hex2bin(char c) +/* Convert hex char to binary form. Requires that c be a hex char. */ +{ + if ((c >= 'a') && (c <= 'f')) + c = c + 10 - 'a'; + else if ((c >= 'A') && (c <= 'F')) + c = c + 10 - 'A'; + else if ((c >= '0') && (c <= '9')) + c -= '0'; + + return c; +} + +#endif /* GREIS_ENABLE */ + static bool character_pushback(struct gps_lexer_t *lexer, unsigned int newstate) /* push back the last character grabbed, setting a specified state */ { @@ -215,6 +233,21 @@ static bool character_pushback(struct gps_lexer_t *lexer, unsigned int newstate) return false; } +static void character_discard(struct gps_lexer_t *lexer) +/* shift the input buffer to discard one character and reread data */ +{ + memmove(lexer->inbuffer, lexer->inbuffer + 1, (size_t)-- lexer->inbuflen); + lexer->inbufptr = lexer->inbuffer; + if (lexer->errout.debug >= LOG_RAW+1) { + char scratchbuf[MAX_PACKET_LENGTH*4+1]; + gpsd_log(&lexer->errout, LOG_RAW + 1, + "Character discarded, buffer %zu chars = %s\n", + lexer->inbuflen, + gpsd_packetdump(scratchbuf, sizeof(scratchbuf), + (char *)lexer->inbuffer, lexer->inbuflen)); + } +} + static bool nextstate(struct gps_lexer_t *lexer, unsigned char c) { static int n = 0; @@ -329,6 +362,17 @@ static bool nextstate(struct gps_lexer_t *lexer, unsigned char c) break; } #endif /* GEOSTAR_ENABLE */ +#ifdef GREIS_ENABLE + if (c == 'R') { + lexer->state = GREIS_REPLY_1; + break; + } + /* Not the only possibility, but it is a distinctive cycle starter. */ + if (c == '~') { + lexer->state = GREIS_ID_1; + break; + } +#endif /* GREIS_ENABLE */ #ifdef RTCM104V2_ENABLE if ((isgpsstat = rtcm2_decode(lexer, c)) == ISGPS_SYNC) { lexer->state = RTCM2_SYNC_STATE; @@ -1360,6 +1404,57 @@ static bool nextstate(struct gps_lexer_t *lexer, unsigned char c) return character_pushback(lexer, GROUND_STATE); break; #endif /* GEOSTAR_ENABLE */ +#ifdef GREIS_ENABLE + case GREIS_EXPECTED: + case GREIS_RECOGNIZED: + if (!isascii(c)) { + return character_pushback(lexer, GROUND_STATE); + } else if (c == '#') { + /* Probably a comment used by the testsuite */ + lexer->state = COMMENT_BODY; + } else if (c == '\r' || c == '\n') { + /* Arbitrary CR/LF allowed here, so continue to expect GREIS */ + lexer->state = GREIS_EXPECTED; + character_discard(lexer); + } else { + lexer->state = GREIS_ID_1; + } + break; + case GREIS_REPLY_1: + if (c != 'E') + return character_pushback(lexer, GROUND_STATE); + lexer->state = GREIS_REPLY_2; + break; + case GREIS_ID_1: + if (!isascii(c)) + return character_pushback(lexer, GROUND_STATE); + lexer->state = GREIS_ID_2; + break; + case GREIS_REPLY_2: + case GREIS_ID_2: + if (!isxdigit(c)) + return character_pushback(lexer, GROUND_STATE); + lexer->length = greis_hex2bin(c) << 8; + lexer->state = GREIS_LENGTH_1; + break; + case GREIS_LENGTH_1: + if (!isxdigit(c)) + return character_pushback(lexer, GROUND_STATE); + lexer->length += greis_hex2bin(c) << 4; + lexer->state = GREIS_LENGTH_2; + break; + case GREIS_LENGTH_2: + if (!isxdigit(c)) + return character_pushback(lexer, GROUND_STATE); + lexer->length += greis_hex2bin(c); + lexer->state = GREIS_PAYLOAD; + break; + case GREIS_PAYLOAD: + if (--lexer->length == 0) + lexer->state = GREIS_RECOGNIZED; + /* else stay in payload state */ + break; +#endif /* GREIS_ENABLE */ #ifdef TSIP_ENABLE case TSIP_LEADER: /* unused case */ @@ -1619,21 +1714,6 @@ static void packet_unstash(struct gps_lexer_t *lexer) } #endif /* STASH_ENABLE */ -static void character_discard(struct gps_lexer_t *lexer) -/* shift the input buffer to discard one character and reread data */ -{ - memmove(lexer->inbuffer, lexer->inbuffer + 1, (size_t)-- lexer->inbuflen); - lexer->inbufptr = lexer->inbuffer; - if (lexer->errout.debug >= LOG_RAW+1) { - char scratchbuf[MAX_PACKET_LENGTH*4+1]; - gpsd_log(&lexer->errout, LOG_RAW + 1, - "Character discarded, buffer %zu chars = %s\n", - lexer->inbuflen, - gpsd_packetdump(scratchbuf, sizeof(scratchbuf), - (char *)lexer->inbuffer, lexer->inbuflen)); - } -} - /* get 0-origin big-endian words relative to start of packet buffer */ #define getword(i) (short)(lexer->inbuffer[2*(i)] | (lexer->inbuffer[2*(i)+1] << 8)) @@ -2298,6 +2378,49 @@ void packet_parse(struct gps_lexer_t *lexer) break; } #endif /* GEOSTAR_ENABLE */ +#ifdef GREIS_ENABLE + else if (lexer->state == GREIS_RECOGNIZED) { + int len = lexer->inbufptr - lexer->inbuffer; + + if (lexer->inbuffer[0] == 'R' && lexer->inbuffer[1] == 'E') { + /* Replies don't have checksum */ + gpsd_log(&lexer->errout, LOG_IO, + "Accept GREIS reply packet len %d\n", len); + packet_accept(lexer, GREIS_PACKET); + } else if (lexer->inbuffer[0] == 'E' && lexer->inbuffer[1] == 'R') { + /* Error messages don't have checksum */ + gpsd_log(&lexer->errout, LOG_IO, + "Accept GREIS error packet len %d\n", len); + packet_accept(lexer, GREIS_PACKET); + } else { + unsigned char expected_cs = lexer->inbuffer[len - 1]; + unsigned char cs = greis_checksum(lexer->inbuffer, len - 1); + + if (cs == expected_cs) { + gpsd_log(&lexer->errout, LOG_IO, + "Accept GREIS packet type '%c%c' len %d\n", + lexer->inbuffer[0], lexer->inbuffer[1], len); + packet_accept(lexer, GREIS_PACKET); + } else { + /* + * Print hex instead of raw characters, since they might be + * unprintable. If \0, it will even mess up the log output. + */ + gpsd_log(&lexer->errout, LOG_IO, + "REJECT GREIS len %d." + " Bad checksum %#02x, expecting %#02x." + " Packet type in hex: 0x%02x%02x", + len, cs, expected_cs, lexer->inbuffer[0], + lexer->inbuffer[1]); + packet_accept(lexer, BAD_PACKET); + /* got this far, fair to expect we will get more GREIS */ + lexer->state = GREIS_EXPECTED; + } + } + packet_discard(lexer); + break; + } +#endif /* GREIS_ENABLE */ #ifdef RTCM104V2_ENABLE else if (lexer->state == RTCM2_RECOGNIZED) { /* diff --git a/packet_states.h b/packet_states.h index 2f54d5a8..4c3a3208 100644 --- a/packet_states.h +++ b/packet_states.h @@ -183,6 +183,18 @@ GEOSTAR_RECOGNIZED, /* this is also GEOSTAR_CHECKSUM_D */ #endif +#ifdef GREIS_ENABLE + GREIS_EXPECTED, /* expecting GREIS packet */ + GREIS_REPLY_1, /* saw first byte of a reply */ + GREIS_REPLY_2, /* saw second byte of a reply */ + GREIS_ID_1, /* saw first byte of ID */ + GREIS_ID_2, /* saw second byte of ID */ + GREIS_LENGTH_1, /* saw first length byte */ + GREIS_LENGTH_2, /* saw second length byte */ + GREIS_PAYLOAD, /* we're in a GREIS payload */ + GREIS_RECOGNIZED, /* found end of the GREIS packet */ +#endif + /* * Packet formats without checksums start here. We list them last so * that if a format with a conflicting structure *and* a checksum can diff --git a/test/daemon/greis-binary.log b/test/daemon/greis-binary.log Binary files differnew file mode 100644 index 00000000..434c10f9 --- /dev/null +++ b/test/daemon/greis-binary.log diff --git a/test/daemon/greis-binary.log.chk b/test/daemon/greis-binary.log.chk new file mode 100644 index 00000000..e3869335 --- /dev/null +++ b/test/daemon/greis-binary.log.chk @@ -0,0 +1,396 @@ +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033459,0.78,M,0.78,M,1.87,M*38 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:34:59.500Z","ept":0.005,"lat":33.824362434,"lon":-118.146965011,"alt":18.978,"epx":0.778,"epy":0.778,"epv":1.870,"track":246.7599,"speed":0.008,"climb":0.011,"eps":0.02,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033459,0.78,M,0.78,M,1.87,M*38 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,39,81,12,052,45*74 +$GPGSV,5,4,20,135,48,206,52,72,58,018,50,28,57,252,46,11,20,120,40*4C +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:34:59.750Z","ept":0.005,"lat":33.824362427,"lon":-118.146964990,"alt":18.979,"epx":0.779,"epy":0.779,"epv":1.872,"track":322.2664,"speed":0.004,"climb":-0.003,"eps":0.01,"epc":89.11,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.00,"ecefvy":0.01,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":50,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033500,0.78,M,0.78,M,1.87,M*35 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:00.000Z","ept":0.005,"lat":33.824362427,"lon":-118.146964983,"alt":18.980,"epx":0.779,"epy":0.779,"epv":1.874,"track":70.2452,"speed":0.015,"climb":-0.001,"eps":0.02,"epc":89.12,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033500,0.78,M,0.78,M,1.88,M*3A +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,50,28,57,252,46,11,20,120,40*4C +$GPGSV,5,5,20,30,58,332,47,77,32,304,45,17,08,190,45,131,51,178,48*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:00.250Z","ept":0.005,"lat":33.824362425,"lon":-118.146964989,"alt":18.978,"epx":0.781,"epy":0.781,"epv":1.878,"track":225.1132,"speed":0.006,"climb":-0.005,"eps":0.01,"epc":89.13,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":-0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":50,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":47,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033500,0.78,M,0.78,M,1.88,M*3A +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,50,28,57,252,46,11,20,120,40*4C +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:00.500Z","ept":0.005,"lat":33.824362424,"lon":-118.146964953,"alt":18.980,"epx":0.781,"epy":0.781,"epv":1.877,"track":340.9262,"speed":0.002,"climb":-0.001,"eps":0.02,"epc":89.14,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":50,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033500,0.78,M,0.78,M,1.88,M*3A +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,47,77,32,304,45,17,08,190,45,131,51,178,48*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:00.750Z","ept":0.005,"lat":33.824362415,"lon":-118.146964959,"alt":18.984,"epx":0.781,"epy":0.781,"epv":1.879,"track":102.4965,"speed":0.001,"climb":0.029,"eps":0.02,"epc":89.14,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.01,"ecefvy":-0.02,"ecefvz":0.02,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":47,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033501,0.78,M,0.78,M,1.88,M*3B +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:01.000Z","ept":0.005,"lat":33.824362409,"lon":-118.146964952,"alt":18.982,"epx":0.783,"epy":0.783,"epv":1.883,"track":208.0892,"speed":0.003,"climb":0.010,"eps":0.02,"epc":89.15,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033501,0.78,M,0.78,M,1.88,M*3B +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,47,77,32,304,45,17,08,190,45,131,51,178,48*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:01.250Z","ept":0.005,"lat":33.824362415,"lon":-118.146964965,"alt":18.978,"epx":0.783,"epy":0.783,"epv":1.884,"track":146.6911,"speed":0.003,"climb":-0.001,"eps":0.02,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":0.00,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":47,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033501,0.78,M,0.78,M,1.88,M*3B +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,47,77,32,304,45,17,08,190,46,131,51,178,48*42 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:01.500Z","ept":0.005,"lat":33.824362417,"lon":-118.146964953,"alt":18.981,"epx":0.783,"epy":0.783,"epv":1.882,"track":303.1285,"speed":0.005,"climb":-0.002,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":47,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033501,0.78,M,0.78,M,1.88,M*3B +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,39,81,12,052,45*74 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:01.750Z","ept":0.005,"lat":33.824362413,"lon":-118.146964955,"alt":18.981,"epx":0.783,"epy":0.783,"epv":1.883,"track":8.4332,"speed":0.004,"climb":-0.009,"eps":0.02,"epc":89.16,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":0.01,"ecefvy":0.01,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033502,0.78,M,0.78,M,1.88,M*38 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:02.000Z","ept":0.005,"lat":33.824362409,"lon":-118.146964966,"alt":18.981,"epx":0.783,"epy":0.783,"epv":1.884,"track":275.6307,"speed":0.009,"climb":0.007,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033502,0.78,M,0.78,M,1.88,M*38 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,39,81,12,052,45*75 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:02.250Z","ept":0.005,"lat":33.824362405,"lon":-118.146964960,"alt":18.978,"epx":0.783,"epy":0.783,"epv":1.883,"track":217.0899,"speed":0.005,"climb":0.004,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033502,0.78,M,0.78,M,1.88,M*38 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:02.500Z","ept":0.005,"lat":33.824362408,"lon":-118.146964945,"alt":18.976,"epx":0.783,"epy":0.783,"epv":1.882,"track":24.9792,"speed":0.002,"climb":0.003,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":0.00,"ecefvy":-0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033502,0.78,M,0.78,M,1.88,M*38 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:02.750Z","ept":0.005,"lat":33.824362407,"lon":-118.146964962,"alt":18.976,"epx":0.783,"epy":0.783,"epv":1.882,"track":204.9180,"speed":0.006,"climb":-0.001,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033503,0.78,M,0.78,M,1.88,M*39 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,40,81,12,052,45*7B +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:03.000Z","ept":0.005,"lat":33.824362414,"lon":-118.146964973,"alt":18.977,"epx":0.782,"epy":0.782,"epv":1.881,"track":281.1698,"speed":0.009,"climb":0.005,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.38,"ecefvx":-0.01,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033503,0.78,M,0.78,M,1.88,M*39 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,41*45 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:03.250Z","ept":0.005,"lat":33.824362418,"lon":-118.146964970,"alt":18.974,"epx":0.783,"epy":0.783,"epv":1.883,"track":64.3733,"speed":0.006,"climb":-0.000,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":41,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033503,0.78,M,0.78,M,1.88,M*39 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,46,23,16,150,46*4F +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:03.500Z","ept":0.005,"lat":33.824362400,"lon":-118.146964956,"alt":18.976,"epx":0.783,"epy":0.783,"epv":1.882,"track":302.5924,"speed":0.009,"climb":-0.006,"eps":0.02,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":0.01,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":46,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033503,0.78,M,0.78,M,1.88,M*39 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:03.750Z","ept":0.005,"lat":33.824362393,"lon":-118.146964954,"alt":18.975,"epx":0.783,"epy":0.783,"epv":1.883,"track":228.6357,"speed":0.007,"climb":0.005,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033504,0.78,M,0.78,M,1.88,M*3E +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,40,81,12,052,45*7B +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:04.000Z","ept":0.005,"lat":33.824362385,"lon":-118.146964944,"alt":18.975,"epx":0.783,"epy":0.783,"epv":1.884,"track":261.6930,"speed":0.006,"climb":0.012,"eps":0.01,"epc":89.17,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033504,0.78,M,0.78,M,1.88,M*3E +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:04.250Z","ept":0.005,"lat":33.824362378,"lon":-118.146964949,"alt":18.972,"epx":0.784,"epy":0.784,"epv":1.885,"track":120.1242,"speed":0.006,"climb":0.000,"eps":0.01,"epc":89.18,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.00,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033504,0.78,M,0.78,M,1.89,M*3F +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:04.500Z","ept":0.005,"lat":33.824362373,"lon":-118.146964937,"alt":18.975,"epx":0.785,"epy":0.785,"epv":1.887,"track":268.7549,"speed":0.003,"climb":0.005,"eps":0.02,"epc":89.18,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":-0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033504,0.78,M,0.78,M,1.89,M*3F +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,39,81,12,052,45*74 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:04.750Z","ept":0.005,"lat":33.824362366,"lon":-118.146964912,"alt":18.975,"epx":0.784,"epy":0.784,"epv":1.886,"track":271.8614,"speed":0.002,"climb":-0.011,"eps":0.01,"epc":89.19,"ecefx":-2502136.43,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.00,"ecefvy":0.01,"ecefvz":-0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033505,0.78,M,0.78,M,1.88,M*3F +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,50,28,57,252,46,11,20,120,40*4C +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:05.000Z","ept":0.005,"lat":33.824362366,"lon":-118.146964919,"alt":18.974,"epx":0.784,"epy":0.784,"epv":1.885,"track":183.0000,"speed":0.003,"climb":-0.006,"eps":0.01,"epc":89.19,"ecefx":-2502136.43,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":-0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":50,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033505,0.78,M,0.78,M,1.89,M*3E +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,48*4E +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:05.250Z","ept":0.005,"lat":33.824362365,"lon":-118.146964915,"alt":18.975,"epx":0.784,"epy":0.784,"epv":1.886,"track":47.3081,"speed":0.010,"climb":-0.009,"eps":0.01,"epc":89.18,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.01,"ecefvy":0.01,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033505,0.78,M,0.78,M,1.89,M*3E +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:05.500Z","ept":0.005,"lat":33.824362376,"lon":-118.146964933,"alt":18.974,"epx":0.784,"epy":0.784,"epv":1.887,"track":262.2943,"speed":0.011,"climb":0.012,"eps":0.02,"epc":89.19,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033505,0.78,M,0.78,M,1.89,M*3E +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:05.750Z","ept":0.005,"lat":33.824362378,"lon":-118.146964898,"alt":18.973,"epx":0.784,"epy":0.784,"epv":1.885,"track":52.9844,"speed":0.004,"climb":0.008,"eps":0.02,"epc":89.19,"ecefx":-2502136.43,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033506,0.78,M,0.78,M,1.89,M*3D +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:06.000Z","ept":0.005,"lat":33.824362378,"lon":-118.146964887,"alt":18.974,"epx":0.785,"epy":0.785,"epv":1.887,"track":68.5289,"speed":0.014,"climb":-0.017,"eps":0.02,"epc":89.19,"ecefx":-2502136.43,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.02,"ecefvy":0.01,"ecefvz":-0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033506,0.78,M,0.78,M,1.89,M*3D +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:06.250Z","ept":0.005,"lat":33.824362377,"lon":-118.146964924,"alt":18.974,"epx":0.785,"epy":0.785,"epv":1.888,"track":222.7918,"speed":0.006,"climb":0.004,"eps":0.02,"epc":89.20,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033506,0.79,M,0.79,M,1.89,M*3D +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:06.500Z","ept":0.005,"lat":33.824362379,"lon":-118.146964925,"alt":18.975,"epx":0.785,"epy":0.785,"epv":1.889,"track":219.9662,"speed":0.006,"climb":0.013,"eps":0.02,"epc":89.20,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033506,0.78,M,0.78,M,1.89,M*3D +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,46,78,53,234,55,100,43,286,48,27,09,038,42*42 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:06.750Z","ept":0.005,"lat":33.824362386,"lon":-118.146964934,"alt":18.973,"epx":0.784,"epy":0.784,"epv":1.885,"track":321.6895,"speed":0.002,"climb":-0.006,"eps":0.02,"epc":89.21,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.00,"ecefvy":0.01,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":46,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033507,0.78,M,0.78,M,1.89,M*3C +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:07.000Z","ept":0.005,"lat":33.824362400,"lon":-118.146964929,"alt":18.975,"epx":0.785,"epy":0.785,"epv":1.887,"track":50.2613,"speed":0.006,"climb":-0.001,"eps":0.02,"epc":89.19,"ecefx":-2502136.43,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.01,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033507,0.79,M,0.79,M,1.89,M*3C +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,49,13,06,320,40,81,12,052,45*7A +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:07.250Z","ept":0.005,"lat":33.824362400,"lon":-118.146964946,"alt":18.976,"epx":0.785,"epy":0.785,"epv":1.888,"track":213.3380,"speed":0.007,"climb":0.014,"eps":0.02,"epc":89.20,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":49,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033507,0.79,M,0.79,M,1.89,M*3C +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,45*4D +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,40,81,12,052,45*7B +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:07.500Z","ept":0.005,"lat":33.824362398,"lon":-118.146964950,"alt":18.973,"epx":0.785,"epy":0.785,"epv":1.889,"track":331.4661,"speed":0.006,"climb":0.003,"eps":0.01,"epc":89.20,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":45,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033507,0.78,M,0.78,M,1.89,M*3C +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,45*4D +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,40,81,12,052,45*7B +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:07.750Z","ept":0.005,"lat":33.824362403,"lon":-118.146964948,"alt":18.974,"epx":0.785,"epy":0.785,"epv":1.887,"track":315.4742,"speed":0.004,"climb":-0.000,"eps":0.02,"epc":89.21,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":45,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033508,0.78,M,0.78,M,1.89,M*33 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,40,81,12,052,45*7B +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:08.000Z","ept":0.005,"lat":33.824362401,"lon":-118.146964954,"alt":18.972,"epx":0.785,"epy":0.785,"epv":1.887,"track":205.6836,"speed":0.006,"climb":-0.003,"eps":0.01,"epc":89.20,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":-0.01,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033508,0.79,M,0.79,M,1.89,M*33 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,40,81,12,052,45*7B +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,47*42 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:08.250Z","ept":0.005,"lat":33.824362409,"lon":-118.146964952,"alt":18.973,"epx":0.786,"epy":0.786,"epv":1.891,"track":352.4279,"speed":0.002,"climb":0.001,"eps":0.02,"epc":89.20,"ecefx":-2502136.44,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":0.90,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033508,0.79,M,0.79,M,1.89,M*33 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,45*4D +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,39,81,12,052,45*75 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:08.500Z","ept":0.005,"lat":33.824362410,"lon":-118.146964942,"alt":18.969,"epx":0.786,"epy":0.786,"epv":1.890,"track":12.1304,"speed":0.004,"climb":-0.004,"eps":0.02,"epc":89.22,"ecefx":-2502136.43,"ecefy":-4676854.47,"ecefz":3530271.37,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":45,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033508,0.79,M,0.79,M,1.89,M*33 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,45*4D +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,40,81,12,052,45*7B +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,47*42 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:08.750Z","ept":0.005,"lat":33.824362419,"lon":-118.146964949,"alt":18.971,"epx":0.785,"epy":0.785,"epv":1.889,"track":328.4066,"speed":0.005,"climb":-0.013,"eps":0.01,"epc":89.21,"ecefx":-2502136.43,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":0.00,"ecefvy":0.01,"ecefvz":-0.00,"ecefpAcc":0.89,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":45,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033509,0.79,M,0.79,M,1.89,M*32 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,39,81,12,052,45*75 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,47*42 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:09.000Z","ept":0.005,"lat":33.824362406,"lon":-118.146964935,"alt":18.970,"epx":0.786,"epy":0.786,"epv":1.892,"track":237.3799,"speed":0.011,"climb":-0.002,"eps":0.02,"epc":89.21,"ecefx":-2502136.43,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.01,"ecefvy":0.00,"ecefvz":-0.01,"ecefpAcc":0.90,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033509,0.79,M,0.79,M,1.89,M*32 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,39,81,12,052,45*75 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,47*42 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:09.250Z","ept":0.005,"lat":33.824362422,"lon":-118.146964927,"alt":18.970,"epx":0.787,"epy":0.787,"epv":1.893,"track":151.7353,"speed":0.004,"climb":0.005,"eps":0.01,"epc":89.22,"ecefx":-2502136.43,"ecefy":-4676854.48,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":0.90,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033509,0.79,M,0.79,M,1.89,M*32 +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,46*4E +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,39,81,12,052,46*76 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:09.500Z","ept":0.005,"lat":33.824362431,"lon":-118.146964921,"alt":18.968,"epx":0.787,"epy":0.787,"epv":1.894,"track":79.9734,"speed":0.006,"climb":-0.004,"eps":0.02,"epc":89.23,"ecefx":-2502136.43,"ecefy":-4676854.47,"ecefz":3530271.37,"ecefvx":0.01,"ecefvy":0.00,"ecefvz":-0.00,"ecefpAcc":0.90,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":46,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":46,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033509,0.79,M,0.79,M,1.90,M*3A +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,45*4D +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,40,81,12,052,45*7B +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,45,11,20,120,40*47 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:09.750Z","ept":0.005,"lat":33.824362428,"lon":-118.146964920,"alt":18.968,"epx":0.788,"epy":0.788,"epv":1.896,"track":176.2835,"speed":0.003,"climb":0.013,"eps":0.02,"epc":89.23,"ecefx":-2502136.43,"ecefy":-4676854.47,"ecefz":3530271.37,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":0.90,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":45,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":40,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":45,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033510,0.79,M,0.79,M,1.89,M*3A +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,45*4D +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,39,81,12,052,45*75 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,46,11,20,120,40*44 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,45,131,51,178,47*41 +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:10.000Z","ept":0.005,"lat":33.824362427,"lon":-118.146964912,"alt":18.969,"epx":0.787,"epy":0.787,"epv":1.893,"track":178.1227,"speed":0.005,"climb":0.004,"eps":0.01,"epc":89.24,"ecefx":-2502136.43,"ecefy":-4676854.47,"ecefz":3530271.37,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":0.90,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":45,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":46,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":45,"used":true},{"PRN":131,"el":51,"az":178,"ss":47,"used":false}]} +$GPGSA,A,3,73,8,23,7,78,100,27,5,9,13,81,,1.1,0.6,0.9*0B +$GPGBS,033510,0.79,M,0.79,M,1.89,M*3A +$GPGSV,5,1,20,138,49,160,47,73,23,176,47,08,38,062,47,23,16,150,45*4D +$GPGSV,5,2,20,07,63,036,47,78,53,234,55,100,43,286,48,27,09,038,42*43 +$GPGSV,5,3,20,05,16,288,50,09,48,160,48,13,06,320,39,81,12,052,45*75 +$GPGSV,5,4,20,135,48,206,52,72,58,018,49,28,57,252,45,11,20,120,40*47 +$GPGSV,5,5,20,30,58,332,48,77,32,304,45,17,08,190,46,131,51,178,48*4D +{"class":"TPV","mode":3,"time":"2017-12-16T03:35:10.250Z","ept":0.005,"lat":33.824362426,"lon":-118.146964903,"alt":18.967,"epx":0.788,"epy":0.788,"epv":1.895,"track":138.6290,"speed":0.003,"climb":-0.017,"eps":0.01,"epc":89.23,"ecefx":-2502136.43,"ecefy":-4676854.47,"ecefz":3530271.37,"ecefvx":0.01,"ecefvy":0.01,"ecefvz":-0.01,"ecefpAcc":0.90,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.44,"ydop":0.41,"vdop":0.89,"tdop":0.52,"hdop":0.61,"gdop":1.18,"pdop":1.08,"satellites":[{"PRN":138,"el":49,"az":160,"ss":47,"used":false},{"PRN":73,"el":23,"az":176,"ss":47,"used":true},{"PRN":8,"el":38,"az":62,"ss":47,"used":true},{"PRN":23,"el":16,"az":150,"ss":45,"used":true},{"PRN":7,"el":63,"az":36,"ss":47,"used":true},{"PRN":78,"el":53,"az":234,"ss":55,"used":true},{"PRN":100,"el":43,"az":286,"ss":48,"used":true},{"PRN":27,"el":9,"az":38,"ss":42,"used":true},{"PRN":5,"el":16,"az":288,"ss":50,"used":true},{"PRN":9,"el":48,"az":160,"ss":48,"used":true},{"PRN":13,"el":6,"az":320,"ss":39,"used":true},{"PRN":81,"el":12,"az":52,"ss":45,"used":true},{"PRN":135,"el":48,"az":206,"ss":52,"used":false},{"PRN":72,"el":58,"az":18,"ss":49,"used":true},{"PRN":28,"el":57,"az":252,"ss":45,"used":true},{"PRN":11,"el":20,"az":120,"ss":40,"used":true},{"PRN":30,"el":58,"az":332,"ss":48,"used":true},{"PRN":77,"el":32,"az":304,"ss":45,"used":true},{"PRN":17,"el":8,"az":190,"ss":46,"used":true},{"PRN":131,"el":51,"az":178,"ss":48,"used":false}]} diff --git a/test/daemon/greis-def.log b/test/daemon/greis-def.log Binary files differnew file mode 100644 index 00000000..ac9ab0fa --- /dev/null +++ b/test/daemon/greis-def.log diff --git a/test/daemon/greis-def.log.chk b/test/daemon/greis-def.log.chk new file mode 100644 index 00000000..4b77b5a6 --- /dev/null +++ b/test/daemon/greis-def.log.chk @@ -0,0 +1,12 @@ +{"class":"TPV","mode":3,"lat":44.068805974,"lon":-121.314086601,"alt":1126.266,"epv":47.256,"track":137.6697,"speed":0.023,"climb":0.056,"ecefx":-2386054.27,"ecefy":-3922197.23,"ecefz":4414357.28,"ecefvx":-0.01,"ecefvy":-0.05,"ecefvz":0.03,"ecefpAcc":0.94,"ecefvAcc":0.02} +{"class":"TPV","mode":3,"lat":44.068805962,"lon":-121.314086676,"alt":1126.266,"epv":47.256,"track":292.8276,"speed":0.014,"climb":0.025,"ecefx":-2386054.28,"ecefy":-3922197.22,"ecefz":4414357.28,"ecefvx":-0.02,"ecefvy":-0.01,"ecefvz":0.02,"ecefpAcc":0.95,"ecefvAcc":0.05} +{"class":"TPV","mode":3,"lat":44.068806050,"lon":-121.314086777,"alt":1126.240,"epv":47.250,"track":274.6931,"speed":0.014,"climb":-0.014,"ecefx":-2386054.27,"ecefy":-3922197.20,"ecefz":4414357.27,"ecefvx":-0.01,"ecefvy":0.02,"ecefvz":-0.01,"ecefpAcc":0.95,"ecefvAcc":0.03} +{"class":"TPV","mode":3,"lat":44.068806145,"lon":-121.314086851,"alt":1126.229,"epv":47.245,"track":312.1641,"speed":0.021,"climb":-0.016,"ecefx":-2386054.27,"ecefy":-3922197.18,"ecefz":4414357.27,"ecefvx":-0.00,"ecefvy":0.03,"ecefvz":-0.00,"ecefpAcc":0.95,"ecefvAcc":0.02} +{"class":"TPV","mode":3,"lat":44.068806241,"lon":-121.314086973,"alt":1126.213,"epv":47.239,"track":260.1358,"speed":0.012,"climb":0.017,"ecefx":-2386054.27,"ecefy":-3922197.16,"ecefz":4414357.26,"ecefvx":-0.02,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":0.95,"ecefvAcc":0.01} +{"class":"TPV","mode":3,"lat":44.068806314,"lon":-121.314087011,"alt":1126.199,"epv":47.233,"track":131.4374,"speed":0.025,"climb":0.030,"ecefx":-2386054.26,"ecefy":-3922197.15,"ecefz":4414357.26,"ecefvx":-0.00,"ecefvy":-0.04,"ecefvz":0.01,"ecefpAcc":0.96,"ecefvAcc":0.01} +{"class":"TPV","mode":3,"lat":44.068806372,"lon":-121.314087067,"alt":1126.196,"epv":47.227,"track":34.9068,"speed":0.004,"climb":-0.007,"ecefx":-2386054.26,"ecefy":-3922197.14,"ecefz":4414357.26,"ecefvx":0.01,"ecefvy":0.00,"ecefvz":-0.00,"ecefpAcc":0.96,"ecefvAcc":0.02} +{"class":"TPV","mode":3,"lat":44.068806330,"lon":-121.314087036,"alt":1126.222,"epv":47.222,"track":49.2210,"speed":0.006,"climb":0.013,"ecefx":-2386054.27,"ecefy":-3922197.16,"ecefz":4414357.28,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":0.96,"ecefvAcc":0.01} +{"class":"TPV","mode":3,"lat":44.068806380,"lon":-121.314087023,"alt":1126.214,"epv":47.216,"track":347.4476,"speed":0.008,"climb":-0.031,"ecefx":-2386054.26,"ecefy":-3922197.15,"ecefz":4414357.27,"ecefvx":0.01,"ecefvy":0.02,"ecefvz":-0.02,"ecefpAcc":0.96,"ecefvAcc":0.02} +{"class":"TPV","mode":3,"lat":44.068806422,"lon":-121.314087047,"alt":1126.203,"epv":47.210,"track":154.9727,"speed":0.013,"climb":0.016,"ecefx":-2386054.26,"ecefy":-3922197.14,"ecefz":4414357.27,"ecefvx":-0.01,"ecefvy":-0.02,"ecefvz":0.00,"ecefpAcc":0.96,"ecefvAcc":0.01} +{"class":"TPV","mode":3,"lat":44.068806484,"lon":-121.314087076,"alt":1126.187,"epv":47.204,"track":269.6758,"speed":0.010,"climb":0.003,"ecefx":-2386054.25,"ecefy":-3922197.12,"ecefz":4414357.26,"ecefvx":-0.01,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":0.95,"ecefvAcc":0.02} +{"class":"TPV","mode":3,"lat":44.068806573,"lon":-121.314087151,"alt":1126.171,"epv":47.198,"track":320.8655,"speed":0.014,"climb":-0.021,"ecefx":-2386054.25,"ecefy":-3922197.11,"ecefz":4414357.26,"ecefvx":0.00,"ecefvy":0.02,"ecefvz":-0.01,"ecefpAcc":0.96,"ecefvAcc":0.02} diff --git a/test/daemon/greis-reset.log b/test/daemon/greis-reset.log Binary files differnew file mode 100644 index 00000000..f72c819c --- /dev/null +++ b/test/daemon/greis-reset.log diff --git a/test/daemon/greis-reset.log.chk b/test/daemon/greis-reset.log.chk new file mode 100644 index 00000000..639fbce8 --- /dev/null +++ b/test/daemon/greis-reset.log.chk @@ -0,0 +1,741 @@ +$GPGSA,A,3,81,82,94,11,8,13,17,28,30,7,18,,1.8,0.9,1.5*33 +$GPGBS,000000,1.50,M,1.50,M,3.47,M*3E +$GPGSV,4,1,15,81,28,124,42,82,27,064,43,94,35,072,49,11,27,102,47*76 +$GPGSV,4,2,15,08,30,048,42,133,39,192,47,13,40,306,39,17,19,186,45*41 +$GPGSV,4,3,15,28,77,276,50,30,75,076,54,07,49,102,50,18,12,086,41*7A +$GPGSV,4,4,15,131,39,174,46,135,38,196,47,138,37,160,48*70 +{"class":"TPV","mode":3,"lat":44.068791001,"lon":-121.314098950,"alt":1125.595,"epx":1.498,"epy":1.498,"epv":3.468,"track":205.7930,"speed":0.010,"climb":-0.011,"eps":0.04,"ecefx":-2386055.47,"ecefy":-3922197.29,"ecefz":4414355.62,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":-0.01,"ecefpAcc":1.66,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.68,"ydop":0.75,"vdop":1.50,"tdop":1.08,"hdop":0.92,"gdop":2.12,"pdop":1.76,"satellites":[{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":82,"el":27,"az":64,"ss":43,"used":true},{"PRN":94,"el":35,"az":72,"ss":49,"used":true},{"PRN":11,"el":27,"az":102,"ss":47,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":47,"used":false},{"PRN":13,"el":40,"az":306,"ss":39,"used":true},{"PRN":17,"el":19,"az":186,"ss":45,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":54,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":48,"used":true}]} +$GPGSA,A,3,81,82,94,11,8,13,17,28,30,7,18,,1.8,0.9,1.5*33 +$GPGBS,000000,1.52,M,1.52,M,3.52,M*3A +$GPGSV,4,1,15,81,28,124,42,82,27,064,43,94,35,072,49,11,27,102,47*76 +$GPGSV,4,2,15,08,30,048,42,133,39,192,46,13,40,306,39,17,19,186,45*40 +$GPGSV,4,3,15,28,77,276,50,30,75,076,54,07,49,102,50,18,12,086,41*7A +$GPGSV,4,4,15,131,39,174,46,135,38,196,47,138,37,160,48*70 +{"class":"TPV","mode":3,"lat":44.068791177,"lon":-121.314098953,"alt":1125.598,"epx":1.520,"epy":1.520,"epv":3.519,"track":148.5058,"speed":0.019,"climb":0.037,"eps":0.03,"ecefx":-2386055.46,"ecefy":-3922197.28,"ecefz":4414355.63,"ecefvx":-0.01,"ecefvy":-0.04,"ecefvz":0.01,"ecefpAcc":1.68,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.68,"ydop":0.75,"vdop":1.50,"tdop":1.08,"hdop":0.92,"gdop":2.12,"pdop":1.76,"satellites":[{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":82,"el":27,"az":64,"ss":43,"used":true},{"PRN":94,"el":35,"az":72,"ss":49,"used":true},{"PRN":11,"el":27,"az":102,"ss":47,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":39,"used":true},{"PRN":17,"el":19,"az":186,"ss":45,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":54,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":48,"used":true}]} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:19.250Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:19.500Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:19.750Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:20.000Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:20.250Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:20.500Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:20.750Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:21.000Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:21.250Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:21.500Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:21.750Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:22.000Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:22.250Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:22.500Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:22.750Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:23.000Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:23.250Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:23.500Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:23.750Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:24.000Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:24.250Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:24.500Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:24.750Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:25.000Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:25.250Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:26.000Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:26.250Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:26.500Z","ept":0.005} +{"class":"TPV","mode":0,"time":"2018-03-29T21:29:26.750Z","ept":0.005} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,1.4,0.9*0D +$GPGBS,212927,7.80,M,7.80,M,7.48,M*38 +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,44,13,40,306,41*4F +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,57,07,49,102,47*72 +$GPGSV,4,3,13,18,12,086,42,131,39,174,46,135,38,196,47,138,37,160,49*42 +$GPGSV,4,4,13,01,07,108,38*4F +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:27.000Z","ept":0.005,"lat":44.068788735,"lon":-121.314117709,"alt":1146.802,"epx":7.803,"epy":7.803,"epv":7.483,"track":284.3061,"speed":0.003,"climb":0.032,"eps":0.05,"ecefx":-2386064.76,"ecefy":-3922209.68,"ecefz":4414370.18,"ecefvx":-0.01,"ecefvy":-0.02,"ecefvz":0.02,"ecefpAcc":5.44,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":0.94,"tdop":1.01,"hdop":1.39,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":44,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":57,"used":true},{"PRN":7,"el":49,"az":102,"ss":47,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":38,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212927,5.23,M,5.23,M,10.89,M*03 +$GPGSV,4,1,13,11,27,102,45,08,30,048,43,133,39,192,45,13,40,306,41*4F +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,57,07,49,102,47*72 +$GPGSV,4,3,13,18,12,086,42,131,39,174,47,135,38,196,47,138,37,160,49*43 +$GPGSV,4,4,13,01,07,108,38*4F +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:27.250Z","ept":0.005,"lat":44.068788811,"lon":-121.314117892,"alt":1146.620,"epx":5.232,"epy":5.232,"epv":10.887,"track":147.7758,"speed":0.017,"climb":0.022,"eps":0.04,"epc":116.70,"ecefx":-2386064.70,"ecefy":-3922209.55,"ecefz":4414370.06,"ecefvx":-0.01,"ecefvy":-0.03,"ecefvz":0.01,"ecefpAcc":5.37,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":57,"used":true},{"PRN":7,"el":49,"az":102,"ss":47,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":47,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":38,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212927,5.19,M,5.19,M,10.82,M*08 +$GPGSV,4,1,13,11,27,102,45,08,30,048,43,133,39,192,44,13,40,306,42*4D +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,47*73 +$GPGSV,4,3,13,18,12,086,42,131,39,174,47,135,38,196,47,138,37,160,49*43 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:27.500Z","ept":0.005,"lat":44.068788364,"lon":-121.314116991,"alt":1146.493,"epx":5.195,"epy":5.195,"epv":10.816,"track":101.5969,"speed":0.016,"climb":0.009,"eps":0.02,"epc":171.38,"ecefx":-2386064.61,"ecefy":-3922209.54,"ecefz":4414369.94,"ecefvx":0.01,"ecefvy":-0.02,"ecefvz":0.00,"ecefpAcc":5.34,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":44,"used":false},{"PRN":13,"el":40,"az":306,"ss":42,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":47,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":47,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212927,5.17,M,5.17,M,10.78,M*0D +$GPGSV,4,1,13,11,27,102,45,08,30,048,43,133,39,192,45,13,40,306,42*4C +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,47*73 +$GPGSV,4,3,13,18,12,086,42,131,39,174,46,135,38,196,47,138,37,160,49*42 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:27.750Z","ept":0.005,"lat":44.068788872,"lon":-121.314116757,"alt":1146.429,"epx":5.173,"epy":5.173,"epv":10.775,"track":310.0705,"speed":0.002,"climb":-0.009,"eps":0.03,"epc":171.10,"ecefx":-2386064.55,"ecefy":-3922209.48,"ecefz":4414369.94,"ecefvx":0.00,"ecefvy":0.01,"ecefvz":-0.01,"ecefpAcc":5.32,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":42,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":47,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212928,2.06,M,2.06,M,4.30,M*3B +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,45,13,40,306,42*4D +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,47*73 +$GPGSV,4,3,13,18,12,086,42,131,39,174,46,135,38,196,47,138,37,160,50*4A +$GPGSV,4,4,13,01,07,108,38*4F +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:28.000Z","ept":0.005,"lat":44.068787737,"lon":-121.314101623,"alt":1127.050,"epx":2.062,"epy":2.062,"epv":4.300,"track":60.3408,"speed":0.016,"climb":0.001,"eps":0.04,"epc":170.95,"ecefx":-2386056.32,"ecefy":-3922198.29,"ecefz":4414356.37,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":0.01,"ecefpAcc":2.12,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":42,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":47,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":50,"used":true},{"PRN":1,"el":7,"az":108,"ss":38,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212928,2.04,M,2.04,M,4.25,M*3F +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,45,13,40,306,42*4D +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,42,131,39,174,47,135,38,196,47,138,37,160,49*43 +$GPGSV,4,4,13,01,07,108,38*4F +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:28.250Z","ept":0.005,"lat":44.068787761,"lon":-121.314101649,"alt":1126.966,"epx":2.039,"epy":2.039,"epv":4.253,"track":155.2310,"speed":0.021,"climb":0.007,"eps":0.03,"epc":145.05,"ecefx":-2386056.29,"ecefy":-3922198.23,"ecefz":4414356.31,"ecefvx":-0.00,"ecefvy":-0.02,"ecefvz":-0.01,"ecefpAcc":2.10,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":42,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":47,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":38,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212928,2.02,M,2.02,M,4.22,M*38 +$GPGSV,4,1,13,11,27,102,45,08,30,048,43,133,39,192,45,13,40,306,41*4F +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,42,131,39,174,47,135,38,196,47,138,37,160,49*43 +$GPGSV,4,4,13,01,07,108,38*4F +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:28.500Z","ept":0.005,"lat":44.068788091,"lon":-121.314102178,"alt":1126.766,"epx":2.020,"epy":2.020,"epv":4.217,"track":296.1535,"speed":0.011,"climb":-0.004,"eps":0.03,"epc":144.87,"ecefx":-2386056.24,"ecefy":-3922198.06,"ecefz":4414356.20,"ecefvx":-0.01,"ecefvy":0.01,"ecefvz":0.00,"ecefpAcc":2.08,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":47,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":38,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212928,1.99,M,1.99,M,4.16,M*3F +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,45,13,40,306,41*4E +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,42,131,39,174,46,135,38,196,47,138,37,160,49*42 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:28.750Z","ept":0.005,"lat":44.068788617,"lon":-121.314102594,"alt":1126.551,"epx":1.989,"epy":1.989,"epv":4.157,"track":331.1789,"speed":0.008,"climb":0.004,"eps":0.04,"epc":144.73,"ecefx":-2386056.17,"ecefy":-3922197.88,"ecefz":4414356.09,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":0.01,"ecefpAcc":2.05,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212929,1.98,M,1.98,M,4.14,M*3C +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,45,13,40,306,41*4E +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,42,131,39,174,46,135,38,196,47,138,37,160,49*42 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:29.000Z","ept":0.005,"lat":44.068788843,"lon":-121.314102782,"alt":1126.390,"epx":1.979,"epy":1.979,"epv":4.140,"track":130.1917,"speed":0.024,"climb":0.021,"eps":0.04,"epc":144.49,"ecefx":-2386056.11,"ecefy":-3922197.76,"ecefz":4414356.00,"ecefvx":0.00,"ecefvy":-0.03,"ecefvz":0.00,"ecefpAcc":2.04,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212929,1.95,M,1.95,M,4.09,M*30 +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,45,13,40,306,41*4E +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,42,131,39,174,46,135,38,196,47,138,37,160,49*42 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:29.250Z","ept":0.005,"lat":44.068788866,"lon":-121.314103188,"alt":1126.248,"epx":1.953,"epy":1.953,"epv":4.092,"track":200.8703,"speed":0.010,"climb":0.001,"eps":0.03,"epc":144.43,"ecefx":-2386056.09,"ecefy":-3922197.65,"ecefz":4414355.90,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":-0.01,"ecefpAcc":2.02,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":42,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212929,1.96,M,1.96,M,4.11,M*39 +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,44,13,40,306,41*4F +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,41,131,39,174,47,135,38,196,47,138,37,160,49*40 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:29.500Z","ept":0.005,"lat":44.068788962,"lon":-121.314103575,"alt":1126.129,"epx":1.959,"epy":1.959,"epv":4.110,"track":326.1443,"speed":0.022,"climb":-0.010,"eps":0.04,"epc":144.24,"ecefx":-2386056.07,"ecefy":-3922197.56,"ecefz":4414355.82,"ecefvx":-0.00,"ecefvy":0.02,"ecefvz":0.01,"ecefpAcc":2.02,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":44,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":47,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212929,1.95,M,1.95,M,4.10,M*38 +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,45,13,40,306,42*4D +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,41,131,39,174,46,135,38,196,47,138,37,160,49*41 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:29.750Z","ept":0.005,"lat":44.068789082,"lon":-121.314103526,"alt":1126.032,"epx":1.952,"epy":1.952,"epv":4.103,"track":336.9622,"speed":0.023,"climb":-0.012,"eps":0.02,"epc":144.32,"ecefx":-2386056.02,"ecefy":-3922197.49,"ecefz":4414355.77,"ecefvx":0.00,"ecefvy":0.02,"ecefvz":0.01,"ecefpAcc":2.02,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":42,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212930,1.94,M,1.94,M,4.09,M*38 +$GPGSV,4,1,13,11,27,102,45,08,30,048,42,133,39,192,45,13,40,306,41*4E +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,41,131,39,174,46,135,38,196,47,138,37,160,49*41 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:30.000Z","ept":0.005,"lat":44.068788801,"lon":-121.314103200,"alt":1125.973,"epx":1.942,"epy":1.942,"epv":4.088,"track":173.8500,"speed":0.005,"climb":0.009,"eps":0.02,"epc":144.29,"ecefx":-2386055.99,"ecefy":-3922197.49,"ecefz":4414355.70,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":2.01,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":45,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212930,1.93,M,1.93,M,4.08,M*39 +$GPGSV,4,1,13,11,27,102,46,08,30,048,43,133,39,192,45,13,40,306,41*4C +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,48*7C +$GPGSV,4,3,13,18,12,086,41,131,39,174,46,135,38,196,48,138,37,160,49*4E +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:30.250Z","ept":0.005,"lat":44.068788568,"lon":-121.314103286,"alt":1125.923,"epx":1.933,"epy":1.933,"epv":4.076,"track":44.3564,"speed":0.001,"climb":0.013,"eps":0.02,"epc":144.24,"ecefx":-2386055.98,"ecefy":-3922197.47,"ecefz":4414355.65,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":2.00,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":48,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212930,1.92,M,1.92,M,4.05,M*34 +$GPGSV,4,1,13,11,27,102,46,08,30,048,43,133,39,192,45,13,40,306,42*4F +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,49*7D +$GPGSV,4,3,13,18,12,086,41,131,39,174,47,135,38,196,48,138,37,160,49*4F +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:30.500Z","ept":0.005,"lat":44.068788464,"lon":-121.314103206,"alt":1125.843,"epx":1.919,"epy":1.919,"epv":4.051,"track":65.4619,"speed":0.006,"climb":0.012,"eps":0.04,"epc":144.19,"ecefx":-2386055.95,"ecefy":-3922197.43,"ecefz":4414355.58,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":1.99,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":42,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":47,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212930,1.91,M,1.91,M,4.03,M*32 +$GPGSV,4,1,13,11,27,102,46,08,30,048,43,133,39,192,45,13,40,306,42*4F +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,49*7D +$GPGSV,4,3,13,18,12,086,41,131,39,174,46,135,38,196,48,138,37,160,49*4E +$GPGSV,4,4,13,01,07,108,36*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:30.750Z","ept":0.005,"lat":44.068788360,"lon":-121.314103248,"alt":1125.740,"epx":1.907,"epy":1.907,"epv":4.031,"track":101.8120,"speed":0.006,"climb":0.032,"eps":0.03,"epc":144.10,"ecefx":-2386055.92,"ecefy":-3922197.37,"ecefz":4414355.51,"ecefvx":-0.01,"ecefvy":-0.02,"ecefvz":0.02,"ecefpAcc":1.98,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":42,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212931,1.87,M,1.87,M,3.96,M*38 +$GPGSV,4,1,13,11,27,102,46,08,30,048,42,133,39,192,45,13,40,306,41*4D +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,49*7D +$GPGSV,4,3,13,18,12,086,41,131,39,174,46,135,38,196,47,138,37,160,49*41 +$GPGSV,4,4,13,01,07,108,36*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:31.000Z","ept":0.005,"lat":44.068788240,"lon":-121.314102872,"alt":1125.664,"epx":1.871,"epy":1.871,"epv":3.955,"track":323.2702,"speed":0.008,"climb":-0.002,"eps":0.02,"epc":144.02,"ecefx":-2386055.87,"ecefy":-3922197.35,"ecefz":4414355.44,"ecefvx":-0.00,"ecefvy":0.01,"ecefvz":0.00,"ecefpAcc":1.94,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212931,1.84,M,1.84,M,3.89,M*36 +$GPGSV,4,1,13,11,27,102,46,08,30,048,42,133,39,192,45,13,40,306,41*4D +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,49*7D +$GPGSV,4,3,13,18,12,086,41,131,39,174,46,135,38,196,47,138,37,160,49*41 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:31.250Z","ept":0.005,"lat":44.068788234,"lon":-121.314102610,"alt":1125.608,"epx":1.840,"epy":1.840,"epv":3.890,"track":207.6093,"speed":0.006,"climb":0.008,"eps":0.03,"epc":143.72,"ecefx":-2386055.83,"ecefy":-3922197.33,"ecefz":4414355.40,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":1.91,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212931,1.82,M,1.82,M,3.85,M*3A +$GPGSV,4,1,13,11,27,102,46,08,30,048,42,133,39,192,45,13,40,306,41*4D +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,49*7D +$GPGSV,4,3,13,18,12,086,41,131,39,174,47,135,38,196,47,138,37,160,49*40 +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:31.500Z","ept":0.005,"lat":44.068788340,"lon":-121.314102221,"alt":1125.534,"epx":1.822,"epy":1.822,"epv":3.853,"track":321.1297,"speed":0.010,"climb":0.015,"eps":0.03,"epc":143.47,"ecefx":-2386055.78,"ecefy":-3922197.29,"ecefz":4414355.36,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":0.02,"ecefpAcc":1.89,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":47,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212931,1.80,M,1.80,M,3.81,M*3E +$GPGSV,4,1,13,11,27,102,46,08,30,048,43,133,39,192,45,13,40,306,41*4C +$GPGSV,4,2,13,17,20,186,44,28,77,276,50,30,75,076,56,07,49,102,49*7D +$GPGSV,4,3,13,18,12,086,41,131,39,174,46,135,38,196,47,138,37,160,49*41 +$GPGSV,4,4,13,01,07,108,36*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:31.750Z","ept":0.005,"lat":44.068788473,"lon":-121.314102152,"alt":1125.457,"epx":1.800,"epy":1.800,"epv":3.805,"track":173.7362,"speed":0.006,"climb":0.011,"eps":0.01,"epc":143.33,"ecefx":-2386055.74,"ecefy":-3922197.24,"ecefz":4414355.32,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":1.87,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,11,8,13,17,28,30,7,18,131,135,138,,1.7,0.9,1.4*0D +$GPGBS,212932,1.77,M,1.77,M,3.75,M*36 +$GPGSV,4,1,13,11,27,102,46,08,30,048,43,133,39,192,45,13,40,306,41*4C +$GPGSV,4,2,13,17,20,186,43,28,77,276,50,30,75,076,56,07,49,102,49*7A +$GPGSV,4,3,13,18,12,086,41,131,39,174,46,135,38,196,48,138,37,160,49*4E +$GPGSV,4,4,13,01,07,108,37*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:32.000Z","ept":0.005,"lat":44.068788432,"lon":-121.314102018,"alt":1125.396,"epx":1.771,"epy":1.771,"epv":3.745,"track":4.9717,"speed":0.010,"climb":-0.021,"eps":0.01,"epc":143.14,"ecefx":-2386055.71,"ecefy":-3922197.21,"ecefz":4414355.27,"ecefvx":0.01,"ecefvy":0.02,"ecefvz":-0.01,"ecefpAcc":1.84,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.73,"ydop":0.85,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.10,"pdop":1.68,"satellites":[{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":43,"used":true},{"PRN":28,"el":77,"az":276,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,94,11,8,13,17,28,30,7,18,131,135,,1.7,0.9,1.4*3A +$GPGBS,212932,1.68,M,1.68,M,3.55,M*34 +$GPGSV,4,1,14,94,34,072,41,11,27,102,46,08,30,048,42,133,39,192,45*46 +$GPGSV,4,2,14,13,40,306,41,17,20,186,43,28,77,278,50,30,75,076,56*71 +$GPGSV,4,3,14,07,49,102,49,18,12,086,41,131,39,174,46,135,38,196,47*76 +$GPGSV,4,4,14,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:32.250Z","ept":0.005,"lat":44.068788333,"lon":-121.314101822,"alt":1125.346,"epx":1.677,"epy":1.677,"epv":3.547,"track":42.0072,"speed":0.013,"climb":0.010,"eps":0.04,"epc":142.90,"ecefx":-2386055.68,"ecefy":-3922197.19,"ecefz":4414355.23,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":0.01,"ecefpAcc":1.74,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.71,"ydop":0.84,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.08,"pdop":1.68,"satellites":[{"PRN":94,"el":34,"az":72,"ss":41,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":43,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,94,11,8,13,17,28,30,7,18,131,135,,1.7,0.9,1.4*3A +$GPGBS,212932,1.66,M,1.66,M,3.51,M*30 +$GPGSV,4,1,14,94,34,072,42,11,27,102,46,08,30,048,43,133,39,192,45*44 +$GPGSV,4,2,14,13,40,306,41,17,20,186,43,28,77,278,50,30,75,076,56*71 +$GPGSV,4,3,14,07,49,102,49,18,12,086,41,131,39,174,46,135,38,196,48*79 +$GPGSV,4,4,14,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:32.500Z","ept":0.005,"lat":44.068788248,"lon":-121.314101500,"alt":1125.297,"epx":1.659,"epy":1.659,"epv":3.509,"track":356.2674,"speed":0.015,"climb":0.003,"eps":0.02,"epc":142.11,"ecefx":-2386055.64,"ecefy":-3922197.18,"ecefz":4414355.19,"ecefvx":0.00,"ecefvy":0.01,"ecefvz":0.01,"ecefpAcc":1.72,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.71,"ydop":0.84,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.08,"pdop":1.68,"satellites":[{"PRN":94,"el":34,"az":72,"ss":42,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":43,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,94,11,8,13,17,28,30,7,18,131,135,,1.7,0.9,1.4*3A +$GPGBS,212932,1.65,M,1.65,M,3.48,M*38 +$GPGSV,4,1,14,94,34,072,43,11,27,102,46,08,30,048,43,133,39,192,45*45 +$GPGSV,4,2,14,13,40,306,41,17,20,186,43,28,77,278,50,30,75,076,56*71 +$GPGSV,4,3,14,07,49,102,49,18,12,086,41,131,39,174,46,135,38,196,48*79 +$GPGSV,4,4,14,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:32.750Z","ept":0.005,"lat":44.068788278,"lon":-121.314101376,"alt":1125.229,"epx":1.645,"epy":1.645,"epv":3.479,"track":357.7600,"speed":0.026,"climb":-0.010,"eps":0.02,"epc":141.97,"ecefx":-2386055.61,"ecefy":-3922197.14,"ecefz":4414355.14,"ecefvx":0.01,"ecefvy":0.02,"ecefvz":0.01,"ecefpAcc":1.71,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.71,"ydop":0.84,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.08,"pdop":1.68,"satellites":[{"PRN":94,"el":34,"az":72,"ss":43,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":43,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,94,11,8,13,17,28,30,7,18,131,135,,1.7,0.9,1.4*3A +$GPGBS,212933,1.63,M,1.63,M,3.46,M*37 +$GPGSV,4,1,14,94,34,072,43,11,27,102,46,08,30,048,42,133,39,192,45*44 +$GPGSV,4,2,14,13,40,306,41,17,20,186,44,28,77,278,50,30,75,076,56*76 +$GPGSV,4,3,14,07,49,102,49,18,12,086,41,131,39,174,46,135,38,196,47*76 +$GPGSV,4,4,14,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:33.000Z","ept":0.005,"lat":44.068788325,"lon":-121.314101483,"alt":1125.170,"epx":1.634,"epy":1.634,"epv":3.456,"track":54.7022,"speed":0.008,"climb":0.018,"eps":0.02,"epc":141.85,"ecefx":-2386055.59,"ecefy":-3922197.10,"ecefz":4414355.11,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":0.02,"ecefpAcc":1.70,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.71,"ydop":0.84,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.08,"pdop":1.68,"satellites":[{"PRN":94,"el":34,"az":72,"ss":43,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,94,11,8,13,17,28,30,7,18,131,135,,1.7,0.9,1.4*3A +$GPGBS,212933,1.62,M,1.62,M,3.43,M*32 +$GPGSV,4,1,14,94,34,072,44,11,27,102,46,08,30,048,43,133,39,192,45*42 +$GPGSV,4,2,14,13,40,306,41,17,20,186,44,28,77,278,50,30,75,076,56*76 +$GPGSV,4,3,14,07,49,102,49,18,12,086,41,131,39,174,46,135,38,196,47*76 +$GPGSV,4,4,14,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:33.250Z","ept":0.005,"lat":44.068788191,"lon":-121.314101332,"alt":1125.168,"epx":1.623,"epy":1.623,"epv":3.432,"track":106.2593,"speed":0.010,"climb":0.022,"eps":0.03,"epc":141.76,"ecefx":-2386055.58,"ecefy":-3922197.11,"ecefz":4414355.09,"ecefvx":-0.00,"ecefvy":-0.02,"ecefvz":0.01,"ecefpAcc":1.69,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.71,"ydop":0.84,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.08,"pdop":1.68,"satellites":[{"PRN":94,"el":34,"az":72,"ss":44,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,94,11,8,13,17,28,30,7,18,131,135,,1.7,0.9,1.4*3A +$GPGBS,212933,1.61,M,1.61,M,3.41,M*30 +$GPGSV,4,1,14,94,34,072,44,11,27,102,46,08,30,048,43,133,39,192,45*42 +$GPGSV,4,2,14,13,40,306,41,17,20,186,44,28,77,278,50,30,75,076,56*76 +$GPGSV,4,3,14,07,49,102,49,18,12,086,41,131,39,174,46,135,38,196,48*79 +$GPGSV,4,4,14,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:33.500Z","ept":0.005,"lat":44.068788173,"lon":-121.314101320,"alt":1125.162,"epx":1.611,"epy":1.611,"epv":3.407,"track":137.3661,"speed":0.010,"climb":0.012,"eps":0.03,"epc":141.67,"ecefx":-2386055.58,"ecefy":-3922197.11,"ecefz":4414355.09,"ecefvx":-0.00,"ecefvy":-0.02,"ecefvz":0.00,"ecefpAcc":1.67,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.71,"ydop":0.84,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.08,"pdop":1.68,"satellites":[{"PRN":94,"el":34,"az":72,"ss":44,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,94,11,8,13,17,28,30,7,18,131,135,,1.7,0.9,1.4*3A +$GPGBS,212933,1.61,M,1.61,M,3.41,M*30 +$GPGSV,4,1,14,94,34,072,44,11,27,102,46,08,30,048,43,133,39,192,45*42 +$GPGSV,4,2,14,13,40,306,41,17,20,186,44,28,77,278,50,30,75,076,56*76 +$GPGSV,4,3,14,07,49,102,49,18,12,086,41,131,39,174,46,135,38,196,48*79 +$GPGSV,4,4,14,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:33.750Z","ept":0.005,"lat":44.068788092,"lon":-121.314101318,"alt":1125.178,"epx":1.610,"epy":1.610,"epv":3.406,"track":46.2890,"speed":0.017,"climb":0.015,"eps":0.02,"epc":141.58,"ecefx":-2386055.59,"ecefy":-3922197.13,"ecefz":4414355.09,"ecefvx":0.01,"ecefvy":-0.01,"ecefvz":0.02,"ecefpAcc":1.67,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.71,"ydop":0.84,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.08,"pdop":1.68,"satellites":[{"PRN":94,"el":34,"az":72,"ss":44,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,94,11,8,13,17,28,30,7,18,131,135,,1.7,0.9,1.4*3A +$GPGBS,212934,1.61,M,1.61,M,3.41,M*37 +$GPGSV,4,1,14,94,34,072,44,11,27,102,46,08,30,048,43,133,39,192,45*42 +$GPGSV,4,2,14,13,40,306,41,17,20,186,44,28,77,278,50,30,75,076,56*76 +$GPGSV,4,3,14,07,49,102,49,18,12,086,41,131,39,174,46,135,38,196,47*76 +$GPGSV,4,4,14,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:34.000Z","ept":0.005,"lat":44.068787962,"lon":-121.314101158,"alt":1125.197,"epx":1.610,"epy":1.610,"epv":3.405,"track":113.0212,"speed":0.008,"climb":0.035,"eps":0.02,"epc":141.57,"ecefx":-2386055.59,"ecefy":-3922197.15,"ecefz":4414355.10,"ecefvx":-0.01,"ecefvy":-0.03,"ecefvz":0.02,"ecefpAcc":1.67,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.71,"ydop":0.84,"vdop":1.39,"tdop":1.01,"hdop":0.95,"gdop":2.08,"pdop":1.68,"satellites":[{"PRN":94,"el":34,"az":72,"ss":44,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":56,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212934,1.57,M,1.57,M,3.33,M*32 +$GPGSV,4,1,15,81,28,124,36,94,34,072,45,11,27,102,46,08,30,048,42*72 +$GPGSV,4,2,15,133,39,192,45,13,40,306,41,17,20,186,44,28,77,278,50*44 +$GPGSV,4,3,15,30,75,076,55,07,49,102,49,18,12,086,41,131,39,174,46*46 +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:34.250Z","ept":0.005,"lat":44.068788567,"lon":-121.314100987,"alt":1125.204,"epx":1.568,"epy":1.568,"epv":3.332,"track":60.7643,"speed":0.013,"climb":-0.000,"eps":0.03,"epc":141.58,"ecefx":-2386055.56,"ecefy":-3922197.12,"ecefz":4414355.15,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":0.00,"ecefpAcc":1.63,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":36,"used":true},{"PRN":94,"el":34,"az":72,"ss":45,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212934,1.56,M,1.56,M,3.32,M*33 +$GPGSV,4,1,15,81,28,124,36,94,34,072,45,11,27,102,46,08,30,048,42*72 +$GPGSV,4,2,15,133,39,192,45,13,40,306,41,17,20,186,44,28,77,278,50*44 +$GPGSV,4,3,15,30,75,076,55,07,49,102,49,18,12,086,40,131,39,174,46*47 +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,37*43 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:34.500Z","ept":0.005,"lat":44.068788466,"lon":-121.314100722,"alt":1125.230,"epx":1.561,"epy":1.561,"epv":3.320,"track":48.5547,"speed":0.009,"climb":0.010,"eps":0.02,"epc":141.28,"ecefx":-2386055.55,"ecefy":-3922197.16,"ecefz":4414355.16,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":1.63,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":36,"used":true},{"PRN":94,"el":34,"az":72,"ss":45,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":37,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212934,1.56,M,1.56,M,3.31,M*30 +$GPGSV,4,1,15,81,28,124,36,94,34,072,45,11,27,102,46,08,30,048,42*72 +$GPGSV,4,2,15,133,39,192,45,13,40,306,41,17,20,186,44,28,77,278,50*44 +$GPGSV,4,3,15,30,75,076,55,07,49,102,49,18,12,086,41,131,39,174,46*46 +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:34.750Z","ept":0.005,"lat":44.068788309,"lon":-121.314100306,"alt":1125.260,"epx":1.558,"epy":1.558,"epv":3.315,"track":358.7984,"speed":0.016,"climb":0.000,"eps":0.02,"epc":141.24,"ecefx":-2386055.54,"ecefy":-3922197.20,"ecefz":4414355.17,"ecefvx":0.01,"ecefvy":0.01,"ecefvz":0.01,"ecefpAcc":1.62,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":36,"used":true},{"PRN":94,"el":34,"az":72,"ss":45,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212935,1.55,M,1.55,M,3.31,M*31 +$GPGSV,4,1,15,81,28,124,37,94,34,072,46,11,27,102,46,08,30,048,43*71 +$GPGSV,4,2,15,133,39,192,45,13,40,306,41,17,20,186,44,28,77,278,50*44 +$GPGSV,4,3,15,30,75,076,55,07,49,102,49,18,12,086,41,131,39,174,46*46 +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:35.000Z","ept":0.005,"lat":44.068788221,"lon":-121.314099862,"alt":1125.302,"epx":1.552,"epy":1.552,"epv":3.305,"track":349.1634,"speed":0.003,"climb":0.026,"eps":0.04,"epc":141.22,"ecefx":-2386055.53,"ecefy":-3922197.25,"ecefz":4414355.19,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.02,"ecefpAcc":1.62,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":37,"used":true},{"PRN":94,"el":34,"az":72,"ss":46,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":49,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212935,1.55,M,1.55,M,3.31,M*31 +$GPGSV,4,1,15,81,28,124,37,94,34,072,46,11,27,102,46,08,30,048,43*71 +$GPGSV,4,2,15,133,39,192,45,13,40,306,41,17,20,186,44,28,77,278,50*44 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:35.250Z","ept":0.005,"lat":44.068788293,"lon":-121.314099535,"alt":1125.319,"epx":1.551,"epy":1.551,"epv":3.306,"track":82.2739,"speed":0.024,"climb":0.029,"eps":0.04,"epc":141.19,"ecefx":-2386055.51,"ecefy":-3922197.27,"ecefz":4414355.21,"ecefvx":0.01,"ecefvy":-0.03,"ecefvz":0.02,"ecefpAcc":1.62,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":37,"used":true},{"PRN":94,"el":34,"az":72,"ss":46,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212935,1.55,M,1.55,M,3.30,M*30 +$GPGSV,4,1,15,81,28,124,38,94,34,072,46,11,27,102,46,08,30,048,43*7E +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:35.500Z","ept":0.005,"lat":44.068788222,"lon":-121.314099315,"alt":1125.336,"epx":1.547,"epy":1.547,"epv":3.300,"track":7.4783,"speed":0.018,"climb":0.006,"eps":0.04,"epc":141.20,"ecefx":-2386055.51,"ecefy":-3922197.30,"ecefz":4414355.21,"ecefvx":0.01,"ecefvy":0.01,"ecefvz":0.02,"ecefpAcc":1.62,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":38,"used":true},{"PRN":94,"el":34,"az":72,"ss":46,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212935,1.54,M,1.54,M,3.28,M*39 +$GPGSV,4,1,15,81,28,124,38,94,34,072,46,11,27,102,46,08,30,048,43*7E +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:35.750Z","ept":0.005,"lat":44.068788212,"lon":-121.314099149,"alt":1125.345,"epx":1.537,"epy":1.537,"epv":3.282,"track":28.6668,"speed":0.013,"climb":0.022,"eps":0.04,"epc":141.18,"ecefx":-2386055.50,"ecefy":-3922197.31,"ecefz":4414355.22,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":0.02,"ecefpAcc":1.61,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":38,"used":true},{"PRN":94,"el":34,"az":72,"ss":46,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212936,1.53,M,1.53,M,3.27,M*35 +$GPGSV,4,1,15,81,28,124,38,94,34,072,47,11,27,102,46,08,30,048,43*7F +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,45*4D +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:36.000Z","ept":0.005,"lat":44.068788144,"lon":-121.314098844,"alt":1125.388,"epx":1.532,"epy":1.532,"epv":3.275,"track":349.4444,"speed":0.016,"climb":-0.008,"eps":0.04,"epc":141.11,"ecefx":-2386055.50,"ecefy":-3922197.35,"ecefz":4414355.24,"ecefvx":0.01,"ecefvy":0.02,"ecefvz":0.01,"ecefpAcc":1.60,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":38,"used":true},{"PRN":94,"el":34,"az":72,"ss":47,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212936,1.52,M,1.52,M,3.26,M*34 +$GPGSV,4,1,15,81,28,124,38,94,34,072,47,11,27,102,46,08,30,048,43*7F +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:36.250Z","ept":0.005,"lat":44.068788040,"lon":-121.314098566,"alt":1125.418,"epx":1.524,"epy":1.524,"epv":3.263,"track":340.3129,"speed":0.020,"climb":-0.005,"eps":0.04,"epc":141.09,"ecefx":-2386055.49,"ecefy":-3922197.39,"ecefz":4414355.26,"ecefvx":0.00,"ecefvy":0.02,"ecefvz":0.01,"ecefpAcc":1.60,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":38,"used":true},{"PRN":94,"el":34,"az":72,"ss":47,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":30,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212936,1.52,M,1.52,M,3.26,M*34 +$GPGSV,4,1,15,81,28,124,39,94,34,072,47,11,27,102,46,08,29,048,43*76 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:36.500Z","ept":0.005,"lat":44.068788162,"lon":-121.314098655,"alt":1125.429,"epx":1.521,"epy":1.521,"epv":3.260,"track":313.4769,"speed":0.021,"climb":-0.014,"eps":0.05,"epc":141.04,"ecefx":-2386055.50,"ecefy":-3922197.39,"ecefz":4414355.27,"ecefvx":-0.00,"ecefvy":0.03,"ecefvz":0.00,"ecefpAcc":1.59,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":39,"used":true},{"PRN":94,"el":34,"az":72,"ss":47,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212936,1.52,M,1.52,M,3.27,M*35 +$GPGSV,4,1,15,81,28,124,39,94,34,072,47,11,27,102,46,08,29,048,43*76 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,45*4C +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:36.750Z","ept":0.005,"lat":44.068788256,"lon":-121.314098643,"alt":1125.430,"epx":1.522,"epy":1.522,"epv":3.265,"track":329.8515,"speed":0.028,"climb":-0.017,"eps":0.06,"epc":141.03,"ecefx":-2386055.50,"ecefy":-3922197.38,"ecefz":4414355.28,"ecefvx":0.00,"ecefvy":0.03,"ecefvz":0.01,"ecefpAcc":1.60,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":39,"used":true},{"PRN":94,"el":34,"az":72,"ss":47,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212937,1.52,M,1.52,M,3.28,M*3B +$GPGSV,4,1,15,81,28,124,39,94,34,072,47,11,27,102,46,08,29,048,43*76 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,45*4C +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:37.000Z","ept":0.005,"lat":44.068788382,"lon":-121.314098669,"alt":1125.424,"epx":1.525,"epy":1.525,"epv":3.275,"track":300.2726,"speed":0.023,"climb":0.004,"eps":0.07,"epc":141.06,"ecefx":-2386055.49,"ecefy":-3922197.37,"ecefz":4414355.29,"ecefvx":-0.01,"ecefvy":0.01,"ecefvz":0.01,"ecefpAcc":1.60,"ecefvAcc":0.05} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":39,"used":true},{"PRN":94,"el":34,"az":72,"ss":47,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212937,1.53,M,1.53,M,3.29,M*3A +$GPGSV,4,1,15,81,28,124,39,94,34,072,47,11,27,102,46,08,29,048,43*76 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:37.250Z","ept":0.005,"lat":44.068788656,"lon":-121.314098789,"alt":1125.417,"epx":1.529,"epy":1.529,"epv":3.288,"track":314.8602,"speed":0.033,"climb":-0.007,"eps":0.06,"epc":141.11,"ecefx":-2386055.48,"ecefy":-3922197.34,"ecefz":4414355.30,"ecefvx":-0.01,"ecefvy":0.03,"ecefvz":0.01,"ecefpAcc":1.61,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":39,"used":true},{"PRN":94,"el":34,"az":72,"ss":47,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212937,1.53,M,1.53,M,3.30,M*32 +$GPGSV,4,1,15,81,28,124,39,94,34,072,47,11,27,102,46,08,29,048,43*76 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,48,138,37,160,49,01,07,108,36*4D +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:37.500Z","ept":0.005,"lat":44.068788911,"lon":-121.314098937,"alt":1125.405,"epx":1.531,"epy":1.531,"epv":3.296,"track":305.5412,"speed":0.040,"climb":-0.026,"eps":0.05,"epc":141.16,"ecefx":-2386055.48,"ecefy":-3922197.31,"ecefz":4414355.32,"ecefvx":-0.01,"ecefvy":0.05,"ecefvz":-0.00,"ecefpAcc":1.61,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":39,"used":true},{"PRN":94,"el":34,"az":72,"ss":47,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212937,1.53,M,1.53,M,3.30,M*32 +$GPGSV,4,1,15,81,28,124,39,94,34,072,48,11,27,102,46,08,29,048,43*79 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,48,138,37,160,49,01,07,108,36*4D +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:37.750Z","ept":0.005,"lat":44.068789079,"lon":-121.314099060,"alt":1125.376,"epx":1.533,"epy":1.533,"epv":3.302,"track":306.1403,"speed":0.020,"climb":-0.033,"eps":0.06,"epc":141.20,"ecefx":-2386055.47,"ecefy":-3922197.28,"ecefz":4414355.31,"ecefvx":0.00,"ecefvy":0.04,"ecefvz":-0.01,"ecefpAcc":1.61,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":39,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212938,1.53,M,1.53,M,3.31,M*3C +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,27,102,46,08,29,048,43*77 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:38.000Z","ept":0.005,"lat":44.068789213,"lon":-121.314099117,"alt":1125.366,"epx":1.534,"epy":1.534,"epv":3.306,"track":309.7535,"speed":0.021,"climb":-0.043,"eps":0.05,"epc":141.23,"ecefx":-2386055.47,"ecefy":-3922197.26,"ecefz":4414355.31,"ecefvx":0.01,"ecefvy":0.04,"ecefvz":-0.02,"ecefpAcc":1.61,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212938,1.53,M,1.53,M,3.31,M*3C +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,27,102,46,08,29,048,42*76 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,45*4C +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:38.250Z","ept":0.005,"lat":44.068789359,"lon":-121.314099067,"alt":1125.363,"epx":1.534,"epy":1.534,"epv":3.307,"track":319.8260,"speed":0.017,"climb":-0.009,"eps":0.05,"epc":141.25,"ecefx":-2386055.45,"ecefy":-3922197.25,"ecefz":4414355.32,"ecefvx":-0.00,"ecefvy":0.02,"ecefvz":0.00,"ecefpAcc":1.61,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.04,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":27,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212938,1.54,M,1.54,M,3.31,M*3C +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,28,102,46,08,29,048,42*79 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,45,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,35*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:38.500Z","ept":0.005,"lat":44.068789478,"lon":-121.314099141,"alt":1125.360,"epx":1.537,"epy":1.537,"epv":3.315,"track":266.4108,"speed":0.018,"climb":0.001,"eps":0.04,"epc":141.25,"ecefx":-2386055.45,"ecefy":-3922197.24,"ecefz":4414355.33,"ecefvx":-0.02,"ecefvy":0.01,"ecefvz":-0.00,"ecefpAcc":1.62,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":45,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212938,1.54,M,1.54,M,3.33,M*3E +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,28,102,46,08,29,048,42*79 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,45,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,48,138,37,160,49,01,07,108,36*4D +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:38.750Z","ept":0.005,"lat":44.068789602,"lon":-121.314099219,"alt":1125.352,"epx":1.542,"epy":1.542,"epv":3.325,"track":291.4513,"speed":0.029,"climb":-0.011,"eps":0.05,"epc":141.29,"ecefx":-2386055.45,"ecefy":-3922197.22,"ecefz":4414355.33,"ecefvx":-0.02,"ecefvy":0.03,"ecefvz":0.00,"ecefpAcc":1.62,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":45,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212939,1.54,M,1.54,M,3.33,M*3F +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,28,102,46,08,29,048,42*79 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,45,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,48,138,37,160,49,01,07,108,36*4D +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:39.000Z","ept":0.005,"lat":44.068789654,"lon":-121.314099288,"alt":1125.335,"epx":1.543,"epy":1.543,"epv":3.327,"track":273.3503,"speed":0.017,"climb":-0.019,"eps":0.04,"epc":141.34,"ecefx":-2386055.45,"ecefy":-3922197.20,"ecefz":4414355.33,"ecefvx":-0.01,"ecefvy":0.02,"ecefvz":-0.01,"ecefpAcc":1.62,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":42,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":45,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212939,1.55,M,1.55,M,3.34,M*38 +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,45,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,46*4F +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:39.250Z","ept":0.005,"lat":44.068789558,"lon":-121.314099257,"alt":1125.322,"epx":1.547,"epy":1.547,"epv":3.336,"track":293.0727,"speed":0.020,"climb":-0.017,"eps":0.03,"epc":141.35,"ecefx":-2386055.44,"ecefy":-3922197.20,"ecefz":4414355.31,"ecefvx":-0.01,"ecefvy":0.02,"ecefvz":-0.01,"ecefpAcc":1.63,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":45,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212939,1.55,M,1.55,M,3.34,M*38 +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,45,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,45*4C +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:39.500Z","ept":0.005,"lat":44.068789416,"lon":-121.314099107,"alt":1125.314,"epx":1.547,"epy":1.547,"epv":3.336,"track":248.5204,"speed":0.005,"climb":-0.001,"eps":0.04,"epc":141.39,"ecefx":-2386055.44,"ecefy":-3922197.21,"ecefz":4414355.29,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":-0.00,"ecefpAcc":1.63,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":45,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212939,1.55,M,1.55,M,3.34,M*38 +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,40,131,39,174,45*4C +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:39.750Z","ept":0.005,"lat":44.068789309,"lon":-121.314099022,"alt":1125.296,"epx":1.548,"epy":1.548,"epv":3.338,"track":248.1946,"speed":0.019,"climb":-0.005,"eps":0.06,"epc":141.39,"ecefx":-2386055.43,"ecefy":-3922197.21,"ecefz":4414355.27,"ecefvx":-0.02,"ecefvy":0.01,"ecefvz":-0.01,"ecefpAcc":1.63,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":40,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212940,1.54,M,1.54,M,3.33,M*31 +$GPGSV,4,1,15,81,28,124,40,94,34,072,48,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:40.000Z","ept":0.005,"lat":44.068789268,"lon":-121.314099089,"alt":1125.274,"epx":1.545,"epy":1.545,"epv":3.331,"track":253.8919,"speed":0.019,"climb":-0.004,"eps":0.06,"epc":141.41,"ecefx":-2386055.43,"ecefy":-3922197.20,"ecefz":4414355.25,"ecefvx":-0.02,"ecefvy":0.01,"ecefvz":-0.01,"ecefpAcc":1.63,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":48,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212940,1.54,M,1.54,M,3.32,M*30 +$GPGSV,4,1,15,81,28,124,40,94,34,072,49,11,28,102,46,08,29,048,43*79 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:40.250Z","ept":0.005,"lat":44.068789257,"lon":-121.314099141,"alt":1125.237,"epx":1.539,"epy":1.539,"epv":3.318,"track":317.7172,"speed":0.018,"climb":-0.011,"eps":0.04,"epc":141.38,"ecefx":-2386055.42,"ecefy":-3922197.18,"ecefz":4414355.23,"ecefvx":-0.00,"ecefvy":0.02,"ecefvz":0.00,"ecefpAcc":1.62,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212940,1.53,M,1.53,M,3.30,M*32 +$GPGSV,4,1,15,81,28,124,40,94,34,072,49,11,28,102,46,08,29,048,43*79 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,45*4D +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:40.500Z","ept":0.005,"lat":44.068789187,"lon":-121.314099250,"alt":1125.220,"epx":1.528,"epy":1.528,"epv":3.295,"track":318.8611,"speed":0.005,"climb":-0.010,"eps":0.01,"epc":141.34,"ecefx":-2386055.42,"ecefy":-3922197.17,"ecefz":4414355.21,"ecefvx":0.00,"ecefvy":0.01,"ecefvz":-0.00,"ecefpAcc":1.61,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212940,1.51,M,1.51,M,3.26,M*35 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,41,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,45*4D +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:40.750Z","ept":0.005,"lat":44.068789186,"lon":-121.314099369,"alt":1125.208,"epx":1.511,"epy":1.511,"epv":3.260,"track":217.9008,"speed":0.013,"climb":0.001,"eps":0.03,"epc":141.25,"ecefx":-2386055.42,"ecefy":-3922197.15,"ecefz":4414355.20,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":-0.01,"ecefpAcc":1.59,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":41,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212941,1.51,M,1.51,M,3.25,M*37 +$GPGSV,4,1,15,81,28,124,40,94,34,072,49,11,28,102,46,08,29,048,43*79 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,35*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:41.000Z","ept":0.005,"lat":44.068789249,"lon":-121.314099561,"alt":1125.170,"epx":1.507,"epy":1.507,"epv":3.251,"track":250.6047,"speed":0.010,"climb":-0.003,"eps":0.03,"epc":141.11,"ecefx":-2386055.42,"ecefy":-3922197.12,"ecefz":4414355.18,"ecefvx":-0.01,"ecefvy":0.00,"ecefvz":-0.00,"ecefpAcc":1.59,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":40,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212941,1.49,M,1.49,M,3.22,M*30 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:41.250Z","ept":0.005,"lat":44.068789231,"lon":-121.314099789,"alt":1125.135,"epx":1.491,"epy":1.491,"epv":3.217,"track":132.1819,"speed":0.011,"climb":0.017,"eps":0.03,"epc":141.08,"ecefx":-2386055.42,"ecefy":-3922197.09,"ecefz":4414355.15,"ecefvx":-0.00,"ecefvy":-0.02,"ecefvz":0.01,"ecefpAcc":1.57,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212941,1.49,M,1.49,M,3.22,M*30 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:41.500Z","ept":0.005,"lat":44.068789331,"lon":-121.314099877,"alt":1125.110,"epx":1.493,"epy":1.493,"epv":3.221,"track":154.9352,"speed":0.009,"climb":0.004,"eps":0.03,"epc":140.95,"ecefx":-2386055.42,"ecefy":-3922197.06,"ecefz":4414355.14,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":1.57,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212941,1.49,M,1.49,M,3.22,M*30 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,35*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:41.750Z","ept":0.005,"lat":44.068789465,"lon":-121.314100016,"alt":1125.094,"epx":1.493,"epy":1.493,"epv":3.221,"track":336.6704,"speed":0.003,"climb":0.007,"eps":0.03,"epc":140.97,"ecefx":-2386055.41,"ecefy":-3922197.04,"ecefz":4414355.14,"ecefvx":-0.00,"ecefvy":-0.00,"ecefvz":0.01,"ecefpAcc":1.57,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212942,1.49,M,1.49,M,3.22,M*33 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,35*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:42.000Z","ept":0.005,"lat":44.068789552,"lon":-121.314100065,"alt":1125.082,"epx":1.494,"epy":1.494,"epv":3.223,"track":126.7951,"speed":0.013,"climb":0.007,"eps":0.02,"epc":140.97,"ecefx":-2386055.41,"ecefy":-3922197.02,"ecefz":4414355.14,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":1.57,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212942,1.49,M,1.49,M,3.21,M*30 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,35*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:42.250Z","ept":0.005,"lat":44.068789557,"lon":-121.314100062,"alt":1125.083,"epx":1.489,"epy":1.489,"epv":3.212,"track":221.7634,"speed":0.010,"climb":0.009,"eps":0.02,"epc":140.99,"ecefx":-2386055.41,"ecefy":-3922197.02,"ecefz":4414355.14,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":1.57,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212942,1.49,M,1.49,M,3.21,M*30 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,45*4D +$GPGSV,4,4,15,135,38,196,46,138,37,160,49,01,07,108,35*40 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:42.500Z","ept":0.005,"lat":44.068789547,"lon":-121.314100006,"alt":1125.078,"epx":1.486,"epy":1.486,"epv":3.207,"track":143.3294,"speed":0.023,"climb":0.014,"eps":0.05,"epc":140.95,"ecefx":-2386055.40,"ecefy":-3922197.02,"ecefz":4414355.14,"ecefvx":0.00,"ecefvy":-0.03,"ecefvz":-0.00,"ecefpAcc":1.56,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212942,1.48,M,1.48,M,3.20,M*31 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,46,13,40,306,40,17,20,186,44,28,77,278,50*46 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,35*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:42.750Z","ept":0.005,"lat":44.068789588,"lon":-121.314100037,"alt":1125.068,"epx":1.481,"epy":1.481,"epv":3.195,"track":125.3918,"speed":0.038,"climb":0.050,"eps":0.07,"epc":140.93,"ecefx":-2386055.40,"ecefy":-3922197.01,"ecefz":4414355.14,"ecefvx":-0.00,"ecefvy":-0.06,"ecefvz":0.02,"ecefpAcc":1.56,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212943,1.48,M,1.48,M,3.19,M*3A +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,47,13,40,306,40,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,46*4E +$GPGSV,4,4,15,135,38,196,48,138,37,160,49,01,07,108,35*4E +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:43.000Z","ept":0.005,"lat":44.068789541,"lon":-121.314100057,"alt":1125.052,"epx":1.478,"epy":1.478,"epv":3.190,"track":155.1502,"speed":0.017,"climb":0.005,"eps":0.05,"epc":140.89,"ecefx":-2386055.40,"ecefy":-3922197.01,"ecefz":4414355.12,"ecefvx":-0.00,"ecefvy":-0.02,"ecefvz":-0.01,"ecefpAcc":1.56,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":47,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":48,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212943,1.49,M,1.49,M,3.21,M*31 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,43*78 +$GPGSV,4,2,15,133,39,192,47,13,40,306,40,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,45*4D +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,35*41 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:43.250Z","ept":0.005,"lat":44.068789647,"lon":-121.314100110,"alt":1125.042,"epx":1.487,"epy":1.487,"epv":3.210,"track":158.3930,"speed":0.029,"climb":-0.006,"eps":0.05,"epc":140.87,"ecefx":-2386055.39,"ecefy":-3922196.99,"ecefz":4414355.12,"ecefvx":0.00,"ecefvy":-0.02,"ecefvz":-0.02,"ecefpAcc":1.57,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":47,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,81,94,11,8,13,17,28,30,7,18,131,,1.7,0.9,1.4*04 +$GPGBS,212943,1.48,M,1.48,M,3.20,M*30 +$GPGSV,4,1,15,81,28,124,41,94,34,072,49,11,28,102,46,08,29,048,44*7F +$GPGSV,4,2,15,133,39,192,47,13,40,306,40,17,20,186,44,28,77,278,50*47 +$GPGSV,4,3,15,30,75,076,55,07,49,102,50,18,12,086,41,131,39,174,45*4D +$GPGSV,4,4,15,135,38,196,47,138,37,160,49,01,07,108,36*42 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:43.500Z","ept":0.005,"lat":44.068789683,"lon":-121.314100149,"alt":1125.028,"epx":1.481,"epy":1.481,"epv":3.197,"track":128.1834,"speed":0.018,"climb":0.035,"eps":0.05,"epc":140.96,"ecefx":-2386055.39,"ecefy":-3922196.98,"ecefz":4414355.12,"ecefvx":-0.01,"ecefvy":-0.04,"ecefvz":0.02,"ecefpAcc":1.56,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.78,"vdop":1.39,"tdop":1.01,"hdop":0.93,"gdop":2.03,"pdop":1.67,"satellites":[{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":47,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212943,1.43,M,1.43,M,3.09,M*3B +$GPGSV,4,1,16,82,27,064,34,81,28,124,41,94,34,072,50,11,28,102,46*71 +$GPGSV,4,2,16,08,29,048,44,133,39,192,47,13,40,306,40,17,20,186,44*49 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:43.750Z","ept":0.005,"lat":44.068789689,"lon":-121.314100224,"alt":1125.012,"epx":1.429,"epy":1.429,"epv":3.087,"track":151.9023,"speed":0.020,"climb":0.010,"eps":0.06,"epc":140.91,"ecefx":-2386055.39,"ecefy":-3922196.96,"ecefz":4414355.10,"ecefvx":-0.00,"ecefvy":-0.02,"ecefvz":-0.01,"ecefpAcc":1.51,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":34,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":47,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212944,1.42,M,1.42,M,3.08,M*3D +$GPGSV,4,1,16,82,27,064,35,81,28,124,41,94,34,072,49,11,28,102,46*78 +$GPGSV,4,2,16,08,29,048,43,133,39,192,46,13,40,306,40,17,20,186,44*4F +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:44.000Z","ept":0.005,"lat":44.068789647,"lon":-121.314100220,"alt":1125.011,"epx":1.423,"epy":1.423,"epv":3.076,"track":186.8177,"speed":0.010,"climb":0.004,"eps":0.04,"epc":139.39,"ecefx":-2386055.39,"ecefy":-3922196.97,"ecefz":4414355.10,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":1.50,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":35,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212944,1.42,M,1.42,M,3.07,M*32 +$GPGSV,4,1,16,82,27,064,36,81,28,124,41,94,34,072,49,11,28,102,46*7B +$GPGSV,4,2,16,08,29,048,43,133,39,192,46,13,40,306,40,17,20,186,44*4F +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:44.250Z","ept":0.005,"lat":44.068789615,"lon":-121.314100281,"alt":1125.007,"epx":1.419,"epy":1.419,"epv":3.067,"track":183.8412,"speed":0.014,"climb":0.007,"eps":0.03,"epc":139.35,"ecefx":-2386055.39,"ecefy":-3922196.96,"ecefz":4414355.10,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":-0.01,"ecefpAcc":1.50,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":36,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":49,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212944,1.41,M,1.41,M,3.06,M*33 +$GPGSV,4,1,16,82,27,064,36,81,28,124,41,94,34,072,50,11,28,102,46*73 +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:44.500Z","ept":0.005,"lat":44.068789648,"lon":-121.314100331,"alt":1125.007,"epx":1.415,"epy":1.415,"epv":3.059,"track":291.7415,"speed":0.011,"climb":-0.015,"eps":0.02,"epc":139.32,"ecefx":-2386055.40,"ecefy":-3922196.96,"ecefz":4414355.10,"ecefvx":-0.00,"ecefvy":0.02,"ecefvz":-0.01,"ecefpAcc":1.49,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":36,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212944,1.42,M,1.42,M,3.07,M*32 +$GPGSV,4,1,16,82,27,064,37,81,28,124,42,94,34,072,50,11,28,102,46*71 +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:44.750Z","ept":0.005,"lat":44.068789734,"lon":-121.314100413,"alt":1125.012,"epx":1.419,"epy":1.419,"epv":3.069,"track":255.5419,"speed":0.015,"climb":0.007,"eps":0.03,"epc":139.30,"ecefx":-2386055.40,"ecefy":-3922196.95,"ecefz":4414355.11,"ecefvx":-0.02,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":1.50,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":37,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212945,1.42,M,1.42,M,3.07,M*33 +$GPGSV,4,1,16,82,27,064,37,81,28,124,41,94,34,072,50,11,28,102,46*72 +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:45.000Z","ept":0.005,"lat":44.068789739,"lon":-121.314100392,"alt":1125.022,"epx":1.419,"epy":1.419,"epv":3.070,"track":158.8070,"speed":0.025,"climb":0.029,"eps":0.03,"epc":139.34,"ecefx":-2386055.40,"ecefy":-3922196.96,"ecefz":4414355.12,"ecefvx":-0.01,"ecefvy":-0.04,"ecefvz":0.00,"ecefpAcc":1.50,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":37,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212945,1.42,M,1.42,M,3.08,M*3C +$GPGSV,4,1,16,82,27,064,37,81,28,124,42,94,34,072,50,11,28,102,46*71 +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,45,135,38,196,47,138,37,160,49,01,07,108,35*48 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:45.250Z","ept":0.005,"lat":44.068789764,"lon":-121.314100292,"alt":1125.034,"epx":1.422,"epy":1.422,"epv":3.078,"track":165.9107,"speed":0.015,"climb":0.001,"eps":0.04,"epc":139.35,"ecefx":-2386055.40,"ecefy":-3922196.97,"ecefz":4414355.13,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":-0.01,"ecefpAcc":1.50,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":37,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212945,1.42,M,1.42,M,3.08,M*3C +$GPGSV,4,1,16,82,27,064,38,81,28,124,42,94,34,072,50,11,28,102,46*7E +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:45.500Z","ept":0.005,"lat":44.068789730,"lon":-121.314100194,"alt":1125.029,"epx":1.423,"epy":1.423,"epv":3.080,"track":182.5198,"speed":0.021,"climb":0.008,"eps":0.03,"epc":139.38,"ecefx":-2386055.39,"ecefy":-3922196.97,"ecefz":4414355.12,"ecefvx":-0.01,"ecefvy":-0.02,"ecefvz":-0.01,"ecefpAcc":1.50,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":38,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212945,1.42,M,1.42,M,3.08,M*3C +$GPGSV,4,1,16,82,27,064,38,81,28,124,42,94,34,072,50,11,28,102,46*7E +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:45.750Z","ept":0.005,"lat":44.068789751,"lon":-121.314100204,"alt":1125.031,"epx":1.424,"epy":1.424,"epv":3.083,"track":165.7681,"speed":0.011,"climb":0.004,"eps":0.04,"epc":139.39,"ecefx":-2386055.39,"ecefy":-3922196.97,"ecefz":4414355.12,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":1.50,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":38,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212946,1.43,M,1.43,M,3.10,M*36 +$GPGSV,4,1,16,82,27,064,38,81,28,124,42,94,34,072,50,11,28,102,46*7E +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:46.000Z","ept":0.005,"lat":44.068789771,"lon":-121.314100166,"alt":1125.036,"epx":1.430,"epy":1.430,"epv":3.099,"track":179.2276,"speed":0.034,"climb":0.015,"eps":0.06,"epc":139.41,"ecefx":-2386055.39,"ecefy":-3922196.98,"ecefz":4414355.13,"ecefvx":-0.02,"ecefvy":-0.03,"ecefvz":-0.01,"ecefpAcc":1.51,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":38,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212946,1.43,M,1.43,M,3.10,M*36 +$GPGSV,4,1,16,82,27,064,39,81,28,124,41,94,34,072,50,11,28,102,46*7C +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:46.250Z","ept":0.005,"lat":44.068789769,"lon":-121.314100078,"alt":1125.038,"epx":1.429,"epy":1.429,"epv":3.097,"track":180.5602,"speed":0.028,"climb":0.001,"eps":0.04,"epc":139.48,"ecefx":-2386055.39,"ecefy":-3922196.98,"ecefz":4414355.13,"ecefvx":-0.01,"ecefvy":-0.02,"ecefvz":-0.02,"ecefpAcc":1.51,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":39,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212946,1.43,M,1.43,M,3.10,M*36 +$GPGSV,4,1,16,82,27,064,39,81,28,124,42,94,34,072,50,11,28,102,46*7F +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:46.500Z","ept":0.005,"lat":44.068789740,"lon":-121.314100025,"alt":1125.031,"epx":1.429,"epy":1.429,"epv":3.098,"track":179.1814,"speed":0.025,"climb":-0.011,"eps":0.05,"epc":139.48,"ecefx":-2386055.38,"ecefy":-3922196.98,"ecefz":4414355.12,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":-0.03,"ecefpAcc":1.51,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":39,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212946,1.43,M,1.43,M,3.10,M*36 +$GPGSV,4,1,16,82,27,064,39,81,28,124,42,94,34,072,50,11,28,102,46*7F +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:46.750Z","ept":0.005,"lat":44.068789787,"lon":-121.314100087,"alt":1125.025,"epx":1.430,"epy":1.430,"epv":3.102,"track":189.2821,"speed":0.021,"climb":0.011,"eps":0.03,"epc":139.48,"ecefx":-2386055.38,"ecefy":-3922196.97,"ecefz":4414355.12,"ecefvx":-0.01,"ecefvy":-0.02,"ecefvz":-0.01,"ecefpAcc":1.51,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":39,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212947,1.43,M,1.43,M,3.10,M*37 +$GPGSV,4,1,16,82,27,064,39,81,28,124,41,94,34,072,50,11,28,102,46*7C +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:47.000Z","ept":0.005,"lat":44.068789782,"lon":-121.314100139,"alt":1125.031,"epx":1.430,"epy":1.430,"epv":3.104,"track":241.4621,"speed":0.012,"climb":-0.016,"eps":0.03,"epc":139.50,"ecefx":-2386055.39,"ecefy":-3922196.97,"ecefz":4414355.13,"ecefvx":-0.01,"ecefvy":0.01,"ecefvz":-0.02,"ecefpAcc":1.51,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":39,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212947,1.43,M,1.43,M,3.11,M*36 +$GPGSV,4,1,16,82,27,064,40,81,28,124,41,94,34,072,50,11,28,102,46*72 +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:47.250Z","ept":0.005,"lat":44.068789798,"lon":-121.314100215,"alt":1125.024,"epx":1.433,"epy":1.433,"epv":3.113,"track":168.8478,"speed":0.026,"climb":0.036,"eps":0.03,"epc":139.52,"ecefx":-2386055.39,"ecefy":-3922196.97,"ecefz":4414355.12,"ecefvx":-0.02,"ecefvy":-0.04,"ecefvz":0.01,"ecefpAcc":1.52,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":40,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212947,1.43,M,1.43,M,3.11,M*36 +$GPGSV,4,1,16,82,27,064,40,81,28,124,42,94,34,072,50,11,28,102,46*71 +$GPGSV,4,2,16,08,29,048,43,133,39,192,46,13,40,306,40,17,20,186,44*4F +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,45,135,38,196,46,138,37,160,49,01,07,108,35*49 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:47.500Z","ept":0.005,"lat":44.068789937,"lon":-121.314100269,"alt":1125.000,"epx":1.433,"epy":1.433,"epv":3.113,"track":174.4074,"speed":0.014,"climb":0.023,"eps":0.02,"epc":139.56,"ecefx":-2386055.38,"ecefy":-3922196.94,"ecefz":4414355.12,"ecefvx":-0.01,"ecefvy":-0.02,"ecefvz":0.01,"ecefpAcc":1.52,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":40,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212947,1.43,M,1.43,M,3.11,M*36 +$GPGSV,4,1,16,82,27,064,40,81,28,124,42,94,34,072,50,11,28,102,46*71 +$GPGSV,4,2,16,08,29,048,43,133,39,192,46,13,40,306,40,17,20,186,44*4F +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,50,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:47.750Z","ept":0.005,"lat":44.068789991,"lon":-121.314100225,"alt":1124.990,"epx":1.431,"epy":1.431,"epv":3.111,"track":320.9271,"speed":0.012,"climb":-0.009,"eps":0.03,"epc":139.56,"ecefx":-2386055.37,"ecefy":-3922196.93,"ecefz":4414355.11,"ecefvx":0.00,"ecefvy":0.01,"ecefvz":0.00,"ecefpAcc":1.51,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":40,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212948,1.43,M,1.43,M,3.12,M*3A +$GPGSV,4,1,16,82,27,064,40,81,28,124,41,94,34,072,50,11,28,102,46*72 +$GPGSV,4,2,16,08,29,048,44,133,39,192,46,13,40,306,40,17,20,186,44*48 +$GPGSV,4,3,16,28,77,278,50,30,75,076,55,07,49,102,51,18,12,086,41*77 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,36*48 +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:48.000Z","ept":0.005,"lat":44.068790061,"lon":-121.314100136,"alt":1124.989,"epx":1.433,"epy":1.433,"epv":3.117,"track":187.9245,"speed":0.008,"climb":0.002,"eps":0.03,"epc":139.56,"ecefx":-2386055.36,"ecefy":-3922196.93,"ecefz":4414355.12,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":1.52,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":40,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":44,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":55,"used":true},{"PRN":7,"el":49,"az":102,"ss":51,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":36,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212948,1.43,M,1.43,M,3.12,M*3A +$GPGSV,4,1,16,82,27,064,40,81,28,124,41,94,34,072,50,11,28,102,46*72 +$GPGSV,4,2,16,08,29,048,43,133,39,192,46,13,40,306,40,17,20,186,44*4F +$GPGSV,4,3,16,28,77,278,50,30,75,076,54,07,49,102,50,18,12,086,41*77 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,49,01,07,108,35*4B +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:48.250Z","ept":0.005,"lat":44.068790084,"lon":-121.314100078,"alt":1124.980,"epx":1.434,"epy":1.434,"epv":3.120,"track":118.4276,"speed":0.007,"climb":0.018,"eps":0.03,"epc":139.59,"ecefx":-2386055.35,"ecefy":-3922196.92,"ecefz":4414355.11,"ecefvx":-0.00,"ecefvy":-0.02,"ecefvz":0.01,"ecefpAcc":1.52,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":40,"used":true},{"PRN":81,"el":28,"az":124,"ss":41,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":44,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":54,"used":true},{"PRN":7,"el":49,"az":102,"ss":50,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":49,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} +$GPGSA,A,3,82,81,94,11,8,13,17,28,30,7,18,,1.7,0.9,1.4*3D +$GPGBS,212948,1.44,M,1.44,M,3.13,M*3B +$GPGSV,4,1,16,82,27,064,40,81,28,124,42,94,34,072,50,11,28,102,46*71 +$GPGSV,4,2,16,08,29,048,43,133,39,192,46,13,40,306,40,17,20,186,45*4E +$GPGSV,4,3,16,28,77,278,50,30,75,076,54,07,49,102,51,18,12,086,41*76 +$GPGSV,4,4,16,131,39,174,46,135,38,196,47,138,37,160,48,01,07,108,35*4A +{"class":"TPV","mode":3,"time":"2018-03-29T21:29:48.500Z","ept":0.005,"lat":44.068790111,"lon":-121.314100032,"alt":1124.966,"epx":1.440,"epy":1.440,"epv":3.132,"track":148.2200,"speed":0.019,"climb":0.012,"eps":0.02,"epc":139.60,"ecefx":-2386055.34,"ecefy":-3922196.92,"ecefz":4414355.11,"ecefvx":-0.00,"ecefvy":-0.02,"ecefvz":-0.00,"ecefpAcc":1.52,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.69,"ydop":0.74,"vdop":1.38,"tdop":1.00,"hdop":0.91,"gdop":2.01,"pdop":1.66,"satellites":[{"PRN":82,"el":27,"az":64,"ss":40,"used":true},{"PRN":81,"el":28,"az":124,"ss":42,"used":true},{"PRN":94,"el":34,"az":72,"ss":50,"used":true},{"PRN":11,"el":28,"az":102,"ss":46,"used":true},{"PRN":8,"el":29,"az":48,"ss":43,"used":true},{"PRN":133,"el":39,"az":192,"ss":46,"used":false},{"PRN":13,"el":40,"az":306,"ss":40,"used":true},{"PRN":17,"el":20,"az":186,"ss":45,"used":true},{"PRN":28,"el":77,"az":278,"ss":50,"used":true},{"PRN":30,"el":75,"az":76,"ss":54,"used":true},{"PRN":7,"el":49,"az":102,"ss":51,"used":true},{"PRN":18,"el":12,"az":86,"ss":41,"used":true},{"PRN":131,"el":39,"az":174,"ss":46,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":138,"el":37,"az":160,"ss":48,"used":true},{"PRN":1,"el":7,"az":108,"ss":35,"used":true}]} diff --git a/test/daemon/greis-test.log b/test/daemon/greis-test.log Binary files differnew file mode 100644 index 00000000..96a1ae3b --- /dev/null +++ b/test/daemon/greis-test.log diff --git a/test/daemon/greis-test.log.chk b/test/daemon/greis-test.log.chk new file mode 100644 index 00000000..909a8240 --- /dev/null +++ b/test/daemon/greis-test.log.chk @@ -0,0 +1,308 @@ +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.14,M,1.14,M,3.14,M*38 +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,43,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,46,15,30,298,43,30,48,122,48,01,23,080,42*7F +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,40,140,47*74 +{"class":"TPV","mode":3,"lat":44.068809013,"lon":-121.314096779,"alt":1123.727,"epx":1.142,"epy":1.142,"epv":3.138,"track":25.0225,"speed":0.008,"climb":-0.002,"eps":0.01,"ecefx":-2386053.90,"ecefy":-3922195.04,"ecefz":4414355.75,"ecefvx":0.01,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":1.44,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.61,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":43,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":43,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":40,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.14,M,1.14,M,3.13,M*3F +$GPGSV,5,1,18,131,39,174,45,135,38,196,47,79,08,206,41,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,42,13,51,262,47*71 +$GPGSV,5,3,18,19,31,196,46,15,30,298,43,30,48,122,48,01,23,080,42*7F +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,40,140,47*74 +{"class":"TPV","mode":3,"lat":44.068809026,"lon":-121.314096799,"alt":1123.732,"epx":1.140,"epy":1.140,"epv":3.132,"track":309.0270,"speed":0.001,"climb":-0.002,"eps":0.02,"ecefx":-2386053.90,"ecefy":-3922195.04,"ecefz":4414355.76,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":-0.00,"ecefpAcc":1.44,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.61,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":43,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":40,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.14,M,1.14,M,3.13,M*3F +$GPGSV,5,1,18,131,39,174,45,135,38,196,47,79,08,206,41,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,43,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,46,15,30,298,43,30,48,122,48,01,23,080,42*7F +$GPGSV,5,4,18,28,67,038,46,138,37,160,47,133,39,192,45,94,69,326,44*7C +$GPGSV,5,5,18,17,53,186,47,82,40,140,47*74 +{"class":"TPV","mode":3,"lat":44.068809023,"lon":-121.314096795,"alt":1123.731,"epx":1.139,"epy":1.139,"epv":3.131,"track":83.8207,"speed":0.008,"climb":-0.005,"eps":0.02,"ecefx":-2386053.90,"ecefy":-3922195.04,"ecefz":4414355.76,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":1.44,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.61,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":43,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":43,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":47,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":40,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.14,M,1.14,M,3.13,M*3F +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,42,13,51,262,47*71 +$GPGSV,5,3,18,19,31,196,46,15,30,298,43,30,48,122,48,01,23,080,42*7F +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,40,140,47*74 +{"class":"TPV","mode":3,"lat":44.068809032,"lon":-121.314096770,"alt":1123.739,"epx":1.137,"epy":1.137,"epv":3.126,"track":54.2451,"speed":0.008,"climb":0.002,"eps":0.02,"ecefx":-2386053.90,"ecefy":-3922195.05,"ecefz":4414355.76,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":0.00,"ecefpAcc":1.43,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.61,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":43,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":40,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.14,M,1.14,M,3.12,M*3E +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,43,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,42*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809010,"lon":-121.314096763,"alt":1123.743,"epx":1.136,"epy":1.136,"epv":3.123,"track":1.3779,"speed":0.004,"climb":0.009,"eps":0.01,"ecefx":-2386053.90,"ecefy":-3922195.05,"ecefz":4414355.76,"ecefvx":-0.00,"ecefvy":-0.00,"ecefvz":0.01,"ecefpAcc":1.43,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":43,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.14,M,1.14,M,3.12,M*3E +$GPGSV,5,1,18,131,39,174,45,135,38,196,47,79,08,206,41,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,43,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,43*79 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809034,"lon":-121.314096725,"alt":1123.750,"epx":1.135,"epy":1.135,"epv":3.121,"track":84.8268,"speed":0.007,"climb":0.013,"eps":0.02,"ecefx":-2386053.90,"ecefy":-3922195.06,"ecefz":4414355.77,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":1.43,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":47,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":43,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,6.81,M,8.86,M,27.32,M*03 +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,42,13,51,262,47*71 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,42*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,47,133,39,192,45,94,69,326,44*7C +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809038,"lon":-121.314096717,"alt":1123.748,"epx":6.812,"epy":8.860,"epv":27.325,"track":43.6643,"speed":0.009,"climb":0.000,"ecefx":-2386053.90,"ecefy":-3922195.06,"ecefz":4414355.77,"ecefvx":0.01,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":1.43,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":47,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.13,M,1.13,M,3.12,M*3E +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,42,13,51,262,47*71 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,42*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809031,"lon":-121.314096692,"alt":1123.751,"epx":1.135,"epy":1.135,"epv":3.119,"track":144.3912,"speed":0.015,"climb":0.003,"eps":0.02,"ecefx":-2386053.90,"ecefy":-3922195.06,"ecefz":4414355.77,"ecefvx":0.00,"ecefvy":-0.01,"ecefvz":-0.01,"ecefpAcc":1.43,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.13,M,1.13,M,3.11,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,42,13,51,262,47*71 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,42*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809047,"lon":-121.314096684,"alt":1123.750,"epx":1.133,"epy":1.133,"epv":3.114,"track":90.5884,"speed":0.007,"climb":0.002,"eps":0.03,"ecefx":-2386053.90,"ecefy":-3922195.06,"ecefz":4414355.77,"ecefvx":0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":1.43,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.13,M,1.13,M,3.11,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,43,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,43*79 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809047,"lon":-121.314096680,"alt":1123.754,"epx":1.132,"epy":1.132,"epv":3.112,"track":109.7432,"speed":0.009,"climb":-0.003,"eps":0.03,"ecefx":-2386053.90,"ecefy":-3922195.06,"ecefz":4414355.78,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":1.43,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":43,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +{"class":"TPV","mode":3,"lat":44.068809051,"lon":-121.314096675,"alt":1123.752,"epx":1.131,"epy":1.131,"epv":3.108,"track":347.8175,"speed":0.005,"climb":-0.002,"eps":0.03,"ecefx":-2386053.90,"ecefy":-3922195.06,"ecefz":4414355.77,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":1.43,"ecefvAcc":0.02} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.13,M,1.13,M,3.10,M*3C +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,42,13,51,262,47*71 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,43*79 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809062,"lon":-121.314096655,"alt":1123.754,"epx":1.128,"epy":1.128,"epv":3.101,"track":0.0257,"speed":0.009,"climb":-0.012,"eps":0.02,"ecefx":-2386053.90,"ecefy":-3922195.06,"ecefz":4414355.78,"ecefvx":0.01,"ecefvy":0.01,"ecefvz":-0.00,"ecefpAcc":1.42,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +{"class":"TPV","mode":3,"lat":44.068809084,"lon":-121.314096645,"alt":1123.752,"epx":1.125,"epy":1.125,"epv":3.092,"track":20.8831,"speed":0.010,"climb":-0.001,"eps":0.03,"ecefx":-2386053.89,"ecefy":-3922195.06,"ecefz":4414355.78,"ecefvx":0.01,"ecefvy":0.00,"ecefvz":0.01,"ecefpAcc":1.42,"ecefvAcc":0.03} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.12,M,1.12,M,3.08,M*35 +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,43,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809096,"lon":-121.314096615,"alt":1123.758,"epx":1.122,"epy":1.122,"epv":3.084,"track":44.5163,"speed":0.015,"climb":0.002,"eps":0.03,"ecefx":-2386053.89,"ecefy":-3922195.06,"ecefz":4414355.78,"ecefvx":0.01,"ecefvy":-0.00,"ecefvz":0.01,"ecefpAcc":1.42,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":43,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +{"class":"TPV","mode":3,"lat":44.068809124,"lon":-121.314096630,"alt":1123.760,"epx":1.120,"epy":1.120,"epv":3.077,"track":347.8254,"speed":0.003,"climb":0.006,"eps":0.02,"ecefx":-2386053.90,"ecefy":-3922195.06,"ecefz":4414355.79,"ecefvx":-0.00,"ecefvy":-0.00,"ecefvz":0.01,"ecefpAcc":1.41,"ecefvAcc":0.02} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.12,M,1.12,M,3.07,M*3A +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,42,13,51,262,47*71 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809143,"lon":-121.314096624,"alt":1123.762,"epx":1.115,"epy":1.115,"epv":3.065,"track":10.5222,"speed":0.006,"climb":-0.000,"eps":0.02,"ecefx":-2386053.89,"ecefy":-3922195.06,"ecefz":4414355.79,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":1.41,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +{"class":"TPV","mode":3,"lat":44.068809166,"lon":-121.314096609,"alt":1123.764,"epx":1.112,"epy":1.112,"epv":3.055,"track":5.7631,"speed":0.016,"climb":-0.007,"eps":0.03,"ecefx":-2386053.89,"ecefy":-3922195.06,"ecefz":4414355.79,"ecefvx":0.01,"ecefvy":0.01,"ecefvz":0.01,"ecefpAcc":1.40,"ecefvAcc":0.02} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.11,M,1.11,M,3.05,M*38 +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,42,13,51,262,47*71 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,43*79 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809188,"lon":-121.314096622,"alt":1123.763,"epx":1.110,"epy":1.110,"epv":3.049,"track":357.2622,"speed":0.003,"climb":-0.003,"eps":0.02,"ecefx":-2386053.89,"ecefy":-3922195.06,"ecefz":4414355.79,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":-0.00,"ecefpAcc":1.40,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,43*79 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809203,"lon":-121.314096629,"alt":1123.757,"epx":1.106,"epy":1.106,"epv":3.039,"track":24.5535,"speed":0.009,"climb":-0.004,"eps":0.02,"ecefx":-2386053.89,"ecefy":-3922195.06,"ecefz":4414355.79,"ecefvx":0.01,"ecefvy":0.01,"ecefvz":0.00,"ecefpAcc":1.40,"ecefvAcc":0.02} +{"class":"SKY","vdop":1.19,"tdop":0.80,"hdop":0.70,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":false},{"PRN":135,"el":38,"az":196,"ss":46,"used":false},{"PRN":79,"el":8,"az":206,"ss":41,"used":false},{"PRN":11,"el":31,"az":66,"ss":47,"used":false},{"PRN":7,"el":21,"az":126,"ss":47,"used":false},{"PRN":18,"el":18,"az":56,"ss":35,"used":false},{"PRN":75,"el":26,"az":254,"ss":42,"used":false},{"PRN":13,"el":51,"az":262,"ss":47,"used":false},{"PRN":19,"el":31,"az":196,"ss":46,"used":false},{"PRN":15,"el":30,"az":298,"ss":44,"used":false},{"PRN":30,"el":48,"az":122,"ss":48,"used":false},{"PRN":1,"el":23,"az":80,"ss":43,"used":false},{"PRN":28,"el":67,"az":38,"ss":46,"used":false},{"PRN":138,"el":37,"az":160,"ss":46,"used":false},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":false},{"PRN":17,"el":53,"az":186,"ss":47,"used":false},{"PRN":82,"el":41,"az":140,"ss":47,"used":false}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.04,M*39 +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,34,75,26,254,43,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809202,"lon":-121.314096636,"alt":1123.759,"epx":1.104,"epy":1.104,"epv":3.036,"track":329.3512,"speed":0.002,"climb":0.001,"eps":0.02,"ecefx":-2386053.89,"ecefy":-3922195.06,"ecefz":4414355.79,"ecefvx":-0.00,"ecefvy":0.00,"ecefvz":0.00,"ecefpAcc":1.39,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":34,"used":true},{"PRN":75,"el":26,"az":254,"ss":43,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.03,M*3E +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,46,15,30,298,44,30,48,122,48,01,23,080,43*79 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809217,"lon":-121.314096648,"alt":1123.759,"epx":1.102,"epy":1.102,"epv":3.028,"track":345.3285,"speed":0.000,"climb":-0.004,"eps":0.01,"ecefx":-2386053.89,"ecefy":-3922195.05,"ecefz":4414355.79,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":-0.00,"ecefpAcc":1.39,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":46,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.02,M*3F +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,42*79 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809237,"lon":-121.314096662,"alt":1123.762,"epx":1.097,"epy":1.097,"epv":3.016,"track":20.0759,"speed":0.008,"climb":0.012,"eps":0.02,"ecefx":-2386053.89,"ecefy":-3922195.05,"ecefz":4414355.80,"ecefvx":0.00,"ecefvy":-0.00,"ecefvz":0.01,"ecefpAcc":1.38,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":42,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.00,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809257,"lon":-121.314096701,"alt":1123.755,"epx":1.093,"epy":1.093,"epv":3.005,"track":320.0172,"speed":0.013,"climb":0.007,"eps":0.03,"ecefx":-2386053.89,"ecefy":-3922195.05,"ecefz":4414355.79,"ecefvx":-0.01,"ecefvy":0.01,"ecefvz":0.01,"ecefpAcc":1.38,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.00,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809265,"lon":-121.314096739,"alt":1123.750,"epx":1.091,"epy":1.091,"epv":2.999,"track":303.7154,"speed":0.016,"climb":-0.005,"eps":0.02,"ecefx":-2386053.89,"ecefy":-3922195.04,"ecefz":4414355.79,"ecefvx":-0.01,"ecefvy":0.02,"ecefvz":0.00,"ecefpAcc":1.38,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,2.99,M*3C +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809263,"lon":-121.314096756,"alt":1123.748,"epx":1.090,"epy":1.090,"epv":2.995,"track":231.6439,"speed":0.010,"climb":-0.022,"eps":0.03,"ecefx":-2386053.89,"ecefy":-3922195.04,"ecefz":4414355.79,"ecefvx":-0.00,"ecefvy":0.01,"ecefvz":-0.02,"ecefpAcc":1.37,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.00,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809261,"lon":-121.314096823,"alt":1123.745,"epx":1.091,"epy":1.091,"epv":2.998,"track":222.0091,"speed":0.011,"climb":0.012,"eps":0.03,"ecefx":-2386053.90,"ecefy":-3922195.04,"ecefz":4414355.79,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":1.38,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.00,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809268,"lon":-121.314096874,"alt":1123.740,"epx":1.092,"epy":1.092,"epv":3.002,"track":232.0213,"speed":0.009,"climb":0.011,"eps":0.05,"ecefx":-2386053.90,"ecefy":-3922195.03,"ecefz":4414355.78,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":1.38,"ecefvAcc":0.04} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.00,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,48*7A +{"class":"TPV","mode":3,"lat":44.068809230,"lon":-121.314096936,"alt":1123.735,"epx":1.091,"epy":1.091,"epv":2.998,"track":183.4138,"speed":0.005,"climb":-0.010,"eps":0.03,"ecefx":-2386053.90,"ecefy":-3922195.03,"ecefz":4414355.78,"ecefvx":0.00,"ecefvy":0.00,"ecefvz":-0.01,"ecefpAcc":1.38,"ecefvAcc":0.03} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":48,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.00,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809223,"lon":-121.314096970,"alt":1123.730,"epx":1.091,"epy":1.091,"epv":3.001,"track":217.9745,"speed":0.006,"climb":-0.001,"eps":0.03,"ecefx":-2386053.90,"ecefy":-3922195.02,"ecefz":4414355.77,"ecefvx":-0.00,"ecefvy":-0.00,"ecefvz":-0.00,"ecefpAcc":1.38,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.00,M*3D +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"epx":1.091,"epy":1.091,"epv":3.001,"eps":0.01,"ecefy":-3922195.03,"ecefz":4414355.77,"ecefvx":-0.02,"ecefvy":-0.02,"ecefvz":0.01,"ecefpAcc":1.38,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.01,M*3C +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,48*7A +{"class":"TPV","mode":3,"lat":44.068809186,"lon":-121.314097004,"alt":1123.727,"epx":1.093,"epy":1.093,"epv":3.006,"track":255.0720,"speed":0.012,"climb":0.009,"eps":0.01,"ecefx":-2386053.91,"ecefy":-3922195.02,"ecefz":4414355.77,"ecefvx":-0.01,"ecefvy":-0.00,"ecefvz":0.00,"ecefpAcc":1.38,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":48,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.09,M,1.09,M,3.01,M*3C +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,48*7A +{"class":"TPV","mode":3,"epx":1.094,"epy":1.094,"epv":3.007,"eps":0.01,"ecefy":-3922195.02,"ecefz":4414355.77,"ecefvx":-0.00,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":1.38,"ecefvAcc":0.01} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":48,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.01,M*3C +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,36,75,26,254,42,13,51,262,47*73 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,48*7A +{"class":"TPV","mode":3,"lat":44.068809145,"lon":-121.314097010,"alt":1123.723,"epx":1.096,"epy":1.096,"epv":3.013,"track":195.5423,"speed":0.015,"climb":0.009,"eps":0.02,"ecefx":-2386053.91,"ecefy":-3922195.02,"ecefz":4414355.76,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":1.38,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":36,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":48,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.02,M*3F +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,36,75,26,254,42,13,51,262,47*73 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,48*7A +{"class":"TPV","mode":3,"lat":0.000000000,"lon":-90.000000000,"epx":1.097,"epy":1.097,"epv":3.017,"track":251.6971,"speed":0.013,"climb":0.012,"eps":0.02,"ecefx":-2386053.91,"ecefz":4414355.76,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":-0.00,"ecefpAcc":1.38,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":36,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":48,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.02,M*3F +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,48*7A +{"class":"TPV","mode":3,"lat":44.068809123,"lon":-121.314097044,"alt":1123.718,"epx":1.099,"epy":1.099,"epv":3.022,"track":220.0046,"speed":0.010,"climb":-0.004,"eps":0.02,"ecefx":-2386053.91,"ecefy":-3922195.02,"ecefz":4414355.76,"ecefvx":-0.01,"ecefvy":0.00,"ecefvz":-0.01,"ecefpAcc":1.39,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":48,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.03,M*3E +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,41,11,31,066,47*78 +$GPGSV,5,2,18,07,21,126,47,18,18,056,35,75,26,254,42,13,51,262,47*70 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,48*7A +{"class":"TPV","mode":3,"lat":44.068809118,"lon":-121.314097059,"alt":1123.714,"epx":1.101,"epy":1.101,"epv":3.026,"track":217.0212,"speed":0.009,"climb":0.014,"eps":0.02,"ecefx":-2386053.91,"ecefy":-3922195.02,"ecefz":4414355.75,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.00,"ecefpAcc":1.39,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":41,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":35,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":48,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.02,M*3F +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,36,75,26,254,42,13,51,262,47*73 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,48*7A +{"class":"TPV","mode":3,"lat":44.068809118,"lon":-121.314097075,"alt":1123.714,"epx":1.100,"epy":1.100,"epv":3.023,"track":294.2972,"speed":0.005,"climb":0.014,"eps":0.02,"ecefx":-2386053.91,"ecefy":-3922195.02,"ecefz":4414355.75,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":1.39,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":36,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":48,"used":true}]} +$GPGSA,A,3,131,135,79,11,7,18,75,13,19,15,30,1,1.4,0.7,1.2*39 +$GPGBS,000000,1.10,M,1.10,M,3.03,M*3E +$GPGSV,5,1,18,131,39,174,45,135,38,196,46,79,08,206,40,11,31,066,47*79 +$GPGSV,5,2,18,07,21,126,47,18,18,056,36,75,26,254,42,13,51,262,47*73 +$GPGSV,5,3,18,19,31,196,47,15,30,298,44,30,48,122,48,01,23,080,43*78 +$GPGSV,5,4,18,28,67,038,46,138,37,160,46,133,39,192,45,94,69,326,44*7D +$GPGSV,5,5,18,17,53,186,47,82,41,140,47*75 +{"class":"TPV","mode":3,"lat":44.068809122,"lon":-121.314097087,"alt":1123.711,"epx":1.101,"epy":1.101,"epv":3.026,"track":290.8300,"speed":0.005,"climb":0.019,"eps":0.02,"ecefx":-2386053.91,"ecefy":-3922195.01,"ecefz":4414355.75,"ecefvx":-0.01,"ecefvy":-0.01,"ecefvz":0.01,"ecefpAcc":1.39,"ecefvAcc":0.02} +{"class":"SKY","xdop":0.45,"ydop":0.59,"vdop":1.19,"tdop":0.80,"hdop":0.70,"gdop":1.60,"pdop":1.38,"satellites":[{"PRN":131,"el":39,"az":174,"ss":45,"used":true},{"PRN":135,"el":38,"az":196,"ss":46,"used":true},{"PRN":79,"el":8,"az":206,"ss":40,"used":true},{"PRN":11,"el":31,"az":66,"ss":47,"used":true},{"PRN":7,"el":21,"az":126,"ss":47,"used":true},{"PRN":18,"el":18,"az":56,"ss":36,"used":true},{"PRN":75,"el":26,"az":254,"ss":42,"used":true},{"PRN":13,"el":51,"az":262,"ss":47,"used":true},{"PRN":19,"el":31,"az":196,"ss":47,"used":true},{"PRN":15,"el":30,"az":298,"ss":44,"used":true},{"PRN":30,"el":48,"az":122,"ss":48,"used":true},{"PRN":1,"el":23,"az":80,"ss":43,"used":true},{"PRN":28,"el":67,"az":38,"ss":46,"used":true},{"PRN":138,"el":37,"az":160,"ss":46,"used":true},{"PRN":133,"el":39,"az":192,"ss":45,"used":false},{"PRN":94,"el":69,"az":326,"ss":44,"used":true},{"PRN":17,"el":53,"az":186,"ss":47,"used":true},{"PRN":82,"el":41,"az":140,"ss":47,"used":true}]} diff --git a/test/daemon/greis-test2.log b/test/daemon/greis-test2.log Binary files differnew file mode 100644 index 00000000..88aef12a --- /dev/null +++ b/test/daemon/greis-test2.log diff --git a/test/daemon/greis-test2.log.chk b/test/daemon/greis-test2.log.chk new file mode 100644 index 00000000..cd74dfbd --- /dev/null +++ b/test/daemon/greis-test2.log.chk @@ -0,0 +1,42 @@ +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:17.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY"} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:18.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:19.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:20.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:21.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:22.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:23.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:24.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:25.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:26.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} +$GPGSV,2,1,07,01,-91,000,00,02,20,100,20,03,30,180,30,04,40,150,40*50 +$GPGSV,2,2,07,05,90,000,90,06,-91,-01,255,00,00,000,00*46 +{"class":"TPV","mode":3,"time":"2018-05-15T22:02:27.000Z","ept":0.005,"lat":44.068812095,"lon":-121.313997737,"alt":2000020.152,"track":10.1606,"speed":0.000,"climb":-3389.549,"ecefx":-3132489.00,"ecefy":-5149205.00,"ecefz":5804632.00,"ecefvx":9400.00,"ecefvy":10001.00,"ecefvz":9000.00,"ecefpAcc":50.00,"ecefvAcc":30.00} +{"class":"SKY","satellites":[{"PRN":1,"el":-91,"az":0,"ss":0,"used":true},{"PRN":2,"el":20,"az":100,"ss":20,"used":true},{"PRN":3,"el":30,"az":180,"ss":30,"used":true},{"PRN":4,"el":40,"az":150,"ss":40,"used":true},{"PRN":5,"el":90,"az":0,"ss":90,"used":false},{"PRN":6,"el":-91,"az":-1,"ss":255,"used":true}]} |