Advertisement

pt's How-to Fridays: Using a GPS watch, XML, and satellite photos

garmin1

This week's installment of "pt's how-to Friday" is a bit off the beaten path ??? literally ???but surprisingly enough, I've received a lot of emails about a project on my running for geeks web site, so I thought I'd show how I make high resolution maps of the places you jog, with the tracks overlaid on top. This is all possible using a GPS-enabled watch, called the Forerunner 201 from Garmin, the included software (Logbook) and a free application called USAPhotoMaps.

A little background, I was traveling a lot in Asia and during the holidays and as opposed to going to the bar each night, I thought I'd take up running again, so I went to the, the gym ???or as I like to call it ??? the anti-bar. Turns out, I really missed running and before I knew it I had converted my basement when I returned to the States, and the "Geek Gym" was born.

geekgym

The Geek Gym has all the distractions a gadget addict needs to exercise, from a Tablet PC mounted on the treadmill to check RSS feeds, IRC, Instant Message and email to a Media Center PC, Xbox and other tech all connected to a LCD screen near the stationary bicycle, Dance Dance revolution mat and the treadmill. But eventually, I wanted to go portable after a co-worker rightly pointed out that I should go outside, since I live in a great area and to get out (Seattle, WA), but I still wanted the Geek Gym with me ??? hence the portable geek gym. Using LCD goggles, Bluetooth GPS, a Pocket PC, heart date monitors, SPOT watches, I had a good thing going, but the GPS stuff wasn't exactly what I wanted or needed, I was about to construct yet another Franken-gadget, but then the Garmin Forerunner 201 was released.

garmin2

The Garmin Forerunner 201 GPS watch is one of the best running gadgets I have used. It's small, but not too small, you can still read the display and it's very powerful in terms of features I wanted. Like most GPS devices, you get latitude, longitude, and altitude data for exact location information. You can mark specific locations and then look-up and navigate to these points using an electronic map. You can retrace your steps to a starting point or reverse your normal route for routine variation. Calories burned can be tracked and calculated over the course of a workout. 2 years of lap history can be stored ???such as lap time, lap distance, and average pace. Pace alerts (if you're keeping up) anddistance alerts (if you reached your goal) are possible.

The application it comes with, the Logbook isn't the greatest, but the one amazing feature is has is the abilityexport to XML, and that means you can have a lot of fun.

My geeky art project, which is still going on right now, is to run 10 miles (or more) in 10 cities, in the next 10 weeks or so. After running, I take the XML data, export it, convert it and use it in an application which places the path I ran over Satellite photos of the area. The goal is to do all these high-res and have an art project with some cool tech behind it, (of course, I am also considering spelling words and doing some other things, we'll see how that goes).

So here's how you do it ??? I was surprised the number of people who wanted to do this, so I hope this guide helps. This assumes you have a Garmin Forerunner 201 GPS watch, if you don't here's an Amazon link??? you can pick one up for $129 or so. Also, consider reading the reviews too, while I love this thing, you might have specific needs that this may or may not meet.

  1. After you get your Garmin Forerunner 201, update the firmware, it fixes a lot of issues. You can get the update here.

  2. Next, download the Logbook software from Garmin, you can get that here.

  3. Now, grab USAPhotoMaps, what is it? USAPhotoMaps creates scrollable/zoomable aerial photo and topo maps from data that it downloads from Microsoft's TerraServer Web site. Latitude/longitude at the cursor is shown. Waypoints can be displayed and transferred to/from most GPSs. Routes can be created, displayed and transferred to/from most GPSs. GPS tracks can be transferred and displayed. GPS position can be displayed. Text can be overlayed. And a lot more. The developer just released a new version which imports the Garmin Forerunner 201 XML format, which isn't a standard format, so until now there wasn't much you could do with the data, you can get the application here: http://jdmcox.com/. It's free, but it's so good I donated $20 to the author via PayPal.

  4. Install all these applications as per the instructions. One thing that is a bit of a bummer is the Garmin Forerunner uses a serial port, but most GPS devices do so, that's understandable, that said- a lot of systems do not have serial ports.

  5. Run, run like the wind. Use your Garmin Forerunner to run for a few miles.

  6. Import the data to the LogBook application. (File > Receive from ForeRunner). Here is where you'd normal just view the data, but now let's get it out of this application.

    app


  7. Export the data (File > Export to XML). Save it to a location on your system.

  8. Open USAPhotoMaps and start a new map.

  9. Name it and enter in the Long and Lat, you can do this by opening the XML file in notepad and looking at the data there, for this example, we're going to use Seattle.


    47.64802
    -122.33761



    newmap
  10. Select File > Download Map data > Fill screen. This retrieves the data from Microsoft's Terra Server and displays it. You should see the area you were running in here, you can zoom in and zoom and out, if there are area which are not filled in simply select File > Download Map data > Fill screen again. The map system used on Microsoft's Terraserver Web site (and USAPhotoMaps) is based on a flat UTM (Universal Transverse Mercator) grid. This projection very closely approximates global coordinates on 60 flat rectangular zones, each 6 degrees of longitude wide. What does that mean? It's pretty darn good, it's actually creepily accurate.

  11. Now import the Forerunner data. Go to File > Import Garmin Forerunner Logbook and import the data. You'll need to select the XML file you saved from the LogRunner application. USAPhotoMaps will then convert it to a CSV file, save this file somewhere on your system.

    importrunner



  12. Now go to menu, go to GPS > Display Tracks, it will ask for the CSV file you just saved, so select that file.

    display



  13. Now that it's done, Voila! The tracks are displayed! Depending on how far you ran, you'll either be amazing or discouraged :-]

    seattledisp1


  14. Zoom in or out based on what you want your image to be. Then select File > Download map data > Fill Screen.

  15. To save the image, select File > Copy to "Screen01.jpg".

  16. In the USAPhotoMaps directory on your system you'll now have a new JPG with the tracks and the photo.

  17. That's pretty much it. You can then use your favorite image editing application (I like GIMP and PaintShop Pro) to edit and change the image.

Here are some handy links:

Garmin Forerunner 201
USAPhotoMaps
Yahoo Forerunner Groups:
Other Forerunner Software applications
SVG web application that supports the Garmin XML format.
Running for Geeks

Questions, Comments? Suggestion for the next How-to? phillip@flashenabled.com

Phillip M. Torrone is Director of Product Development for Fallon Worldwide (www.fallon.com) and runs the uber-geeky site http://www.flashenabled.com where he writes about the future, gadgets, art, roblogs, physics, and marathon running.