This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Need help fixing potentially corrupted .fit file

Former Member
Former Member

Hi, I'm hoping that someone can help.

I ran a 70.3 last Sunday and used the multi-sport mode on my Forerunner 945.  The file saved on my watch and I can view the data on the watch itself, but it won't upload to my Garmin Connect account or sync with my iPhone.  I think the file might be corrupted.

Can somebody help fix the file so that I can upload the file and all of the data to my Garmin Connect?

I've uploaded the .fit file to the following dropbox link: https://www.dropbox.com/s/smhlil2ar6uv77e/2019-12-08-07-59-23.fit?dl=0

Please help!!!

  • Well, as you noted, your file is corrupted, using the FIT SDK, the integrity check (-i) doesn't pass:

    $ java -jar FitCSVTool.jar -i 2019-12-08-07-59-23.fit  
    FIT CSV Tool - Protocol 2.0 Profile 20.92 Release
    Exception in thread "main" java.lang.RuntimeException: FIT file integrity failure.
           at com.garmin.fit.csv.CSVTool.run(CSVTool.java:173)
           at com.garmin.fit.csv.CSVTool.main(CSVTool.java:332)

    Trying to convert it to CSV, of course, it is not possible:

    $ java -jar FitCSVTool.jar -b 2019-12-08-07-59-23.fit 20 19-12-08-07-59-23.csv
    FIT CSV Tool - Protocol 2.0 Profile 20.92 Release
    Exception in thread "main" java.lang.RuntimeException: com.garmin.fit.FitRuntimeException: FIT decode error: Endian 98 not su
    pported. Error at byte: 817073
           at com.garmin.fit.csv.CSVTool.run(CSVTool.java:246)
           at com.garmin.fit.csv.CSVTool.main(CSVTool.java:332)
    Caused by: com.garmin.fit.FitRuntimeException: FIT decode error: Endian 98 not supported. Error at byte: 817073
           at com.garmin.fit.Decode.read(Decode.java:776)
           at com.garmin.fit.Decode.resume(Decode.java:371)
           at com.garmin.fit.Decode.read(Decode.java:348)
           at com.garmin.fit.csv.CSVTool.run(CSVTool.java:220)
           ... 1 more

    Have you try to check the file system of your watch? you need to connect it as USB (Garmin) instead of MTP to your PC in order to check it.

    Another solution I tried was to use the following online tool: https://www.fitfiletools.com/#/ctf#view (just drag and drop your file there in order to download a fixed version). The process worked :-D  the resulting file is not corrupted, but I don't know if the content is Ok (the tool from Fit SDK can read it and convert it to CSV format with data that seems correct, but you must upload the resulting .fit file to Garmin in order to validate it). 

    If the previous solution doesn't work a last idea (a complex one) comes to my mind: Use the Fit SDK to write a custom program to try to recover as much as possible of your file, but that requires understanding the FIT format (an ugly one IMHO) and programming skills in C, C++, C# or Java.

  • Former Member
    0 Former Member over 5 years ago

    Former Member

    Congratulations with the 70.3 Thumbsup

    your fit file contained corrupted downloaded hr-data

    repaired the fit part with hr-data, the remaining data in your file is original

    7007296-fr945-kaput-part19-2019-12-08-07-59-23.zip

    happy & safe sporting

  • Former Member
    0 Former Member over 5 years ago in reply to BrightScully

    thank you for the info...learned something new today Thumbsup

    happy & safe sporting

  • Good to know the information was useful :-D 

    Try to check the watch file system in order to be be sure that the problem was not originated there (and to prevent future issues)