Using an SB72EX to log GPS data and report via FTP


I do some volunteer work helping the SDSU students with their rocket.
One of the items I want to add to the next rocket is a high data rate GPS.
I've purchased a Garmin 18-5Hz that outputs PVT (position velocity and time) at 5Hz.
On the AROCKET mailing list there was a discussion of a recent flight test using this GPS where there was a
significant discontinuity in the reported postion. I suspect that the GPS lost lock and reported it's estimated position.
The person doing the test is treating the GPS data as propritary so I can't examine the anomolus data my self to see
what the GPS was reporting.
To start to resolve this I've decided to log the GPS data as I drive to and from work.
After capturing the data I'll write some code to examine it for discontiuities.

Hardware

I've decided to use an SB72 EX. as a serial data logger. The set up is show below:

The 12 feet+ of Garmin cable is not shown.
The astute members of the audiance will determine that the GPS needs 5V and that the SB72 EX 5V does not output 5V on the connector.
(As I work for NetBurner I can get away with modifying the unit)
Any one that wants to know where to steal 50ma of 5V in an SB72EX please submit a Support ticket to NetBurner.

Software

The SB72EX has 8 Mbytes of internal ram so I made no attempt to parse the GPS data on the Netburner.
I'm just recording the raw serial stream in a buffer. I started with the ftpd_trivial example and added a little bit of code to it.
The application opens serial port 0 at 19200 baud and saves all the incomming serial data in a 6M byte circular buffer.
It then dumps this data out via FTP over the ethernet port. The entire application code that does this is at the end of this page.

Using the setup