I quite like playing with GPS and found it a real pain dealing with all the different NMEA sentences individually. I couldn’t find a standalone, general purpose NMEA library for Python that I liked (there are other libraries out there, but you either seem to have to get a bunch of other stuff you don’t want with them or they are more GPS specific than I would like).

So, I’ve decided to create one!

pynmea is a Python library for parsing NMEA sentences into more useful objects. In its current form, it uses mapping to ‘fill in’ an otherwise generic object with the information contained within the sentence. It’s a very basic solution right now but when all of the mappings are entered (right now there are a limited number but it’s pretty strait forward to add the one you want in if it’s missing) it provides a single object for each sentence.

In the future, I would very much like the library to be able to take a data stream as an input and just churn out sentences as objects, doing all the splitting and parsing for the developer.

The project is currently on google code: http://code.google.com/p/pynmea/.