A while back I was searching of a way to record the skeeler routes I was making. I own a Treo 650 and Bluetooth GPS mouse so the basic ingredients are in place. Reason for recording those routes was that I wanted to know the distance and was curious about the speed. This week I stumbled upon OpenDMTP and that does the trick.

OpenDMTP provides a J2ME application (other clients also available) that runs on the Treo and picks up the GPS info from the GPS Mouse. It then sends this information to the OpenDMTP server via a TCP connection. The OpenDMTP server is running on my server at home and records the GPS info in a CSV file (mysql DB also possible). This way you get the raw data. OpenGTS adds some more functionality.

OpenGTS includes the OpenDMTP server, but adds two webapps that you can deploy on a TomCat server. The first webapp (Events) can be used to retrieve the GPS info in a number of different formats (CSV, KML, etc). You can for example use this to integrate the data directly into GoogleMaps or GoogleEarth. On the URL you can include filtering criteria (e.g. on date).

The second webapp (Track) provides a nice web interface to the same data. It integrates with GoogleMaps and provides a live view on the GPS info. Really nice.

Both OpenDMTP and OpenGTS are Apache 2.0 license, so you can simple download it and use it. Both are Java apps so you cna run them on any platform. Once again I'm impressed with all the good OpenSource stuff that's available for free!

The only drawback of this setup is that you always need a network connection to be able to send the GPS data to the server. It would be nice if there was a way to simple record the data on the Treo and transmit it to your computer later... any suggestions are welcome ;-)