Skip to content
/ spinlink Public

πŸš΄β€β™‚οΈπŸ§  Make your dumb indoor ergo trainer smart.

License

Notifications You must be signed in to change notification settings

voydz/spinlink

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SpinLink πŸš΄β€β™‚οΈβš‘οΈ

Turn your "dumb" exercise bike into a Bluetooth Smart Trainer.

SpinLink is an open-source platform that bridges the gap between older, basic exercise bikes and modern cycling apps like Zwift, MyWhoosh, and TrainerRoad.

By adding a cheap ESP32 microcontroller (< $10), you can broadcast power, speed, and cadence data using the industry-standard FTMS Bluetooth protocol.


🌟 What can SpinLink do for you?

1. Save Hundreds on Equipment

Smart trainers and smart bikes often cost $500 to $2000+. If you already have a sturdy mechanical exercise bike (like an old Kettler, Schwinn, or spin bike), SpinLink upgrades it to "smart" status for the price of a microcontroller.

2. Gamify Your Workouts

Connect your bike to immersive virtual worlds. SpinLink makes your bike visible to apps like:

  • Zwift: Ride with thousands of others in Watopia.
  • MyWhoosh: Free-to-play virtual cycling.
  • TrainerRoad: Structured interval training.

3. Track Your Metrics

Stop guessing your effort. SpinLink calculates and broadcasts:

  • Power (Watts): Estimated based on your bike's physics and resistance.
  • Cadence (RPM): Real-time pedal speed.
  • Speed (km/h): Virtual speed calculation.

4. Smart Companion App

Includes a dedicated Flutter app (iOS/Android) that acts as a modern bike computer, allowing you to:

  • Monitor your stats in real-time.
  • Adjust resistance virtually.
  • Manage "Suggested Resistance" from terrain in Zwift (e.g., when you hit a hill, the app tells you to dial it up!).

πŸš€ Getting Started

Building your own SpinLink is easier than it sounds. You need basic DIY skills (connecting a few wires).

Step 1: Gather Hardware

You only need a few parts:

  • ESP32 DevKitC V4 (The brain).
  • Your Exercise Bike (Must have a reed switch/speed sensor, which most do).
  • (Optional) Rotary Encoder for physical resistance control.

Step 2: Flash the Firmware

Upload the code to your ESP32. πŸ‘‰ Read the Quick Start Guide for wiring diagrams and setup instructions.

Step 3: Connect & Ride

  1. Power on your SpinLink.
  2. Open Zwift or MyWhoosh.
  3. Search for Power/Cadence sensors.
  4. Select "SpinLink".
  5. Ride!

πŸ“‚ Project Structure

Component Description Status
Firmware The C++ code running on the ESP32. Handles sensors and Bluetooth broadcasting. βœ… Stable
Companion App Cross-platform mobile app for dashboard and control. 🚧 In Development

πŸ›  How it Works

  1. Sensor Reading: The ESP32 detects pulses from your bike's existing speed sensor (reed switch).
  2. Physics Engine: It calculates your speed and estimates your power output based on a physics model (taking into account resistance levels).
  3. Bluetooth Broadcast: It acts as a standard FTMS Indoor Bike, so apps recognize it instantly without special drivers.

🀝 Contributing

We love contributions! Whether it's refining the power curve algorithms, adding new app features, or improving documentation.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

About

πŸš΄β€β™‚οΈπŸ§  Make your dumb indoor ergo trainer smart.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published