Daniel Wilson

Indoor Cycling Training using Free Open Source Tools

We'd all love to always ride bikes outside but mother nature doesn't always make that possible and so most cyclists spend a serious amount of time training indoors. Thankfully indoor cycling has become more enjoyable through products like Zwift and TrainerRoad. These offerings have training plans, immersive virtual worlds to cycle in, and workouts to help build your fitness. They are great options if you have a few dollars to spend. If you don't want to pay for these apps, there are ways you can get lots of the best features for free.


Recently I discovered Flux. A free open source app that can pace you through workouts, control your cycling trainer, and create .FIT files of your workouts for upload to Strava.

Flux has built in workouts for all types of training: Sweet Spot, Threshold work, Recovery rides, and more. You can also upload custom .zwo workouts. It tracks your power and cadence data so you can ensure you're hitting the right numbers. It can also connect to Heart Rate monitors and track and display this data as well.


After using Flux for a while I started wishing I had workouts with more variability to choose from so I started to build cycling-workouts.com. This app is meant to be an expansive workout directory where you can find any workout you like from an FTP test to a pro team training ride session.

You can find workouts from classic Zwift rides like Orange Unicorn to ones used by team INEOS Grenadiers. Just download the .zwo file and upload it into Flux and you're on your way.


A great way to visualize your fitness (besides Strava's tooling) is intervals.icu. This tool shows you tons of data pulled from your Strava activities. Just login with Strava and everything is there ready to go.

If you train with power data you can see your fitness, form, fatigue and other metrics. The dashboard shows how much time you've spent in each power zone in a week. The system even calculates an estimated FTP based on your past riding data.

All in all it's an incredible tool and free to use. There is an option to donate to the builders if you like.

How I go about an indoor training ride today

I'll search cycling-workouts for a ride that suits my feeling. If I'm feeling fatigued I'll look for a longer endurance ride. If I'm feeling fresh I'll look for something with some intervals and intensity. Once I've found something I like, I'll download that workout .zwo file and upload it into Flux.

Before I start I'll make sure my trainer is connected to my laptop via bluetooth. Then I'll click the start button and begin the workout, usually they start with an easy warmup. Once I'm finished I'll stop the workout, save the .fit file and upload it to Strava along with some commentary about how the ride went!

After that I'll check out intervals.icu to see how that ride affected my overall fitness and what type of ride I should do next.

What I like about this the most is that all these tools are built by cyclists for cyclists. If you're curious check them out!