Latency compensation

Since many trainers take varying amounts of time to ramp up and ramp down the resistance, can we have a setting that allows us to adjust the timing (pre-delay?) of the control signal that TR sends to the trainer’s resistance unit? One for when ramping up and another for when ramping down would be ideal.

Actually, the ideal would be if PowerMatch took care of this but I would be happy with a set-and-forget.

1 Like

We have on a list to tune this for all trainers. @Pete is going to do this.

Right now we do a good job with Kickrs and Hammers. The Neo’s change is too early though.

2 Likes

Thank you, @Nate_Pearson

If I might be so bold, please also test on smart rollers. They are awesome! :bowing_man:

2 Likes

Pete as the elite smart rollers!!! :smiley:

3 Likes

We have the list like Nate mentioned and are really going to tune every one to make sure it’s an awesome experience. Selfishly, I’ll see if I can push the Smart Rollers up on the list :laughing:

3 Likes

@Nate_Pearson @Pete

Are you going to handle the case where the latency depends on magnitude of the requested power change? For example, my smart rollers have a permanent magnets that are moved closer/further from the rollers via a stepper motor to adjust resistance. In other words latency for larger power changes is larger, and smaller changes is smaller while the slew-rate (watts/second) to get from one power level to is (I think) constant.

1 Like

I wasn’t thinking of that, but that’s a good idea.

Most smart trainers don’t use magnets like that that move, but I know a few do.

1 Like

LOL. This might throw me off. I’m quite used to spinning up 2 seconds early on my Tacx Neo.

2 Likes

Coincidentally my friend was commenting on this today.
He noticed my power is a mess of ups and downs and can vary +/- 20w. At the end it evens out.

My initial reaction was the fact that i use power match (powertap c1 and stac halcyon).
I am not sure how much delay there is between my crank adjusting and the trainer correcting.

Will this list includes stac halcyon?
Or is this totally unrelated and just normal behavior of ERG?

That’s probably the Halcyon. We can work on getting the change to kick in at the right time though.

All trainers have things thing where a crank based PM reads higher at the beginning of high interval spikes then it normalizes out. I don’t think any company has fixed the erg side of that.

1 Like

Thanks.

Let me know if there anything I can help with.

1 Like

just curious if his “standard” is the artificially smooth Kickr power meter?

While it helps I’m on a Kickr direct-drive (TR tuned already), some power variation is not only expected it is still less than well paced outside riding. I did a comparison recently: Erg Mode Noobie - Share your experience, tips, and tricks please! and power variance of inside vs outside:

  • outside 25W std deviation at threshold (~245W)
  • inside with PowerMatch 12W std deviation at threshold (~225W)

pics in that thread. Inside with PowerMatch still a lot smoother than outside.

1 Like

He is in fact using a Kickr core, so yes that is his standard.

here how today ride looks like

All my rides look like this. But my limited understanding it that is normal.

Wahoo’s power smoothing is enabled by default. It generates artificially smooth power data, and makes people believe they are capable of superhuman power generating perfection :robot:

The reality is your ride, that is normal for an indoor smart trainer in Erg mode. And comparing your ride to outside, well, your ride almost looks fake! :wink:

2 Likes

I asked my friend and he has smoothing off.
He does free rides on zwift tho. So its different than Erg.

yeah…outside is a mess of jumping up and down.
Aight, as suspected. Normal for erg using matching.

1 Like

:+1:t3: yes your power looks 100% normal! Its flat here, and with practice I’ve gotten pretty good at ‘smooth’ power graphs when doing intervals or easy aerobic endurance. But they aren’t as smooth as inside. And like you said, group or free rides are a jumbled mess like a 4 year old scribbling across a piece of paper :rofl:

1 Like

If I would be TR developer, I would add TR settings a adjustment value to compensate latency. Each ‘advanced’ user could then adjust compensation right to their setup. Then I would collect info about each trainer/power-meter combo and generate good base line estimation. Then I would use this base line values as default. Still there would be TR settings adjustment for perfectionists to adjust the final milliseconds. This would kill complains with two side sword, allow adjustment and also provide good base line compensation value.

1 Like

That’s pretty much what we’re going to do, but first we’re going to tune it ourselves. We think if we do that we won’t need the settings for everyone else. @Pete is going to do this. Pete, I bet AT could knock that out. They could setup the structure now without the tunings all done. This could also live client side to make it quicker to launch.

1 Like

Is this effort tired to the new advanced power matching?

You’re already using azure as your back end, seems like this could be solved by training a neural net, well maybe one neural network for each power meter and trainer combination. Use all the data from end users to train for you

NNs sound like serious overkill for this problem.

1 Like