GPS module LS20031 - NEMA record validity


I'm using the LS20031 GPS module

Everything seems to be working OK, except that I've noticed that when I check the validation codes (the last two characters at the end of each sentence) about 4-6% of the sentences fail validation.

Does this seem about right? I'm using one of the standard arduino libraries, and the module itself is straight out of the box - I've not changed the configuration. The module is mounted very close to the Arduino (a mega) so I don't think there's a problem with wire-length or anything like that, and because over 90% of the records DO pass validation, I'm assuming the checksum processing is going ok.

I've looked at the records that have failed, and they look ok (no weird characters, nothing out of the ordinary).

It's not really a big deal, now that I know I need to check I'm sure enough valid records will get through to meet my needs, but I'm a bit surprised that either the module is generating dodgy data, or it's somehow getting corrupted on the 5mm of copper track between the module and the arduino.


I doubt this is the problem, but you didn't mention if you using Hardware or Software serial to communicate with the GPS module.

Hardware Serial should be fine, but I've had issues using Software Serial at higher speeds.( although Software Serial is quoted at up to 115200), As I've found some devices which won't work at 115200 using Software Serial but work fine with Hardware serial

It's hardware serial (baud 57600).

I've been running a test for a few hours now, and it seems that just over 4% of records have invalid checksums.

I’d post the same question to SparkFun’s forum for that device,

and see if anyone else has encountered the same problem