![](https://i.ytimg.com/vi/ZMUiBqROn4k/hqdefault.jpg)
Rouvy has just done what everyone has been asking for: Added virtual shifting to Rouvy, using Zwift hardware*. This allows you to use virtual shifting in Rouvy, just the same as Zwift, using the Zwift Click or Zwift Ride hardware. You technically don’t need the Zwift Cog at all, leaving your existing regular cassette on there. But we’re probably getting ahead of ourselves.
This announcement is a pretty big deal. Over the last year or two, Zwift has heavily pushed not just consumers but trainer manufacturers, to adopt Zwift Cog & Click. In fact, almost every trainer manufacturer except Garmin/Tacx has fallen in line. And while Zwift Cog & Click does have some substantial benefits for multi-bike compatibility (for both consumers and Zwift), its main downside is that Zwift has heavily guarded this as Zwift-only. Thus, anyone who bought a Zwift Cog-enabled trainer was effectively locked into Zwift from an app standpoint.
By Rouvy removing that wall, this means consumers can buy any trainer they please, and use it with not just Zwift, but also Rouvy (and I’m gonna guess, soon, any other app they darn well want). Now, to be really clear here: This is hardly some olive-branch move by Zwift to the indoor training community. Rouvy has done the challenging work of reverse engineering the communications of the Zwift Protocol, and simply implemented it in Rouvy. So, let’s dive into it.
*Now, for a tiny bit of nitpickers corner, technically speaking, a small independent app called QZ has added this a while back for other platforms, but that requires a bunch of middle-man configuration and another app. Which isn’t an insult to that app (they also do treadmill incline stuff too), but that’s much more of a geekery shim/solution than a mainstream solution.
Hardware Required:
The first thing is having the right hardware, which is essentially:
A) A trainer on the Zwift Virtual Shifting compatibility list*
B) The Zwift Click, or Zwift Ride frame
Note that Zwift Play isn’t supported at this time, and it doesn’t sound like it will be either. Rouvy sees Zwift Play as a bit problematic since it takes up two Bluetooth channels (limiting usefulness on Apple TV, which is effectively the same problem Zwift has with it).
When it comes to the trainers, officially the list is any trainer on the Virtual Shifting compatibility list. But in practice, that’s a bit more variable. Rouvy says they’ve tested all of the Wahoo ones on that list, and those all work. Meanwhile, I tried with the Elite Direto XR COG, and that didn’t work. Inversely, I tried with the Decathlon D100, and that *did* work.
In asking Rouvy about this, they acknowledged it may take a bit of time to work through all trainers on that list, as they’re finding slight differences in how each company has implemented the virtual shifting from a protocol standpoint.
*(Note: Rouvy stresses to ensure that you’ve got your trainer firmware fully updated to the latest version, since that’s the version they’ve been doing compatibility testing on.)
Note however, that the Zwift Cog is *NOT* required. That’s because the Zwift Cog has no technical smarts in it. It doesn’t connect to anything from an electronics standpoint. It’s merely in place of a cassette. To demonstrate that, I simply used the Decathlon D100 with a regular cassette and the Zwift Click:
Meanwhile, up on the handlebars, you need either the Zwift Click, or the Zwift Ride Frame (which has integrated handlebars built-in). The Zwift click can be either the black one, or the colorful one. Those are internally identical, merely differ in paint job.
Got all that? Good.
Setup and Config:
Now, crack open Rouvy (remembering to update it first, obviously). You’ll see a ‘What’s new’ screen here, touting the new connectivity:
Then, pair your trainer like normal.
Once you do that, you’ll see the new Virtual Shifting option, which is where the Zwift Click will show up:
At this point, you’re ready to go and start using it in-game.
Riding With It:
At this point, pick a course you want to suffer on (just like normal). In my case, I decided to go with something at the other end of the island, Cap de Formentor:
You’ll notice in the upper left corner is the gearing display (e.g. Gear 16). In this configuration, you’ve got Gears 1-24, and you simply shift through them by pressing the + or – icon on the handlebar. Higher is harder, lower is easier. Just as with Zwift, the responsiveness is instant, and you can very quickly iterate through them. In doing a few test rides, I’m not seeing any difference that I can tell between Zwift and Rouvy here, in terms of responsiveness (and trainer control).
Likewise, when it comes to how the trainer feels, all of this feels identical to Zwift for me at this point. Perhaps long-term testing would yield different results, but at this point, it feels all the same. And that makes sense. The trainer itself already has special firmware for Virtual Shifting, and Zwift (now Rouvy) is simply telling it which gearing to use, based on each time you click.
Albeit, while Zwift did very recently roll out SRAM-style shifting and drivetrain combos on the Zwift Play & Click, that hasn’t happened here yet. But hey, the year is still young.
Wrap-Up:
In many ways, I suspect this will likely be the first of a few salvos back and forth between Zwift & Rouvy. Or, maybe not. Maybe Zwift will simply say ‘shrug’ and move on, focusing instead on Zwift as a game, and the (quite excellent) Zwift hardware (such as the Ride and Cog/Click). As much as Zwift wants to gatekeep the Zwift protocol, Zwift has to remember they built their entire company on open protocol standards. And this goes in direct opposition of that.
One shouldn’t overlook the fact that Garmin has held back on doing Zwift Cog/Click. My discussions indicate they are keenly aware that if they were to jump into that arena, without protocol openness, it’d pretty much kill off the rest of the indoor trainer apps within 1-2 years.
As for Rouvy’s implementation, it’s a bit too early for me to know what longer-term or quirky caveats there might be. Obviously, I see some around trainer compatibility that Rouvy is working through. And if Zwift & Rouvy get into a technical cat & mouse fight club, then things could get messy. But practically speaking, due to the archaic and clunky-ass way that trainer firmware is updated across all companies, that makes things near impossible to play cat/mouse, because it’d break their own customers. Until then though, I’m sure this will make lots of Rouvy users happy (and maybe soon FulGaz customers too).
Oh, speaking of which…Rouvy has decided to let FulGaz live on, complete with getting software updates for the next few years. They’ve come to realize there’s value in keeping both apps and servicing both crowds. But more on that later.
With that, thanks for reading!
FOUND THIS POST USEFUL? SUPPORT THE SITE!
Hopefully, you found this post useful. The website is really a labor of love, so please consider becoming a DC RAINMAKER Supporter. This gets you an ad-free experience, and access to our (mostly) bi-monthly behind-the-scenes video series of “Shed Talkin’”.
Support DCRainMaker - Shop on Amazon
Otherwise, perhaps consider using the below link if shopping on Amazon. As an Amazon Associate, I earn from qualifying purchases. It doesn’t cost you anything extra, but your purchases help support this website a lot. It could simply be buying toilet paper, or this pizza oven we use and love.
If it does not work on zwift play then I will not return to ROUVY. I understand that Zwift PLAY will not add on apple TV, but why not add on MAC and PC.
you can use QZ for this link to github.com
I smell lawsuit, might be similar to situation where Hammerhead used di2 protocol without Shimano permission.
I guess closed Zwift ecosystem is what keeps a lot of users (like me) having click/cog/play from switching to different platform.
I guess their patent end somehow in the 2024, that’s why also mywhoosh is moving to virtual gear this year
I would never use it where the noise doesn’t matter.
But where the original shifter makes loud noises, it’s a really useful tool.
Qz creator here, let me know if you have any questions
It’s sad to see how everyone keep improving and the big blue elephant that is Garmin/Tacx have not yet been able to 100% integrate their platform. Instead of adding new functions it seems that we are losing them.
you can use QZ for this link to github.com
It’s compatible also with Garmin and Tacx allowing virtual shifting to all the platforms!
(Copying a similar response I gave on a YouTube comment about the Garmin/Tacx side of things)
It actually depends on one’s perspective. At first glance, I’d agree. But in reality, they’re actually holding Zwift’s feet to the fire. I short, if Garmin/Tacx enables virtual shifting and goes the way of the Zwift Cog (setting aside today’s reverse engineering), then within 1-2 years, all other indoor trainer apps will go away. Like, hard stop, they’ll fold. As a result, Zwift will be free to do whatever they want pricing-wise, as well as feature-wise. In effect, it becomes a monopoly. For once, Garmin is actually doing consumers a favor here, even if Garmin has various motives for it. And even if it kinda sucks for consumers in the meantime.
Very odd, I was hoping this was done through a partnership, otherwise that protocol has been reverse engineered like at least over a year ago by other competitors (although there are notable trade offs with that approach).
Ray do you think there is any chance that Zwift may open the protocol in the short term?
And if they don’t do you think it’s going to be a good idea for others to open source the reverse engineered version?
Actually the QZ implementation is already open source! link to github.com
“Ray do you think there is any chance that Zwift may open the protocol in the short term?”
Not sure. But, one does have to remember that when Zwift first announced the Zwift Cog (with Zwift Hub variant), they had committed to making the connectivity available to 3rd parties, including apps. They’ve since tried to walk that back.
This reminds me of when someone reverse engineered the protocol for the elite sterzo. Elite and zwift promptly updated the firmware/protocol to stop others from using it. I can only imagine zwift will do so here again in the name of ‘security’
The difference is it’s a heck of a lot easier to do with the Sterzo than break everyone’s trainers. Sterzo has a relatively small userbase (very small), when they launched. Versus this would require either forcing a click update (totally plausible), or a trainer update (very challenging).
Zwift semi-forces Zwift Ride/Click updates more frequently, so that’s not a huge deal per se. But whether they want to engage in that cat/mouse game long-term is anyone’s guess.
Do you know how does it work, because IMHO, Cog is just single speed adapter, Click/Play gizmo that sends only key presses to app. Final part is function f(grade, gear) -> resistance and to stay away from vendor specific code in Zwift, such conversion is done in trainer firmware. So changing Click/Play protocol won’t affect trainer – Am I right?
I don’t understand with Zwift isn’t suing Rouvy.The Click Bluetooth protocol is trivial. Any decent programmer can use Android wireless debug facilities to reverse engineer the Click shifter. The problem is: The US DMCA prevents reverse engineering of proprietary protocols – even ones as simple as Zwift’s. What is Zwift’s position on a competitor using their hardware?
Reverse engineering isn’t actually prohibited by DMCA as a blanket statement.
However, DMCA does prohibit it in certain/specific scenarios (and allows it in others). Whether or not Rouvy crossed those boundaries requires a bit more inspection, some of it from Rouvy’s perspective, and some of it at the protocol level.
And… One more thing (pun intended)… Apple will remove apps from their App Store that use undocumented proprietary protocols. I once had to provide a letter from a smart bike manufacturer saying it was OK to use their Bluetooth commands to get my app approved.