Estimate realistic cycling power output from GPS data — no power meter required.
Physics-based model that combines speed, elevation, air drag, rolling resistance, gravity, and acceleration to deliver accurate wattage estimates from GPX, TCX, or FIT files.
Perfect for cyclists, coaches, data enthusiasts, and anyone who wants power insights from old rides.
- Accurate physics model (gravity, aero, rolling, inertia)
- Supports GPX, TCX, FIT files
- Configurable rider & bike parameters (weight, CdA, Crr, etc.)
- Elevation data handling (SRTM or custom)
- Command-line + Python library usage
- Clean output with power, normalized power, and metrics
git clone https://github.com/jahmia/cycling_epower.git
cd cycling_epower
pip install -r requirements.txtCopy config.yaml.template to config.yaml and adjust parameters for your setup (rider weight, bike specs, environmental factors, etc.).
- Mean / normalized power calculation
- Better handling when cadence = 0 (set power to null)
- Ignore duplicated point along time
- Detection and correction of speed/power drift
- Option to bypass cadence sensor
- Cleaner object-oriented API (dot notation)
- Remove duplicate timestamps
- Analysis : Open point as URL
- Batch elevation processing
- Support for direct start/end power values
Contributions are very welcome!
GPL-3.0
