Power-based indoor training

Train with watts.
Not with wishful thinking.

A Flutter cycling app for FTMS Bluetooth trainers. Plays structured workouts at your FTP, holds heart-rate zones honest, and uploads clean TCX files to Strava — without the bloat.

FTMS Bluetooth · smart-trainer power control
FIT / TCX Strava-ready uploads
3 plans Beginner → Semi-pro

Built for riders who train

Everything a power session needs.
None of the noise.

FTMS Bluetooth control

Connects to any FTMS smart trainer. Reads supported power range, writes target watts, holds the rider on the prescribed effort.

Heart-rate honest

Live HR with zone colouring (Z1–Z5), beat-synchronised pulse, and averages computed only from real readings — no drift to zero.

Live coaching

Block-aware messages right before each transition — recovery, threshold, VO2 — picked from a pool so it never feels canned.

Offset on the fly

Bumped up by ±1, ±5, ±10 %. Every TARGET, UP NEXT chip, graph block, and Y-axis rescales in real time as you tap.

Combined chart

Workout-time playhead, recorded power dots in zone colour, HR overlay, and the upcoming bars — all in one view that pans when you skip.

Strava-ready

TCX export with second-by-second power, HR, cadence. Auto-uploads when you're connected; falls back to a clean local save when you're not.

Power-zone aware

Every block, every line, every dot — coloured by zone.

Z1 recovery through Z7 anaerobic. No more squinting at a flat blue trace.

Z1Recovery<55%
Z2Endurance55–75%
Z3Tempo75–90%
Z4Threshold90–105%
Z5VO2 Max105–120%
Z6Anaerobic120–150%
Z7Neuromuscular>150%

Workout library

Sweet Spot. VO2 Max. Threshold.
The stuff that actually moves FTP.

Sweet Spot 3×8m

51 min

Three eight-minute blocks at 88% FTP with two-minute float recoveries. Base-building gold.

VO2 Max Sprint Power Hour

60 min

Punchy 30/30s on top of a tempo floor. Spikes the lid on aerobic capacity without grinding you to dust.

Threshold 2×20m

62 min

Two twenty-minute holds at 100% FTP. The benchmark session for anyone preparing for a hard hour.

Training plans

Pick a tier. Stick the landing.

Beginner

6 weeks · 3 sessions / week

  • Z2 endurance base
  • Intro Sweet Spot 2×8m
  • Short threshold tasters
Z1 → Z3

Semi-pro

10 weeks · 5 sessions / week

  • Threshold 2×20m blocks
  • VO2 4×4 / 30-30 splits
  • Race-pace simulation
Z3 → Z6

In the saddle

The chart you actually want during an interval.

Workout-time bars behind, live data line in front, HR overlay, playhead that jumps with skips — and an Up-Next chip telling you exactly what's coming.

INTERVAL
Interval 2 of 6
04:12 / 08:00
CURRENT228W
AVG194W
TARGET220W
UP NEXT
00:30137 W
02:00220 W
00:30137 W
02:00220 W