Common Problems
Solutions for issues that come up when working with workout files, ride recordings and platform uploads. For Bluetooth and sensor issues, see the main Troubleshooting page.
Workout files
Planned workout vs completed activity
FIT files come in two types. A planned workout (.fit) contains step targets and durations — this is what VeloLoop imports. A completed activity (.fit) contains recorded ride data — this is what VeloLoop exports after your ride. If VeloLoop says “this looks like an activity, not a workout”, you have the wrong file type.
Unsupported workout features
Some features from other platforms cannot be imported. Distance-based intervals get a 10-minute placeholder. Zone-based power targets appear as free-ride. Cadence-only targets are not supported. Simplify the workout or set targets manually after import.
FTP conversion seems wrong
ZWO and MRC files use FTP percentages. Double-check the FTP value you entered during import. You can re-import with a corrected FTP at any time — the original file is never modified.
Workout has too many steps
VeloLoop supports a maximum of 200 expanded steps (after ramp expansion and repeat unrolling). Simplify the workout by reducing repeat counts or combining similar intervals.
Ride recording
Missing distance on indoor activities
VeloLoop now includes estimated flat-road virtual distance and speed in FIT files, derived from power using a physics model. These are estimates based on assumed road and rider parameters, not GPS-measured values. If your platform shows zero distance, check that virtual distance is enabled in VeloLoop settings (Recording > Virtual Distance).
FIT file not found
Ride files are saved to Documents/VeloLoop/Rides in your user directory. If you cannot find files there, check that the ride completed normally. If VeloLoop crashed during a ride, it recovers the data from a CSV sidecar on next launch.
FIT export failed
If the post-ride screen shows an export error, click “Retry FIT Export”. VeloLoop keeps the raw CSV data and can regenerate the FIT file. The CSV sidecar is never deleted.
Platform uploads
Upload rejected as duplicate
The platform already has this activity. This usually means a previous upload succeeded even if VeloLoop lost track of the confirmation. Check your activities on the platform.
Upload rejected as corrupt
Make sure you are uploading the .fit file, not the .csv sidecar. If the FIT file is genuinely corrupt, use VeloLoop’s “Retry FIT Export” to regenerate it from the CSV backup.
Activity type shows as generic cycling
Set the activity type to “Virtual Ride” or “Indoor Cycling” on the platform. VeloLoop sets sport_type to VirtualRide in the FIT file, but some platforms may not read this automatically.
Platform shows zero distance
VeloLoop calculates estimated virtual distance and writes it directly to the FIT file. Platforms should display this value automatically. If a platform still shows zero, check that virtual distance is enabled in VeloLoop settings and that the activity type is set to “Virtual Ride” or “Indoor Cycling” on the platform. This does not affect training metrics.
Strava connection
Connect button not visible
The Strava integration requires API credentials to be configured. If the button does not appear, the feature may not be active in your installation. You can always upload manually via Strava’s website.
Connection expired or disconnected
Strava access tokens expire periodically. VeloLoop refreshes them automatically. If auto-refresh fails, disconnect and reconnect via the post-ride panel.
Auto-upload did not trigger
Auto-upload only runs when the feature is enabled in VeloLoop settings AND your Strava account is connected AND the ride completed successfully. Check all three conditions. You can always upload manually using the Upload button.
Still stuck?
If your problem is not listed here, check the main Troubleshooting page for Bluetooth, display and installation issues. You can also get in touch via the Contact page.