Control smart trainer's resistance with external power meter - important for Workout Mode

(Greg Hilton ARCC) #201

I agree with Michael, just don’t use ERG mode for short intervals. Use ERG mode for everything else.

I’ve done 30x30secs on a v1 Kickr with no issues at all, without using ERG mode.

I’ve also done longer intervals ie 3mins @ 270w on the Kickr in ERG mode with no issues apart from a death spiral if I can’t sustain the number. That’s not a fault with anything but my legs!

(Javier García) #202

I do my workouts with ERG mode and it works perfect. I takes 2 or 3 seconds to adjust the power but then it works very steady. The problem is for intervals shorter than 10 seconds with very high powers. But I think this is due to the trainer, it can change from 200w to 800w in 5 seconds.

(Liam) #203


I’d have to agree, this is going to be quite trainer specific. I use TACX NEO and do almost all my cycling in Workout mode. I have an FTP of 231 and Jon’s Mix is not a problem for me (~600w intervals). What is an issue is the trainer going back down quickly AFTER the high intensity interval. It’s obviously using some moving averages to work it’s way down causing the power to bounce around 100-300w fluctuating for perhaps 10-25s for me (meaning you cannot PERFECT a 1min 150w ‘rest’ internal after a 600W 10s interval). This is not an issue for me. It seems to be more on the way DOWN than UP, id take that any day.

I also tend not to use the Zwift provided workout’s anymore now, there’s much better ones IMHO on the website which should be downloaded installed. These have more control over watts and cadence and tend not to have crazy high fluctuations.

I have experienced lock up once or twice (targeting 800w), i’d received various suggestion like using trainer on a lower gear etc… at the end of the day it’s a trade off, the trainer need to assume a minimum cadence and then give the ride time to spin up at a given torque, else 0 cadence means requiring infinite torque (obviously wrong). I get why this is a difficult problem for them to solve.




(A rider) #204

(Clifford) #205

My approach - TrainerRoad reads the power from my P2Max and controls my Kickr (using erg mode or whatever it decides it right for the interval). Simultaneously, Zwift reads the power from my P2Max to control my avatar in their virtual world and distract me from my suffering, but Zwift is not controlling my Kickr. Works great. TrainerRoad has better training plans and trainer control algorithms, even for short intervals, IMO.



(Brian Dixon) #206

TrainerRoad seems to have gotten ERG right. Alot better compared to Zwift in my opinion. Intervals under 90 seconds are futile on Zwift. Depending on your cadence, power will go over target, than under target before getting where it needs to be. The problem is the process takes nearly 40 seconds.


Using a Quarq power meter and a Wahoo Kickr.

(Michael Henasey) #207

I agree that the experience on TR with workouts and ERG with my Stages and KICKR is better than on Zwift…however, using both at the same time isn’t the same as just using Zwift alone for one very small reason for me…the glowing arches for each interval. If I’m doing the workout with TR but not in Zwift, no glowing arches :frowning:


(Clifford) #208

Yup, I miss the glowing arches too … ;( It also drives those around me nuts. It doesn’t look like I’m working out, but I’m surging or resting - no drafting off of me!


(Brede Arntzen) #209

I also use Zwift only for looking at something else than numbers. Power regulation of the trainer is done by PerfPro that manage this to excellence as opposed to Zwift.

Zwift is a toy, TR and PerfPro are training tools :slight_smile:

(Stewart ) #210

Lockup happens when you just don’t have the strength to do a certain interval or are becoming too fatigued to carry on.

I think the Zwift workout mode is fine.

Some of the set workouts on Zwift do have quite optimistically high levels for the short intervals but this isn’t a problem.  You can either do the workout in resistance mode or very easily edit the workout to suitable levels and do in ERG.
In general though, ERG isn’t great for very short intervals and pretty much any trainer or app takes some time to settle down.

(Jim) #211

Mea culpa. Jon’s Short Mix was a poor choice to make my point. Let me take a more reasonable workout as an example: Cadence Bursts from the GCN suite. Look at the meat of the workout, 14 intervals of 100% FTP for 30 seconds with rests at 80% FTP for 2 minutes.

On average, “Power meter + Smart Trainer ERG mode” does fine. The 30 second intervals average between 97% and 101% of my FTP. The 2 minute intervals are even closer to the target, averaging between 80% and 81% of my FTP.

However, there is an extreme spike each time the target wattage changes. (I hope readers can download the full-size image of the graph above to see this.) My peak wattage was 198% of my FTP, which is absurdly high for a 100% interval in ERG mode. Zwift’s “Power meter + Smart Trainer ERG mode” simply increases the resistance too much when the cyclist’s power output falls below the target wattage immediately following a change in target wattage. Similarly, Zwift’s “Power meter + Smart Trainer ERG mode” decreases the resistance too much when the cyclist’s power output exceeds the target wattage immediately following a change in target wattage.

Assuming that Zwift’s “Power meter + Smart Trainer ERG mode” is implemented as a PID controller, I would suggest that the PID should be tuned to be overdamped, to prevent overshoot.

(Stewart ) #212

Jim Mattson. It might be to do with your trainer? This is a picture from a workout I was doing on Zwift on my Neo with P1’s as power source.
No spikes on any of the intervals of any note.

What do you think?

(Marco Soldano) #213


I have a feeling whoever is coding the control loop for the trainer has absolutely no idea what a PID controller is.

I understand the challenges of control latency due to the bluetooth link and also of controlling different type of equipment, with different transfer functions, but at the same time we are talking events in the order of seconds… It’s not rocket science, they could characterize the specific response of the trainer (i.e. the so called “power plant”) and tune the control loop compensation to avoid those overshoots/undershoots.

I’ve run similar tests as you did, and particularly trying to keep my cadence as steady as possible, and still the zwift control loops does severe over/undershoots at every transition in power greater than few tenth percent.

It’s an easy problem to solve if you know what you are doing. I suggest Zwift coders to go back to school and learn some control theory.

And again seems like the control loop in Trainer Road is much better, but also not perfect.

(Marco Soldano) #214


is that chart form strava?

Data is uber smoothed in their viewer, what’s the time scale? You are showing distance, not time.

But the Tacx Neo may be better and more responsive than the Kickr, I don’t know…

(Stewart ) #215

Marco, yes it is from Strava. They were 30/30’s.

I’ll see if I have the file on Garmin.

I wouldn’t say the readings look too smooth though but not the big spikes like Jim shows up.

(Stewart ) #216

Here is the same set from my Garmin connect.

(Clifford) #217

Let’s hope someone from the Zwift dev team is reading this thread … totally agree that they need to take a look at how PID controllers work. This is an issue that has been solved a long time ago.

(Jim) #218

Thanks for the hint on smoothing. I disabled smoothing in GoldenCheetah, and now it’s even more obvious how bad the feedback loop is. “Lap 26” should be 158 watts, and “lap 27” should be 197 watts.

On a related note, I did an experiment this weekend to rule out the delay introduced by connecting my Bluetooth devices to my Windows PC through the Zwift Mobile Link intermediary. Using native Bluetooth 4 drivers on Mac OS X, the results are essentially the same.

(Tom DeMay) #219

I thought this had been resolved (even posted earlier in the thread that things seemed to be working) but I’ve been having similar experiences as others above. It’s impossible to do any short intervals in ERG mode if you’re using an external power meter - the yo-yoing from Zwift is just way too severe to make it usable. 

What I’ve been doing is using ERG mode for longer FTP type intervals (or using my Wahoo Kickr Snap as the power source, so things are smooth) and not using ERG mode if the intervals are shorter, more intense or have bigger wattage swings. It’s not ideal, but it’s where I’m at. Would love a better solution from the Zwift team.

(Clifford) #220

Here’s a view of a few of the intervals from my TrainerRoad workout yesterday. Billats - 30s @ 290w, followed by 30s @ 100w. You can see the oscillation there as TrainerRoad grapples with controlling the Kickr based on the output of my P2Max as the interval kicks in or ends. Generally, the experience is good for me.