The main reason I can’t rely on my Garmin 630 as my main daily fitness and sleep tracker is because of the appalling rudimentary activity data export function. Here is what I’ve found on export (to csv): The export function appears on the “reports” screen of the computer app. If you select “daily” you get a spreadsheet showing only one variable, with 7rows labeled by day of week , eg “Sunday”. If you select “weekly” you get weekly totals, again a single variable, without the detail. So imagine the nightmare of trying, a week at a time, to export daily data for several weeks, and trying to consolidate data from multiple unlabeled spreadsheets into one for trending.
Besides venting, I’m hoping I’ve just missed where the “real” export function is, and one of you can help me out. Any ideas?
It doesn’t look good I’ve tried exporting my “wellness data” as per garmin FAQ but it didn’t contain any real data after decoding the FIT files.
They have a Health API now that doesn’t look like it costs anything, but requesting it was cumbersome, and they don’t seem eager to let anyone connect with them that way; but I cross my fingers, it’s only been two days since I applied for it…
Seems I was “wrong”. You can easily get all day heart rate data by mimicking the website. And you don’t need any authentication either, just a plain request. Anyone can get any garmin-users heartrate data. This is quite scary in many ways, but I can’t help being glad that I can at least get my data
@fiddur Could you share some more info on your method? I couldn’t get it to work. The only thing that worked is going to a report called ‘Last seven days’, e.g. https://connect.garmin.com/modern/report/51/wellness/last_seven_days and click export once per week. This is really cumbersome and the output CSVs sometime don’t contain dates, just weekdays, which makes it difficult to track over time.
…still relying on a completely public profile though, but I guess to load private date you’d just include the SESSIONID cookie. No good way to retrieve that, though, just have to manually fetch it from a logged in session
I am going to generalize my import scripts a bit, and will add sleep soon, just to move my garmin data into google fit (partly because the API is good and easily available, partly because my current fitness tracker uses wear os). But since it’s a hobby project, I have no timeline for when I’ll get to it. Here’s my garmin hearrate import: https://github.com/fiddur/nephelai/blob/master/bin/importGarminHR.js
Hah; Dec 28 2017 was when I started using Garmin. Since it doesn’t retrieve that information automatically, the script would have continued back through the ages otherwise But yeah, there’s a lot in there that would need to be generalized and automated in different ways.
Yeah, if I remember correctly, it’s just setting the type to dailyMovement instead of dailyHeartRate; I’ll add that to the repo eventually, but haven’t had time to work on my aggregations for a while now…
Putting the steps into google fitness is slightly different though, since steps is never a momentary measurement but always over a certain time. I haven’t looked into that yet.