FitContributor :nativeNum functionality

There are not many posts on the functionality and/or any documentation concerning the FitContributor and :nativeNum.
My goal, I would like to write to the main 'distance' in the fit file, but I cannot. I'm successfully writing to a custom distance field as a workaround.

Is this nativeNum functionality broken in SDK 2.2.4 or am I misinterpreting the nativeNum functionality?


I've tried this as a Fit.MESG_TYPE_RECORD (snip below) and as Fit.MESG_TYPE_SESSION (total_distance :nativeNum=>9)

relevant code snips

// initialization of dist, the id is unique
dist = DataField.createField("distance", 1,Fit.DATA_TYPE_FLOAT,{:nativeNum=>5, :mesgType=>Fit.MESG_TYPE_RECORD, :units=>"m" });

...
//later in code
dist.setData(distance_m); // in meters as a float



FitContributor XML
<fitField id="1"
displayInChart="false"
displayInActivitySummary="false"
sortOrder = "0"
precision="2"
dataLabel="@Strings.distance_label"
unitLabel="@Strings.distance_unitsm" />
  • It is a post ride modification. Power and heart rate take the place of native power and heart rate. Example : Strava displays developer fields when they are supposed to override power bur not heart rate. The app makes it possible to visualize heart rate on Strava's graphs if you download the original .fit file, update it with the given executable, and upload back to Strava (after deleting the original activity)

  • Inability for IQ apps to write into Garmin native fields makes me shift out of Garmin software into side apps like Strava. I just don't understand this decision  (obviously it's made to sell more expensive watches, but this approach sucks)

  • Yeah, unlike a general-purpose smartwatch like Apple Watch or Samsung Galaxy, 3rd party Garmin apps are severely restricted, bc like you said, they want you to pay for the extra software features that come with the more expensive watches.

    For the specific case of FIT fields, Garmin employees have also said that the main reason 3rd party nativeNum fields won't be recognized by Connect is to avoid user complaints of bad data. I'd also guess another reason is to avoid making it too easy to cheat on things like distance/steps challenges, since Garmin has corporate employee wellness partnerships for that kind of thing.

  • So, , I’m about to purchase a Sole F95 elliptical and was curious if this has ever been resolved?