Saturday, May 12, 2007

Internals: Suppporting GPS Logger V2.4

I just received my GPS Logger V2.4, which is smaller and more compact than the V1.0. Having looked through the software differences between V1.0, I can see more attention to power saving in V2.4 - although V2.4 no longer supports native KML encoding.

For GPS Logger MG to support V2.4, there isn't a lot of work. The hardware is essentially the same: there's only an additional LED, a new GPIO pin used to control power to the GPS module, and a GPIO pin used to monitor the shutdown button (in V1.0, the button was directly wired to reset circuitry). Supporting these is trivial.

The software has a number of differences: (a) no native KML output mode, raw NMEA sentences only, (b) configurable NMEA sentence filtering; (c) configurable hold-off timer, (d) a configurable time between logs, (e) UART capturing under IRQ. I presently support all of these other than (c) and (d). I do support (d), but in a different way.

My current plan is for the next release to support the V2.4 hardware, as well as the V1.0 hardware, but not to support the (c) and (d) features above. I will also do an application test for V2.4 prior to the next release, and a power consumption test (using GPS Logger MG, and the original sparkfun V1.0 and V2.4 firmwares).

UPDATE: That was easy, V2.4 hardware support now completed and tested: rather than poll GPIO P0.16 to test for stop button actuation, I configured the port for EINT0 (triggered: edge, low). The EM-406 spits out a lot of sentences! I also added a new 'nmea' mode (alongside 'raw','kml' and 'csv'): 'raw' is a direct pipe from the GPS module, whereas 'nmea' selects only NMEA sentences.

No comments: