Combining my love of bicycle touring, fitness tech, and software development, I’ve embarked upon a new project. Although cycling around Lake Superior is definitely still on my bucket list, the advent of immersive indoor cycling applications such as Zwift and Rouvy presented the potential for a “virtual” tour that I can undertake until the opportunity for the real tour comes around. Here’s as far as I’ve (virtually) gotten.
There really is something surprisingly immersive with this approach. The realistic (albeit virtual) speed based on your power output, the gradient changes reproduced by the trainer, and the quality of the satellite imagery definitely creates a sense of realism. It will be interesting to see if there’s a feeling of deja-vu when the opportunity to do this tour in real life comes around.
The technical stuff for those interested in how it’s being done:
- Define the route using Google Maps. The route is created on numerous “layers” that each represent a single day for the actual tour (appoximately 60-80 miles.)
- Export a single layer as a KML file.
- use GPS Visualizer to convert the KML to GPX. The KML won’t contain elevation data so it’s important to select “Add DEM elevation data” to “best available source” in order for the trainer (ie: Wahoo Kickr) to simulate the gradients. DEM stands for “Digital Elevation Model” and is a database of known elevations for many points on the earth derived from topographic surveys and/or from orbiting radar or lidar. High-resolution DEMs can produce pretty good estimates, especially for roads and other places where the trees have been cleared and the remote-sensing spacecraft can see clearly all the way to the surface.
- Import the GPX file into Rouvy’s “route editor” and upload to the Rouvy’s cloud if necessary.
- Ride the new route with Google Maps satellite view.
- Rouvy is paired with my Wahoo Kickr which simulates the gradients nicely.
- The map shown above is a simple “leaflet” page pulls the trackpoints from a collection of TCX files downloaded from Rouvy following each ride. There’s also a stand-alone page at https://epate.com/vls/ that shows some overall statistics about the virtual tour.
- Rouvy doesn’t give you the option of continuing a ride at the point you ended an earlier one. You can move the rider’s location along the gradient map at the bottom of the screen but it’s a little tedious to find that exact point along a potentially long route (ie: 23 miles into a 60 mile route). It helps to end each ride at a very visible landmark such as a intersection or bridge. Also, it seems to throw in some additional GPS TrackPoints which can sometimes result in errant segments at the beginning of the track. I try to filter those out on my tour map page but applications like Strava may show some errant segments at the start of the track.