| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
It was eating #-comments after NMEA packets. Wouldn't matter, except
gpsfake now interprets a magic comment to control sentence timing. All
regression tests pass.
|
|
|
|
|
|
|
| |
That is, instead of sectioning out two little config defines and
putting them in. This makes gpsd.h self-copntained (e.g. in case it
gets installed as a library header) and means we can get rid of most
inclusions of it.
|
|
|
|
|
| |
particularly useful when the packet sniffer guessed wrong and thinks
baud spew is TSIP. from "edo1" in irc.
|
|
|
|
| |
All regression tests pass.
|
|
|
|
|
| |
Still not found what recent patch broke Garmin USB binary
and Garmin Serial binary
|
| |
|
| |
|
| |
|
|
|
|
| |
...splint needs some pacifying. This is part 1. All regressions pass.
|
|
|
|
|
| |
Solaris lacks u_int*_t typedefs. Switch to the C99 standard ones. All
regression tests pass.
|
| |
|
| |
|
|
|
|
| |
Now to see if I can trim them any.
|
|
|
|
| |
No effect on compilation. All regression tests pass.
|
|
|
|
|
|
| |
which is what it actually returns. Using 0 as the invalid packet
marker is possible, as every packet has at least a checksum. Some
type-casting can then be avoided. >From Hakan Johansson
|
|
|
|
|
|
|
|
|
|
|
|
| |
driver_oncore.c:
no ..._detect() function needed
dop is in .1 units
using macro ONCTYPE to avoid splint warning (also looks better I think)
return false from ..._set_speed()
packet.c:
anti-splint typecast
using macro ONCTYPE to avoid splint warnings
|
|
|
|
| |
prompted by Hakan Johansson
|
|
|
|
|
|
| |
This guards against finding 0x0d 0x0a somewhere in the payload. It can
happen, and does happen often enough to be annoying. From Hakan
Johansson on gpsd-dev
|
|
|
|
|
|
| |
Doesn't do anything useful, but will be handy for people with actual
hardware who can hack on the decoders. Doesn't break the regression
tests either.
|
|
|
|
|
| |
we treat these as non-errors, so return 0 bytes read. makes reading
from pty's much happier
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
packet_get() now always returns nonzero when it could either read
fresh data or assemble a packet from data already read and buffered --
no more returning 0 when it has assembled a packet from buffered data
but can't read any new data. I suspect this may have been causing
subtle bugs.
|
| |
|
| |
|
|
|
|
|
| |
This gets packets and delivers them to a stub analyzer, fields parsed
out and checksum verified.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
not enabled by default yet; i still need to get mode switching
working.
kinda funny - i bought the superstar last july, and it's taken me nearly
six months to even take it out of the antistatic bag. at least the driver
isn't vaporware any more (and the only copy of it isn't on my laptop).
|
| |
|
| |
|
| |
|
|
|
|
|
| |
It's all conditioned out by #ifdef OCEANSERVER. Some if the
probe logic still needs to be written.
|
|
|
|
|
|
|
|
| |
...and copying ascii strings around when they're not going to be printed.
This saves quite a lot of CPU. I processed a 50MB ubx binary file. With
no "-D" options, this saved nearly 2.2M calls to gpsd_hexdump and the
processing time for this file went from 84 seconds to 35 seconds.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gpsd: GPS System Message: 8ODHT4KK0D6R80PMVRUxLK
I checked with that guy who produces that poorly photocopied on
low-grade paper weekly conspiracy theorist news-rag. He said
"ZOMG THE ORBITAL MIND CONTROL RAY HAS BEEN ACTIVATED!!!" :)
I have no idea if that's a meaningful message or if my thunderbolt had
a brain fart while decoding the real message. Older versions of the TSIP
manual say the message is 22 bytes long (this is) and that the GPS spec
says it's free-form ASCII (alas, that bit of line/RF noise qualifies.)
|
| |
|
| |
|
|
|
|
|
|
| |
...for the presence of buffered data. Use this to make rtcmdecode work
right using the packet getter. This enables it to see RTCM3 packets,
though full decoding doesn't yet work.
|
|
|
|
| |
Document some assumptions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes a bonehead error in gpsd's input data management that
has been undetected for years because it only showed up reproducibly
when one of gpsd's device inputs was connected to a file, *not* an
actual GPS constantly streaming data to it.
The error was that packet_get() would return 0, signaling end of input
in some circumstances, any time a physical read from the device failed
or returned 0 - even if there was still data in the packet input buffer.
As a result, gpsd could fail to see a random number of bytes at the
end of a file source. This probably accounts for sporadic spurious
errors associated with short reads in the regression tests. The error
was masked when connected to actual GPSes, which would always make
more data available for physical read within a second or so.
The new test tries to parse out packet data if either the physical read
returned > 0 or the packet input buffer is nonempty. Note, this depends
on the packet_parse() function shortening the input buffer by at least one
byte per call every time, otherwise this test could result in gpsd
infinite-looping on an empty buffer.
|