Not quite a feature request but thought it was worth sharing as it might help others: I cobbled something together for myself to get my Wahoo SYSTM training plan in the intervals.icu calendar, thought others might benefit from it as well.
There are a few steps to get it working, details can be found on GitHub.
Unfortunately there is no public Wahoo SYSTM API (yet?), the script uses your username and password in order to login. That’s fine for one user running it on their own system, less than ideal from a security and supportability point of view if you have to support it for many users.
Thank you for sharing this, it works and was really usefull! Just got the workouts offset by -1 day, but easily fixed it with a few drag and drops Saved me a lot of time!
I just updated it to reflect some changes in timezones, as well as fixing the rides that didn’t match 100% so it should all be good now. Thanks for the pointers @gaiors regarding the MAP values.
OMG @Bakermat, this is so awesome!!
I am not used to Python on my Macbook but I got it up and running!!
This makes planning my year so much easier as I do use Systm but because of my odd goal (ultra race in the Netherlands) I have to customize my training and that is now possible.
If you allow me, I would like to suggest something that you might consider in a future version:
when using a plan with Strenght and Mental exercises, it would be nice to exclude those from syncing, like yoga (UPLOAD_YOGA_WORKOUTS = 0).
Work’s been busy and I didn’t see your replies, I’ve changed my settings to get notified about it. Thanks for the feedback and the suggestions. I made some improvements today that hopefully will help some of you.
It crossed my mind but there is a fair bit of extra work involved to do that, as I would have to store detail about the created workouts and edit/overwrite them instead of creating new ones.
If you’re just testing if it works, I recommend to use a small date range instead and only use the multi-month plan range when you’ve decided on the program you want to use.
I managed to get these changes added, so just published version v1.3.0:
Added support for runs, swims, strength training besides yoga. These are disabled by default.
Added support for adding the Wahoo SYSTM description to an intervals.icu workout. It’s pretty verbose, so disabled by default.
If you’re upgrading, the config file won’t be overwritten. If you want to change the defaults, you’ll have to either remove your current config file and it’ll get created again, or you can add the relevant lines yourself to your existing sufferfest.cfg if you want to use this: UPLOAD_RUN_WORKOUTS = 1 UPLOAD_STRENGTH_WORKOUTS = 1 UPLOAD_SWIM_WORKOUTS = 1 UPLOAD_DESCRIPTION = 1
Any workouts already in intervals.icu do not get overwritten, the app only creates new workouts. So if you run the app multiple times for the same date range you will get duplicates if your plan hasn’t changed.
If that’s not what you meant let me know and I’ll look into it, just checked with a clean calendar and I see only one event a day as expected.
The behaviour you are describing was present in v1.0.
Now, with 1.3.0 and with descriptions enabled, it creates duplicates.
I did small changes to my plan calendar, and a new sync created duplicates for each run (I had to manually remove 3 copies of each for a 3 months plan
One more thing: it still considers today as past.
If I do a change to today session, it doesn’t sync with UPLOAD_PAST_WORKOUTS = 0.
Yes it does, that’s the behaviour I mentioned above: v1.3.0 or below does not keep track of what’s uploaded to intervals.icu and just creates a new workout which results in duplicates if you run the app multiple times.
I didn’t encounter this myself. Timezones can be finicky to work with, are you in the same timezone as is set in intervals.icu? Having said that, the way the dates were handled wasn’t as clean as they could be.
I’ve just simplified that part in v1.4.0 which I’ve just released, which also has support for deleting intervals.icu workouts (in case you want to change training plans) as well as overwriting the same workouts in intervals.icu to avoid duplicates.