Version 21.218.00 of the FIT SDK is available for download at Get the SDK | FIT SDK | Garmin Developers

In this release:
  • Python SDK
    • Re-Added LICENSE.txt to GitHub repository
    • Fix for encoding identical messages with different field order, which would cause file corruption
  • JavaScript SDK
    • Encoder now throws errors when trying to encode a field value that is not a number, string, boolean, or date.
    • Fix for Typescript declarations so they now resolve under Node's module resolution
    • Fix for encoding identical messages with different field order, which would cause file corruption
  • Swift SDK
    • Add typealiasing to FIT Types
    • Unpin version of swift-collections from 1.2.0
  • C# SDK
    • CheckIntegrity to return false when file is empty
  • Java SDK
    • Fix DateTime.fromInstant() constructor
  • Profile Updates
    • New Garmin Product Ids
      • enduro4
      • approach_s72_43mm
      • approach_s72_47mm
    • New Manufacturer Ids
      • exposure_lights
      • forto_cycling


Updated summary messages and fields


In version 21.216 common fields were normalized across all of the summary messages: session, lap, split, split_summary, length, and segment_lap. The majority of the additions are in the split and split_summary messages. If a common field was available in one message is was made available in all the summary messages. 

  • session — 12 fields fields: avg_grade_adjusted_speed, avg_paddlesport_cadence, avg_push_cadence, avg_strokes_per_length, avg_swimming_cadence, avg_swolf, front_gear_shift_count, max_paddlesport_cadence, max_push_cadence, max_swimming_cadence, num_segment_laps, rear_gear_shift_count

  • lap — 17 fields fields: avg_grade_adjusted_speed, avg_paddlesport_cadence, avg_push_cadence, avg_strokes_per_length, avg_swimming_cadence, avg_swolf, front_gear_shift_count, max_paddlesport_cadence, max_push_cadence, max_swimming_cadence, metabolic_calories, nec_lat, nec_long, rear_gear_shift_count, swc_lat, swc_long, total_pushes

  • length — metabolic_calories

  • segment_lap — metabolic_calories

  • split — 107 fields, covering:

    • All cadence, power, heart-rate, temperature, swimming, running, and stance metrics
    • apnea_discipline, dive_section_type, first_lap_index, jump_count, left_right_balance
    • Climbing fields: climb_grading_scale, climb_send, and all climb_grade_* fields
    • Location and surface fields: nec_lat, nec_long, swc_lat, swc_long, surface_interval
    • Split status and activity totals, including num_falls, num_laps, total_cycles, total_pushes, total_reps, total_strides, and total_strokes

  • split_summary — 81 fields, covering:

    • Average, maximum, minimum, cadence, power, swimming, temperature, stance, and stroke metrics
    • climb_grading_scale and all climb_max_grade_* fields
    • left_right_balance, max_distance, max_total_timer_time
    • metabolic_calories, min_heart_rate, normalized_power
    • Climb counters: num_climbs_attempted, num_climbs_completed, num_falls
    • start_time, sport, sub_sport, swim_stroke, timestamps, and activity totals

Additional updated messages and fields

  • battery - timestamp and capacity

  • barometer_data — enhanced_altitude