Power mismatch -- Wahoo Kickr vs Stages Cranks

A while ago, I found there was a significant difference in power readings between my Wahoo Kickr and my Stages L/R pedals. At low power levels (<100 watts) they are pretty close, but as the power increases, they don’t track anymore. At around 200 watts, the difference can be 10% or more, with the Kickr always reading higher.

Now here’s the interesting part. This only occurs when I am using TrainerRoad to set the power levels and control the Kickr (in ERG mode). When riding on Zwift without TrainerRoad, or riding “free,” they match power pretty well.

I contacted Wahoo support about this. They replied that since the problem only occurs when using TrainerRoad, then the issue may be with TrainerRoad. They advised contacting TrainerRoad to see if this has been reported as an issue by a number of users. Before doing that, I thought I would post here to see if anyone here has experienced this.

I am now using PowerMatch to work around it, so it isn’t a critical issue for me. Just interested in finding out why this is occurring.

1 Like

what are you using to compare the results in zwift vs TR?

I had a similar experience with my kickr, I thought my ftp was testing considerably high. I compared it to an outdoor ftp test and the difference was ~20%. Outside test was done with a powertap wheel.

I brought this up with Wahoo and they felt it was the difference between road and trainer riding, not an accuracy issue.

fine.

So i borrowed a quarg crank and compared it to the powertap output and they were within 2%.

I emailed this info to wahoo, and they then decided that their advertised accuracy claims were actually precision claims and as long as i got consistent (albeit incorrect) power readings from the wahoo i was fine.

So i got a power pedals and now ignore any power readings from the kickr.

3 Likes

As far as I know the power readings on most trainers in Erg mode are smoothed quite a bit, which washes out fluctuations that you can still see on your Stages power meter. Some trainers and smart bikes will even resort to merely reporting the “requested” power level in Erg mode, so if TrainerRoad wants you to ride at 300 W, then the trainer switches to 300 W and will report 300 W. Perhaps that is what is contributing here.

Blockquote and they then decided that their advertised accuracy claims were actually precision claims and as long as i got consistent (albeit incorrect) power readings from the wahoo i was fine.

Wow. Just wow…

I suspect that smart trainer (and power meter, to a lesser degree) accuracy claims are significantly exaggerated, as they are difficult for users to test. I’d love to seem some data analysis by TR on this, as they’ve got to have tons of data with people using powermatch where they would have both the smart trainer and power meter data.

yeah, a great customer service moment.

For years i swore i would never buy anything from them again, but the trainer is still working many years and many use hours later so… who knows.

I would be very surprised if they hadn’t already looked at this data set during/after development of the powermatch feature.

I have Zwift getting power from the Kickr and TrainerRoad getting power from the Stages pedals using PowerMatch. I double check by looking at my Wahoo Elemnt Bolt head unit, which gets its power from the Stages pedals and the Wahoo app on my phone that gets its power from the Kickr.

I have power smoothing off and both are set to give 3 sec power. I am also doing these comparisons during very steady intervals where I am trying to hold steady power and cadence. Yes, it’s still variable, but variable around a fairly constant level on each power meter – with the Kickr offset to a lower reading.

To confirm, you have the “Controlled” box in Zwift Devices empty?

For your needs, the box I circled must not have the trainer connected.

Sounds like the same experience I had with both Wahoo and Stages when I first asked them both about the power level differences. But that was before I found that the difference only exists when TrainerRoad is controlling the Kickr.

Yep, that’s correct. That’s a necessity for TrainerRoad to have total control of the trainer. Unlike your screen shot, however, the “Power Source” and “Cadence” are checked.

1 Like

Good, just checking and grabbed a screenie from the web for quick access.

You’re having a similar experience to me however my H2 trainer initially reads lower than my LS Stages, then about 20 minutes in they track similarly. Using Powermatch leads to choppy intervals, especially shorter ones, where things are hunting for the right power figure. Once things are fully warmed they track about 1-3% apart which is acceptable.

I’m also pairing to zwift and TR the same way you are. I don’t really have the time or patience to do a 10-20 minute warmup and then spin down before every single workout so just about to say screw it and use my trainer exclusively like I did last year and then just use my stages for outside. Worst case scenario, my stages reads a bit higher, so I can assure myself that if I did a certain interval inside I can do it outside with the skewed power reading since it’s actually a bit easier.

Yeah, the trainer power will change as it warms up. That’s why they want to ride for 15 minutes before doing a calibration. The Stages power meters have temperature compensation, and they read the temp when you zero them at the start of the ride.

I agree with you that I don’t want to ride for 10-20 minutes, then do a spindown each time I ride.

Mine have a similar minor difference normally, which is actually expected because of where each gets its power. What I am having trouble with is understanding why (and hopefully fixing) there is a much bigger power difference when TrainerRoad is controlling the trainer.

Welcome to hell. Stages L/R featured in my report on the issues with Shimano cranksets, and my test protocol was focused around ERG efforts.

I’d be interested to see your LEFT/RIGHT power split from the Stages up against the Kickr. Feel free to send over the FIT files and I’ll have a quick look.

4 Likes

So, I have a similar problem with mine. The largest issue, and note I’m on a Kickr V1 (aka 2014), is that spindowns vary quite a bit. If I spin down once, I can be under. I spin down again, it can be over. Make of it what you will, but I always use a power meter now to control my Kickr.

Also, as the workout progresses, power variations are pretty bad.

However, I do find that things are more consistent if I do a spindown with a 10 minute warmup, and only a 10 minute warmup, and do this repeatedly. If I do an hour workout, and then spindown for the next week, forget it. It’s garbage. I can get variations as the temperature starts to cool down from the hard intervals.

1 Like

My Kickr Core (2017) will always read 10W lower than my Favero Assomia power pedals.
At first I was quite unhappy about this. Tried spin down more, calibrate…etc. Nothing changes. Then considering I’m mainly ride outside and to keep my power consistent I just
ignore the Kickr power reading and use Assomia as the power source for all cases. This might lower the value of a direct drive trainer (but hey you got erg mode). But I just wouldn’t
bother.

Thank you. That is very interesting indeed. I had assumed that since the Kickr and Stages power meters read similarly in SIM or resistance modes and only differed when the Kickr was in ERG mode that it was the Kickr that was “wrong.” If I understand your article correctly, it may be more probable that the Stages meters on my Shimano cranks that are more unreliable in ERG mode.

I would be glad to send you some FIT files. I assume you would need the files for the same ride from both Zwift and TrainerRoad?

FIT files recorded from the Kickr and the cranks for the same ride. Ideally ERG… with some steady state work. TR/Zwift/etc doesn’t matter what controls it.

This is a common problem with people where the trainer’s power curve doesn’t match the power meter’s power curve.

I don’t know why this would only happen on erg mode on TR. As long as power match is off (which we created to get by this issue) we just send a command that’s says something like setLoad(250). That sets the load to 250 watts. That’s all we can do.

I would make sure that you don’t have a difference in power in resistance mode on TR too.

1 Like