FIT Activity files support two message ordering schemes, “Summary First” and “Summary Last” as documented here https://developer.garmin.com/fit/file-types/activity/ Garmin devices have historically used the Summary Last method, leading many platforms to assume that this is the only method. As a result, some platforms may not properly handle FIT Activity files written in the Summary First method.
Please check that your current implementation follows the developer documentation. If it does not account for a “Summary First” method, your platform will be impacted by this change. The resolution for this is described below and should be implemented by December 1st, 2023. Garmin will not execute backfill requests for this data.
The summary messages represent a time span defined by the Start Time and Total Elapsed Time properties of each message. Whereas the timestamp of each message represents the time it was written to the file. For files using the Summary Last method, the timestamp approximates the end time of the summary message. For files using the Summary First method, the timestamp approximates the file creation time. In either case, the timestamp should not be used to determine the start or end time of the summary message.
To properly decode FIT Activity Files created using either the “Summary First” or “Summary Last” method, the End Time for the summary messages should be calculate as:
end_time = start_time + total_elasped_time
This technique will allow platforms to process FIT Activity files using either message ordering scheme.
The attached FIT Activity files were created using the Summary First method and can be used to test your platforms. The activity is representative of a multisport event and includes multiple Session and Lap messages. The included screenshots show the expected GPS tracks for the time span represented by each Session message.
Example files are attached below.
Full Activity
Session 0, Swim.
Session 1, Transition
Session 2, Bike
Session 3, Transition
Session 4, Run
Top Comments
Could you please provide the same example file but coded with the "Summary Last" method in order to ensure that the results are the same for a given platform ?
Thanks
The zip file with the example file has been updated to include a version of the file written in the summary last method. The five session messages and 7 lap messages are interleaved throughout the file…