Changing Garmin title/notes overwrites ICU title/description

Looks like on Oct 30, 2024, or shortly thereafter, as a result of this thread, Garmin titles and descriptions/notes started to get synced one-way (Garmin to ICU).

This is nice, to an extent, but there’s a problem with this because ICU allows for much longer titles than Garmin does. Garmin titles are limited in length (not sure how long; looks like 128-ish characters; total guesstimate, but it’s not that long).

Since Garmin is my source of truth as far as any future data imports go, I’ve gotten into the habit of always updating titles and notes there to be the same as in ICU as much as possible. But there are frequently times where things differ due to length limitations.

But now with this new “feature” (I waffle between bug and feature depending on how I look at this, but went with bug here), my ICU titles are effectively capped to Garmin title lengths.

My proposal: Auto-sync titles and notes from Garmin to ICU as long as the ICU title/description has not been manually updated. Once any field synced from Garmin is updated in ICU, stop syncing that field since the edit in ICU should be enough of an indication that the user wants to sever that link.

From what I understand, the sync is one way only (from GC to Intervals) and only triggers on changes in GC - I.e. you still can edit activity names in intervals, and as long as you do not go back to GC and change the name again, your edits in Intervals remain. Is that not what you had in mind @stefcameron ?

Yes, it’s only one way, GC to Intervals. But that still creates problems because GC is an awful platform while Intervals is awesome, yet GC remains critical should one ever need to import all data into another training platform.

So I find myself wanting to keep it in sync with Intervals (to the extent possible), not the other way around.

As I mentioned before, GC limits its title length to ~128 characters (I haven’t counted, but I often blow past the limit) while Intervals has a much higher limit (I’ve never hit it, whatever it is).

Since I support (pay for) Intervals, from my perspective, this is the platform that should ultimately have the data I use on a daily basis. GC is a passive platform I try to keep in sync but don’t fret about that much.

Yet this new “feature” (bug IMO) flips that around and makes GC the primary and Intervals the secondary.

I often have cases where I can’t use the title I want to use in GC because the title is too short. So I often end-up with titles in Intervals that are not the same as in GC.

But now, today being a good example, I found myself needing to update the description of a number of past rides. So I searched/filtered for those rides in Intervals, and then I had to update them in GC and Intervals – but things no longer match for reasons I’ve explained above…

As I’m loading the GC rides one by one and updating the descriptions, my Intervals data is being overwritten and I’m losing information I had before because Intervals is reacting to the change and re-syncing the data.

That’s not good, and very annoying.

The only time this should be allowed to happen is if I have never manually edited the title and description of that ride in Intervals (I’d say the same for any field that’s now getting synced and is overridable in Intervals, though I don’t know of any others at this time). If I have changed it in Intervals, and GC changes, leave it alone because it may no longer be the same – and for good reason.

If anything, I’d wish it to be flipped: I should be able to edit a bunch of fields in Intervals and this action should then be replicated to third-parties like GC and Strava. Not the other way around. But I think internally flagging those fields as edited in Intervals and ignoring new data from GC post-initial-sync is probably easier than supporting that…

Or there should be an additional configuration on the GC sync settings to opt-in to syncing activity changes after the initial sync (should have been opt-in when the change in behavior was introduced so as not to automatically change the existing behavior for the rest of us since this is not fixing a bug; this is adding a convenience for the way some user like to use Intervals with GC).

OK, now i understand why this new feature is unhelpful for your situation, it makes sense, and i agree with you on GC vs Intervals.

And yet given the nature of GC (a platform for sports data almost exclusively generated by Garmin devices), it would be v v surprised if they allowed anything but one way outward syncing - I don’t think they will open it up any time soon!

But that also means that if you are thinking of GC as the repository of record in case of migration, then the fact that you are creating more data outside of it, will fragment where all your stuff is, and, potentially, turn some of your data into an island as time goes on and platforms evolve.

I had the same thoughts as you, but to avoid data fragmentation, I choose instead to try to have data more or less as identical as possible in various platforms, and that meant not adding data that did not sync. Just a thought though.

1 Like

All I’m asking for is for a smarter GC → Intervals sync where Intervals respects my overrides and preserves them.

I doubt GC would ever sync inwardly. Intervals would “simply” use their API to set the title/notes whenever an activity’s title/description is changed by the user. But that’s not my ask here. My ask is much simpler than that (I hope).

As for GC being the repository of record, after having to migrate from Today’s Plan to Intervals, the only piece of metadata that comes through is the title because GC’s bulk import API doesn’t include notes. So the only thing I really care about over there is the title. But it’s too short. So I have less descriptive titles I use in GC that would still be “good enough” if I had to import elsewhere in the future.

Since it’s a one way sync and you know how it’s happening.
Change the titles on GC and then it’ll sync to Intervals.

Since you said GC is the main source, then the titles there will be the titles that gets transferred to your future platform, so the 128 char limit will always be there anyhow.

If you want more descriptive titles, change the titles (>128 char) on intervals after you’ve done the same on GC.

As I’ve explained twice now, there are some usability issues with this. It’s not as simple as you put it, especially when going back to fix titles on existing activities.

1 Like