Why can't we just connect a garmin watch (or edge or gps) to our ai machine, have it extract all the data with MTP or garmin format, and keep it local. Then ask questions.
Honestly I've been wondering if in the near future I can basically have a big machine and some sort of "ingest" program.
Then keep connect my devices to it, where it will backup all the data, and mine the backups for information I want.
Mine my iphone backups for text messages or contacts
mine all my devices for photos or videos
mine my watch or bike computer or gps or whatever else for where I've been and how I've exercised.
instead, everyone wants your data and imposes themselves in the middle.
You can literally connect your Garmin to your computer via USB and drag-and-drop the raw activity files and analyze them if you want. Works totally fine. But Garmin's cloud sync is convenient and cloud processing adds data like elevation (by cross-matching GPS to topo data).
GPS traces recorded on a watch can be pretty noisy. If you stand in the same spot for a while, you're not going to get the exact GPS position recorded for the entire time you're there. The same happens when you move, it's not a smooth trace.
Strava (and I assume to some extent Garmin) apply some smoothing to these raw GPX traces to try and improve the path, or remove some of the noise.
You'd be missing out on this post-processing by taking the data raw. Ofc you can implement something similar yourself, but I wanted to point out that these platforms are doing a little bit more than just displaying the GPX trace.
I wander often on many smartwatch/sport tracking forums/subreddits, and it's fairly frequent that people ask how to deal with smoothing and get back raw data. Some love how Garmin smooths out a race track run for them and make gps trail stick perfectly to a lane. Some pull their hair out seeing their lake run being smoothed out to make it look like they jumped over fences and private properties.
I often find my garmin traces confusing as well, it's not objectively better.
Main problem is the sync and getting to the data.
Speaking from experience here, been working on something for a while.
This is the current state of the product pitch:
fyi - most of the functionality already working, but the key factor is how to get the data from the vendors.I currently rely on run-gap but i realise this is not a long-term solution.
Last time i have checked intervals icu api I just couldn't stop throwing up for a few days -but this might be better in the mean time.
long term solution is to have something like rungap, server side without the ridiculous fees some of the vendors charge (terra, rook,...)
if anybody wants to test what I currently got, or just has some feedback - let me know.
If you do local sync, can you work with the files directly? I.e. if I don't want to upload to garmin connect, can I just tell Claude to use an API or reverse engineer the files? I've had a venu 4 for a few months, and finished my connect+ trial, and want to setup my own analytics.
I just connected my Garmin watch to charge via usb, enabled disk access, going into folder GARMIN/Activity/ and uploaded one of the .fit files to claude web and asked a summary and graph, it seems I had a nice evening bike ride that day :)
I've recently done something simliar but for creating strength workouts via Claude.
The web and mobile based workout builder has a terrible UI if your workout changes between sessions so I've lifted some features from an app called liftosaur and got it to send activities to my watch. Unfortunately Garmin don't seem to care very much about strength training, so are missing a lot of pretty key exercises from their list, with no ability to create custom ones
> Imagine how great an Instagram MCP would be. You could create your own feed algorithm (such as the OG algorithm: just pictures from friends based on when they posted). Users would be able to filter out all the influencer content and ads Instagram throws on them. But Instagram would never do this.
This is why I don't understand why MCPs (or in other words open documented APIs right?) are being pushed so much.
What's the value in e.g. Amazon opening up their APIs to competitors, lowering the cost of scraping their data? Or allowing their consumers to more easily analyze dynamic pricing? Isn't the whole point to steer people towards closed proprietary apps that work in walled garden that prevent reverse-engineering and any kind of modification?
I love it as it supports some weird devices that were abandoned or require Chinese data residency for them to sync.
How is it working for you in Garmin for sleep tracking? I tried it a few years ago and loved it at first, but then noticed how incorrect sleep data was.
I've been using the unofficial Garmin APIs as well, but instead of an MCP I wrote an app that waits until my watch syncs after I wake up and then grabs all of yesterdays data and puts it into a Notion db.
It's been working great. The Claude morning brief compares my sleep, HRV, training status, calendar, and weather and then tells me when and how hard to workout that day.
I sync Garmin activities to Strava then use the Strava API in Claude Code. Although I think Strava just came out with an MCP. This works great but doesn't access things like sleep which I didn't need anyways
Its funny because I literally just used it, opened HN, then saw this post
For example, if you want to track your maintenance calories (TDEE, total daily expenditure), Garmin isn't going to be much useful.
Honestly I've been wondering if in the near future I can basically have a big machine and some sort of "ingest" program.
Then keep connect my devices to it, where it will backup all the data, and mine the backups for information I want.
Mine my iphone backups for text messages or contacts
mine all my devices for photos or videos
mine my watch or bike computer or gps or whatever else for where I've been and how I've exercised.
instead, everyone wants your data and imposes themselves in the middle.
Strava (and I assume to some extent Garmin) apply some smoothing to these raw GPX traces to try and improve the path, or remove some of the noise.
You'd be missing out on this post-processing by taking the data raw. Ofc you can implement something similar yourself, but I wanted to point out that these platforms are doing a little bit more than just displaying the GPX trace.
I wander often on many smartwatch/sport tracking forums/subreddits, and it's fairly frequent that people ask how to deal with smoothing and get back raw data. Some love how Garmin smooths out a race track run for them and make gps trail stick perfectly to a lane. Some pull their hair out seeing their lake run being smoothed out to make it look like they jumped over fences and private properties.
I often find my garmin traces confusing as well, it's not objectively better.
https://claude.ai/artifact/162zJUVejDdrAAw6yz9ETs
fyi - most of the functionality already working, but the key factor is how to get the data from the vendors.I currently rely on run-gap but i realise this is not a long-term solution. Last time i have checked intervals icu api I just couldn't stop throwing up for a few days -but this might be better in the mean time.
long term solution is to have something like rungap, server side without the ridiculous fees some of the vendors charge (terra, rook,...)
if anybody wants to test what I currently got, or just has some feedback - let me know.
They charge an absolute fortune.
but a lot of these folks are uploading everything to garmin connect and letting it have your data and do the work.
The web and mobile based workout builder has a terrible UI if your workout changes between sessions so I've lifted some features from an app called liftosaur and got it to send activities to my watch. Unfortunately Garmin don't seem to care very much about strength training, so are missing a lot of pretty key exercises from their list, with no ability to create custom ones
See also: the OG App : https://techcrunch.com/2022/09/27/og-app-promises-you-an-ad-...
This is why I don't understand why MCPs (or in other words open documented APIs right?) are being pushed so much.
What's the value in e.g. Amazon opening up their APIs to competitors, lowering the cost of scraping their data? Or allowing their consumers to more easily analyze dynamic pricing? Isn't the whole point to steer people towards closed proprietary apps that work in walled garden that prevent reverse-engineering and any kind of modification?
Not a great example considering how easy it is to get Amazon data from both official and unofficial APIs (which is very cheap at scale)
How is it working for you in Garmin for sleep tracking? I tried it a few years ago and loved it at first, but then noticed how incorrect sleep data was.
It's been working great. The Claude morning brief compares my sleep, HRV, training status, calendar, and weather and then tells me when and how hard to workout that day.
Its funny because I literally just used it, opened HN, then saw this post
https://github.com/CodeWithCJ/SparkyFitness