[DONE] Small improvements for Zwift export

I would like to be able to have my intervals really as Zwift intervals

Actual
on Intervals.icu I set :

8x

  • 45s 360w
  • 45s 200w

but in Zwift, this is not converted as 8x the same intervals, it is converted as 16 periods of 45s, which is harder to follow and harder to update if we wnt to slightly change the values on Zwift.

Expected

8x

  • 45s 360w
  • 45s 200w

Should give real 8x intervals on Zwift, not 16 periods of 45’

@david
The text for the ZWO file, to nest the micro intervals, that is generated in Zwift Workout editor is as follows:
edit: it doesn’t show the text when I paste as is.

This might help solve the nesting of intervals, at least for Zwift workouts.
I notice it doesn’t allow using a range of power, and is stuck on a fixed percentage. It’s fine if the workout is done in resistance/slope mode, as the user would have the target power as guide.

Here’s an example of a nested workout, which is uploaded to the workouts folder from the above mentioned website.

Could someone please test this workout. I haven’t seen any examples using a range for power and don’t have Zwift myself. Tx.

Test_IntervalsT (1).zwo (588 Bytes)

The Intervals.icu workout for it is:

- 2m Z2

4x
- Go 2m 93-95%
- 30s 60%

- 2m Z1

Hi @david you don’t need to have Zwift to test it, with the Zwift editor you can visualise your file : Zwift Workout Editor

Thank you @Gerald ,

The point is that Intervals.icu doesn’t generate intervals when you export the file

No <IntervalsT>.

That’s my feature request :wink:

(this works ! ^^)

I just fixed an issue with that test file (forgot the “Repeat”) and have updated the post. I tried uploading it to the editor but that doesn’t work. It seems the editor doesn’t support “PowerOnHigh” etc…

Intervals.icu:

<IntervalsT PowerOnHigh="0.948" PowerOnLow="0.927" OffPower="0.6" Repeat="4" OffDuration="30" OnDuration="120">
    <textevent message="Go"/>
</IntervalsT>

Download from the editor after upload:

<IntervalsT Repeat="4" OnDuration="120" OffDuration="30" OnPower="NaN" OffPower="0.6" pace="0" CadenceResting="NaN"/>

So I am not sure this will work on Zwift.

Ok i’ll test it on Zwift directly.

Not yet …

I will generate in Zwift your example and give you the file

test_intervals.icu.zwo (457 Bytes)

It seems that the file looks like the one you dowloaded from the Zwift Editor. Only

<IntervalsT Repeat="4" OnDuration="120" OffDuration="30" OnPower="0.94449997" OffPower="0.6045" pace="0"/>

and ranges are not available on Zwift : PowerOnHigh="0.948" PowerOnLow="0.927"

(Personally I prefer to use the watts directly than the % of FTP.)

Ok here is another test file.

<IntervalsT OnPower="0.948" OffPower="0.6" Repeat="4" OffDuration="30" OnDuration="120">
    <textevent message="Go"/>
</IntervalsT>

Test_IntervalsT (3).zwo (565 Bytes)

The code will now use IntervalsT if there are 2 steps in the repeat and the both specify exact power (i.e. not a range).

1 Like

Yes, that’s correct !

Treated as intervals by Zwift !
image

Great work, Thanks !

Both workouts (1 and 3) worked fine for me when downloading from here and uploading to the Zwift workout folder.

1 Like

@david
I’ve started a new thread in bugs but @MedTechCD redirected me here (thanks!)

Is there an option to keep the old way of generation under the current API endpoint, and create a new endpoint for the new way?

Sorry for changing this out from under you. I didn’t think it would be a problem because <IntervalsT> is a standard thing in ZWO files. I didn’t use it in the beginning to save time.

Would it be possible for you to update your integration to accept it?

1 Like

I created integrations on the basis of intervals.icu, not on the basis of ZWO documentation, and therefore I never included <IntervalsT>.

I will try to adjust under <IntervalsT> in that case.

Thanks for quick response!

1 Like

I did a workout on Zwift today and noticed that the average lap power is no longer showing during the repeats. It did appear in the cooldown lap. Having the average power was something that really helped with non-ERG workouts.

Apart from this nice to have the change is great! Really tidies up the left side of the screen when doing 20x2m on/off intervals.