Advanced Strength Workout Builder

Thanks for sharing the info on FitFileForge. I tried it today - it does exactly what I was hoping for. I did a copy/paste from a strength workout I created in Intervals.icu workout editor, and pressed the button to generate the fit file, and it executes splendidly on my Garmin Vivoactive 6. Well done!

Hi David,

I’m building Trevo, a kettlebell / strength + running coaching app (approved OAuth app “Trevo”). Runs pushed through Intervals.icu work great on Garmin, including pace ranges. Strength sessions don’t: planned WeightTraining workouts reach the watch as timed “Go 0:40 / Go 1:30” steps with no exercise, reps or weight.

Garmin’s own workout format supports real strength steps. A workout sent directly to Garmin Connect with these step fields shows on a Venu 3 as “Barbell Bench Press, 10 reps, 85 kg”, identical to one built in Garmin Connect:

  • stepType: interval, endCondition: reps, endConditionValue: 10
  • category: BENCH_PRESS, exerciseName: BARBELL_BENCH_PRESS (the FIT profile enums)
  • weightValue: 85, weightUnit: kilogram
  • rest as stepType: rest with a time end condition, sets as a repeat group

What I tried through the Intervals.icu API (planned events, Garmin upload enabled):

  1. Text syntax with reps - steps without a duration are dropped.
  2. workout_doc steps with exercise / reps / weight fields - stored, but ignored by the Garmin export.
  3. A Garmin FIT workout file (exercise_category, exercise_name, reps, weight) uploaded as the event file - converted to timed steps, exercise data lost.

Request: let a workout_doc step carry exercise_category, exercise_name, reps and weight (FIT / Garmin enum names) and pass them to Garmin as native strength steps. The Garmin side already supports it, so it would mostly be mapping these fields in the export.

I already have a validated mapping for ~70 kettlebell, barbell and dumbbell exercises to the Garmin enums and I’m happy to test it right away. I think a lot of people doing strength next to endurance would use this.

Thanks for the great platform!
Faris

Follow-up: uploading a Garmin FIT workout as a planned event, the parser logs Unhandled duration_type: REPS and drops the step entirely (only the rest step survives). Supporting duration_type=REPS and passing exercise_category, exercise_name and exercise_weight through to the Garmin upload would be enough, no builder UI needed.