Skip to content

Fix Absolute Power Targets with Intervals.icu synced workouts #245

@dvmarinoff

Description

@dvmarinoff

A workouts created with Intervals.icu with absolute targets, when synced to Auuki has some of the targets a few watts down.

This is the workout on Intervals.icu:

- 5m 120w
- 1m 0w
- 5m 120w
- 1m 0w

- 5m 130w
- 1m 0w
- 5m 130w
- 1m 0w

- 5m 140w
- 1m 0w
- 5m 140w
- 1m 0w

- 5m 150w
- 1m 0w
- 5m 150w
- 1m 0w

- 5m 160w
- 1m 0w
- 5m 160w
- 1m 0w

- 5m 170w
- 1m 0w
- 5m 170w
- 1m 0w

- 5m 180w
- 1m 0w
- 5m 180w
- 1m 0w

- 5m 190w
- 1m 0w
- 5m 190w
- 1m 0w

This is the exported zwo from Intervals.icu:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<workout_file>
    <author>Dimitar Marinov</author>
    <name>5-1-5 Zone 2 Test (10w steps)</name>
    <sportType>bike</sportType>
    <ftpOverride>242</ftpOverride>
    <tags/>
    <workout>
        <SteadyState show_avg="1" Power="0.495" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.495" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.537" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.537" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.578" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.578" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.619" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.619" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.661" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.661" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.702" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.702" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.743" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.743" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.785" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
        <SteadyState show_avg="1" Power="0.785" Duration="300"/>
        <SteadyState show_avg="1" Power="0.0" Duration="60"/>
    </workout>
</workout_file>

The absolute targets are converted to relative. So 160 becomes 0.661 which given an FTP of 240 results in 240 * 0.661 = 158.64000000000001 or Math.round(158.64000000000001) = 159, 1 watt down

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions