TinyGPS parsing


I have the ITEAD gps shield, and for some reason it does not read the checksum, so I was going to edit tinyGPS.cpp to parse only the time, lat, long, and speed.

Here is what I am currently getting by just writing each character:

$GPRMC,0XX921.00,A,3909.65960,N,08631.72007,W,0.243,,311013,,,A, CHARS=16208 SENTENCES=0 CSUM ERR=0
$GPRMC,0XX922.00,A,3909.65964,N,08631.72002,W,0.354,,311013,,,A, CHARS=16272 SENTENCES=0 CSUM ERR=0
$GPRMC,0XX923.00,A,3909.65990,N,08631.71971,W,0.662,,311013,,,A2 CHARS=16336 SENTENCES=0 CSUM ERR=0

If anyone is familiar with the tinygps.cpp file, I just need to be pointed in the right direction, thanks!

Are you not seeing a newline from the gps, either? It looks (in other threads) like you’re echoing everything your receive from the GPS, but your “CHARS=” generated output is immediately following the sentence, with no newline.
It look like tinyGPS really wants things terminated by *, so the reason you’re not seeing any “sentences” reported is that there are no newlines, where as if you had newlines but no checksums you’d see “csum err” instead.

Unless you are actually losing data somehow, or can put the GPS in a different mode.
(Hmm. The EB-365 GPS module datasheet says that you can turn checksums on and off per message type, with a command like “$PSRF103,04,00,01,01*20\n” (that checksum is probably wrong.) It’s not clear whether the unit “remembers” this config across power cycling…

In theory, you can treat the new “$” character as terminating the previous sentence, but it looks like this would require significant modifications to tinyGPS.