Hello. Since my Fenix 7 updated to firmware 16.22 earlier this week, I had problems reading the FIT file and converting it to a TCX file using some external (non-Garmin) software. The FIT file could be parsed, but my software failed to find any track points within the lap.
After a couple of days of debugging the code, I discovered that the FIT file format has changed to put the activity, session, and lap information before the trackpoints. (It used to be after...) This is not a problem itself - the code to parse the FIT file still finds them - but this change means that the lap element now has a time stamp that matches the start of the lap,. not the end. The code in this external tool used the start_time and timestamp fields in the lap element to determine the start and end of the lap. With the FIT file change, this meant all the laps were assumed to be zero length.
I was able to modify the code to use the start_time and total_elapsed_time fields to calculate a correct end time.
I'm sure Garmin had some reason to make this change, but it sure made a mess of my external tool (a Python tool named fit2tcx). I don't know if Garmin has logged this change in any documentation, but it sure used up a lot of my time trying to figure out what was wrong.