2008-06-05

Electronic Cue Sheets: Using Onboard Routing

In my previous blog posting about GPS navigation on the bicycle, I discussed how to export a route in Topo USA to a path that you could follow using a Garmin Edge cycling GPS device. In this article, I will discuss the foundations for an alternate method of routing that allows for smaller files and better navigation, but not without caveats. I'll include a sample procedure for doing so in a later article.

Before proceeding further, it is important to understand the difference between a number of terms used in GPS discourse. This information is key to making routing work properly.

Waypoint - think of this as a landmark. At the very least, a waypoint is a named latitude/longitude pair. Waypoints may have other information associated with them, such as elevation, an icon, and useful metadata. If you've ever done geocaching, your goal there is to find a waypoint. Semantically, a waypoint is a fixed point in space.

Trackpoint - not my favorite mouse pointer technology, but similar to a waypoint. A trackpoint is a location, much like a waypoint, but with a timestamp associated with it. If a waypoint is a fixed location (like a mountain), a trackpoint is a record of where you were at a particular time. This may not sound much different than a waypoint, but the timestamp distinction is key. Trackpoints may also have metadata associated with them; speed, heart rate, cadence, and power are examples.

Route - an ordered collection of waypoints, nothing more and nothing less. For the purposes of GPS file formats, a route has a start point, an end point, and a number of via or stop points in between. Since these are just waypoints, the route knows what order these are in. An example: from Times Square, go to the Central Park Zoo, then to Shea Stadium. The three landmarks would be the waypoints, collected and ordered into a route. A route typically describes a journey you have not yet taken.

It is useful to think about how a piece of hardware or software treats a route file. Basically, the application reading the route will "connect the dots" using whatever algorithm it can. The simplest way to do this is to literally draw a straight line from one waypoint to the next, and call this your route. (This is what Google Earth and the Garmin Edge 305 do.) Now, if your application can connect points more intelligently, perhaps by routing you along a network of roads it knows about, it will do so, according to whatever preferences you gave the application. (Delorme Topo USA and the Garmin Edge 705 both handle routes this way).

Track - a collection of track points, ordered by their time stamps. If you were to walk around, and record a trackpoint every, say, 5 seconds, the collection of these would be a track. You could use this to analyze and replay your trip. A track typically describes a completed journey.

OK, got it? If not, reread the previous five paragraphs.

If you understand the distinctions I mentioned above, you'll realize that my previous electronic cue sheet procedure, of making a route, exporting it, and converting it, was dealing with a track. The procedure simulated the entire route, inch for inch, and had you follow it. Since this is independent of a routing algorithm, something that the Edge 305 does not have, this is how you follow a ride on the 305. Note that Garmin advertises that you can record and re-do previous rides. By recording a ride, you create a track, which you can later follow. You can even race your previous ride, since you have full time data, and see an elevation profile, since you have full elevation data, from your previous ride.

Now, what if you happen to have a GPS device which offers a routing algorithm? Well, you can send the device a route, which is usually much smaller and simpler to handle than a track. The device will calculate a route for you, and give you turn by turn directions. This is how in-car GPS systems work. You can tell your routing algorithm to, say, avoid highways and back roads while routing you, if you want to follow routes on a bicycle. There is an art to getting a feel for different routing algorithms, and putting in enough via points in your route to make it unambiguous to different devices. That's part of designing a trip, and I'll talk about that later.

Ponder this, as my revised route creation procedure will make much more sense after this.