this project aims to control my indoor bike trainer with a training and display the training as it would on Zwift or other platforms. Since I don't care about those virtual environments, but I'd like to watch a movie, the training should be shown as an overlay.
The ultimate goal of this app is to start a predefined training, finish it on my bike trainer at home and upload it to Strava.
This is a go 1.23.0
project
# After cloning
1. go mod tidy
# Looks for a suitable bluetooth trainer, starts a training and controls the trainer.
2a. go run main.go
# Starts a training on a mock bluetooth trainer. It mocks incoming data from the trainer
2b. go run main.go -m true
- Create a random training with durations and power
- Show an overlay with ebitenengine
- Create basic sprites
- Make the sprites update every second with data from the random trainer
- Make the training have a sense of time, it should progress every second
- Connect to a bluetooth trainer
- Control the bluetooth trainer (EGC power mode)
- Get the power from the trainer
- Have a mock setting
- Create a mock route
- [] Add elevation metric to the route
- [] Determine distance / determine the progression of the route
- [] Get the speed from the trainer
- [] Write data to a gpx file