Fit parsing error
Kypaz opened this issue · 8 comments
Hello, I have a fit reading problem (the file is attached)
FIT parsing error @ 235: invalid field size 1 for type uint32 (expected a multiple of 4)
I have the problem with 0.7 or 0.6
The supposed FIT SDK version of the file is 20.63.0 (told by supplier of fit file)
I imported succesfully this fit file in Garmin Connect so this is not a corrupted file
Can you help me?
Best regards,
Alexandre [Bouquet]
fit_error.fit.zip
Any idea?
Best,
Alexandre
Do you happen to know the device model that generated the file initially? Note that sometimes it can be found in the fit file itself.
Hello,
The model is the COROS VERTIX
But I have asked the supplied, I cannot read the file at all with fitdecode, it crashes too early
Thank your for your help
Hello @polyvertex
I got a similar issue, when the exception is raised I cannot read further records.
Thanks
Any update?
@Kypaz:
I've tried your file and it is working with the Garmin SDK FIT CSV Tool - Protocol 2.0 Profile 21.40 Release. I can decode it, open the csv and re-encode it. So It must be the lib from what I have checked.
Hi
I got the same error with a fit file from Coros Pace 2.
I guess dtcooper/python-fitparse#116 would also fix this here?
I've tried your file and it is working with the Garmin SDK FIT CSV Tool - Protocol 2.0 Profile 21.40 Release. I can decode it, open the csv and re-encode it. So It must be the lib from what I have checked.
FYI SDK's tool seems to skip unknown types/fields, such that it goes silent about this kind of errors, whereas both fitdecode and fitparse libraries intend to dig into types definitions. So that they parse FIT data in a stricter way, not permissive with malformed files.
I will add an option flag to enable a more permissive parsing that still proceed when possible.