summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--garmin.c11
-rw-r--r--gpsd.h3
-rw-r--r--packet.c2
3 files changed, 10 insertions, 6 deletions
diff --git a/garmin.c b/garmin.c
index 50f61afa..db2df113 100644
--- a/garmin.c
+++ b/garmin.c
@@ -7,10 +7,12 @@
* This code is partly from the Garmin IOSDK and partly from the
* sample code in the Linux garmin_gps driver.
*
- * Presently this code needs the Linux garmin_gps driver and will
- * not function without it. This code has been tested and at leastt
- * at one time is known to work on big- and little-endian CPUs and 32
- * and 64 bit cpu modes.
+ * This code supports both Garmin on a serial port and USB Garmins.
+ *
+ * USB Garmins need the Linux garmin_gps driver and will not function
+ * without it. This code has been tested and at least at one time is
+ * known to work on big- and little-endian CPUs and 32 and 64 bit cpu
+ * modes.
*
* Protocol info from:
* GPS18_TechnicalSpecification.pdf
@@ -23,6 +25,7 @@
* -D 3 = packet trace
* -D 4 = packet details
* -D 5 = more packet details
+ * -D 6 = very excessive details
*
* limitations:
*
diff --git a/gpsd.h b/gpsd.h
index 55cba880..56fb6cfb 100644
--- a/gpsd.h
+++ b/gpsd.h
@@ -139,7 +139,8 @@ struct gps_device_t {
unsigned char inbuffer[MAX_PACKET_LENGTH*2+1];
size_t inbuflen;
unsigned /*@observer@*/char *inbufptr;
- unsigned char outbuffer[MAX_PACKET_LENGTH+1];
+ /* outbuffer needs to be able to hold 4 GPGSV records at once */
+ unsigned char outbuffer[MAX_PACKET_LENGTH*2+1];
size_t outbuflen;
unsigned long char_counter; /* count characters processed */
unsigned long retry_counter; /* count sniff retries */
diff --git a/packet.c b/packet.c
index ac154a3c..2bf20245 100644
--- a/packet.c
+++ b/packet.c
@@ -730,7 +730,7 @@ ssize_t packet_parse(struct gps_device_t *session, size_t fix)
packet_accept(session, GARMIN_PACKET);
else
#endif /* GARMIN_ENABLE */
- packet_accept(session, TSIP_PACKET);
+ packet_accept(session, TSIP_PACKET);
} else
session->packet_state = GROUND_STATE;
packet_discard(session);