Data access

Former Member
Former Member
Hi all,

For data field implementation on any of Garmin devices, and if no fit file is stored. Is it safe to assume that collected data is not saved by Garmin or any parties in any way?

Many thanks,
Ed
  • Hello,

    Generally the only way to save meaningful data would be through recording an activity to a .fit file. However, a few developers have used log .txt files and println statements (typically used for debugging purposes) to save some other sets of data. This method is size limited to 5kb with a 5kb backup file for a total of 10kb of println data. Garmin Connect does not access this information and it must be intentionally accessed by the user via USB connection of the device to a computer. For the best integration of unique data, using the FitContributor API with Activity Recording will provide you the most meaningful way to view it.

    -Coleman
  • Former Member
    Former Member over 8 years ago
    Many thanks and further questions

    Dear Coleman,

    Thanks for your reply, and sorry about the delayed response.

    How would one create text files, say to log some of the parameters like HR every second. Is it also possible to obtain a time stamp and print it out? I understand that there is a size limit of 5 Kb. Does it return an out of memory exception once the limit is breached?

    I have also been creating a datafield with fitContribution, similar to the MoxyField example. However, I wasn't able to get it to plot a chart on the Garmin Connect website. When I got on the dashboard, the default charts for elevation and temperature were shown, but not the custom fields that I have created. There wasn't the option of selecting charts with the custom fields either.

    In the Fit contributor file, I initialized it as follows:
    metricField = dataField.createField("newMetric", Metric_ID, FitContributor.DATA_TYPE_FLOAT, {:mesgType=>Fit.MESG_TYPE_RECORD, :units=>"Unit" });

    Within the compute function, I create a data point every second,
    metricField.setData(currentMetricValue);

    I have also set the permissions for fitContributor and modified the resource file as was recommended by the website and the sample provided. However, the data simply does not display on the Garmin connect website. Are there anything else that I have to do to get this to work?

    Thanks in advance,
    Ed
  • The App has to get loaded into the App Store in order for the data to show up in Garmin Connect.

    If you are not ready to release the App, just put DO NOT APPROVE in the name and then only you will have access to it.
  • Former Member
    Former Member over 8 years ago
    Thanks! Couple more questions:

    - I suppose I can use the FIT file SDK to decode the fit file offline as well?

    - The library for text file IO should be located in the System file?

    Ta,
    Ed
  • - I suppose I can use the FIT file SDK to decode the fit file offline as well?



    Yes the FitToCSV.bat converter in the FIT SDK works well for me.
  • Former Member
    Former Member over 8 years ago
    It worked!

    Yes the FitToCSV.bat converter in the FIT SDK works well for me.


    Thanks, that worked for me. I will try out the pre-approval option later to see if my new charts can be plotted on the Garmin connect interface.
  • Former Member
    Former Member over 8 years ago
    Garmin Connect server error

    Hi, thanks for the guidance concerning Fit file support. I have tried your suggestion of setting the title for the submitted app as "DO NOT APPROVE". At the moment, I am able to see the app in the Garmin Connect website, in the 'Uploaded Apps' section. However, when I tried to download the app from the site, I have this error: "Sorry, the app wasn't sent to your device because we're having trouble communicating with our servers. Please try again later". This has been happening 2 days in a row.

    I suppose I need to download the app from the website, and run it before I can get the charts on Garmin Connect? Thanks in advance for any available information.

    Ed
  • I've been able to get this error to go away by turning off and restarting the watch. Actually, it was an Edge device. Not obvious from the error message but worth a try.