How to Connect a NordicTrack or ProForm Treadmill & Bike to Zwift
Out of the box, a NordicTrack or ProForm treadmill or bike is not compatible with the Zwift. It’s because Nordictrack and ProForm want you to use their machines with their own application (iFit). This way they can make more money from the monthly membership fee.
However, recently an app developer has managed to create an application to give the NordicTrack and ProForm Treadmills and bikes the possibility to connect to Zwift.
This application is called “QZ”, it transmits and controls your speed, resistance, and incline so when you are going uphill on the Zwift application, your Nordictrack and ProForm Treadmill/Bike can change inclination and speed levels automatically.
There are two different solutions for connecting ProForm and Nordictrack treadmills/bikes to the Zwift application via the QZ application.
One solution is for ProForm and Nordictrack machines that don’t have a built-in console or have one but it’s a basic non-touch console like this ProForm Carbon CX bike. Because they don’t have fancy touchscreens, they are designed to send workout stats via Bluetooth so you can use your iPad/tablet. Tip! If you like Zwift and Peloton applications (and you like to use a Nordictrack/ProForm machine), get yourself one of these without a touchscreen console.
Another solution is for Nordictrack and ProForm machines that have a built-in touchscreen console such as the Nordictrack S22i. The solution for these types of Nordictrack and ProForm bikes/treadmills varies because they don’t send workout stats via Bluetooth, they use a cable/wire to communicate the stats to the console. Tip! Don’t buy one of these machines from ProForm/Nordictrack if you like Zwift or Peloton classes. These are great choices for people who like the iFit application.
How to Connect a Nordictrack or ProFrom machine without a built-in touch console to Zwift?
First, I will walk you through how to connect a Nordictrack and ProForm treadmill or bike that doesn’t have a built-in touchscreen console. These machines often have a small dark basic console/screen but a nice tablet holder.
For this process, you will be using two devices. You can use a smartphone to install the “QZ Application” and a tablet/iPad to install the “Zwift Application”. If you prefer to use only one device (an iPad) for the QZ and the Zwift apps, you need to follow these instructions. But if you want to use two devices, go ahead and read the instruction below. Also, make sure to read the QZ user guide.
- Power on the machine
You need to plug in your bike to an outlet electricity source and pedal/run to wake up its Bluetooth.
- Connect the machine and the QZ app
Open the QZ application on your phone and connect the bike/treadmill to the app (it should connect automatically).
- Open Zwift on your tablet/iPad and log in
You should have a Zwift account and log in on your tablet/iPad to see the “Paired Devices” screen.
- Connect Zwift with the QZ
On the iPad/tablet open Zwift “Paired Devices” screen, and connect the “power source”, “cadence”, “speed”, “Heart Rate”, and “Controllable”.
If you have issues connecting, try these solutions:
- Make sure the Cycling Cadence Sensor “Peloton Compatibility” is off on the “QZ App Settings”.
- Make sure your device setting is set to visible for Bluetooth.
- Remove all the Bluetooth “paired devices” on your phone and tablet.
- In your Phone and Tablet Settings (not the App Settings), rename your devices to a “4-letter word” like “bike”.
- Those who use a PC to install the Zwift app might need a TP-Bluetooth Dongle to connect the Zwift with QZ.
This was how to connect a “Nordictrack and ProForm bike or treadmill that doesn’t have a built-in touchscreen console” to the Zwift application. If you have a Bluetooth or ANT+ heart rate strap, you can also connect it to the “QZ application” on your phone and then pair it to your Zwift app.
How to Connect a Nordictrack or ProFrom Machine with a built-in touch console to Zwift?
In this part of the article, I will explain step by step how to connect a Nordictrack or ProForm treadmill and bike that comes with a built-in touch console to the Zwift application.
In this particular solution, you will have to jailbreak your NordicTrack/ProForm machine console/screen to install the QZ Companion application.
Although the Nordictrack and ProForm might advise against jailbreaking the screen, legally you are allowed to do whatever you want with your machine. Plus, this jailbreaking method doesn’t damage your equipment and it can be reversed with a simple screen reset.
Basically, to make this work, you need the QZ Companion app on your machine’s console, the QZ application on your phone (or tablet/iPad, PC, Mac, or Android phone), and the Zwift application on your iPad (or PC, Mac, or another phone).
We will be installing three different applications on three different devices (the “QZ app“ on an iPhone, the “QZ Companion app” on the machine’s console, and the “Zwift app” on an iPad). But if you want to install the QZ app and the Zwift app on the same device (Mac, PC, or ios), you can. You will have to run the QZ in the background and the Zwift in the foreground.
Without further ado, here is how to connect a Nordictrack and ProForm treadmill or bike that has a touchscreen console/monitor to the Zwift application:
Step 1: Enable debugging mode and get your treadmills/bike IP
- Factory reset the treadmill/bike:
It is highly recommended that you factory reset your treadmill before continuing. In most cases, a reset is performed by pressing in and holding the pinhole-style reset button on in the left-side on the console while simultaneously turning on the treadmill with the power switch. I use a paper-clip to push the reset button in. The reset button must be released after 10 seconds of turning the treadmill/bike on. Unfortunately, the reset button and power switch are far apart and may require two people to coordinate the reset. After the 10-second reset, the console will display the reset and progress animation. The reset usually takes about 5-7 minutes on a bike/treadmill. When it is done, iFit will prompt you to log in and select your Wifi network.
- Enable Privileged mode:
When you see the main iFit dashboard screen, tap on an area of white that doesn’t activate anything (e.g. the top of the screen) 10 times, count 7 seconds, then tap on the same spot 10 more times. If done correctly, you will see the Privileged mode activation screen. Open the website https://getresponsecode.com and enter the first 6-digit code you see on your treadmill/bike screen and click Submit. The website will provide a response code which you will enter in the treadmill/bike console via the onscreen keyboard. If done correctly, a message at the bottom of the screen appears confirming privileged mode is enabled, and the Android desktop will appear.
- Enable USB debugging:
From the bike/treadmills Android desktop, swipe up from the bottom of the screen to open the installed apps screen. Select Settings> System> Advanced settings> and About tablet. Take note of the bike/treadmills IP address (e.g. 10.0.0.124), and also look for the Build number. Tap on the Build number 7 times. You will get a message at the bottom of the screen confirming Developer options is unlocked. Next, select the back button/arrow to return to the previous “Advanced settings” screen. Select Developer options and look for USB Debugging, and turn it on. Select Ok when the ‘Enable USB debugging’ prompt appears.
Step 2: Install the “QZ Companion Application” on your machine’s console
The QZ Companion Installation Method 1:
Over Wifi via an ADB script run from a Windows PC. Choose this method if you can successfully establish an ADB connection between the treadmill and Windows PC.
- Download the QZ Companion installation package from this GitHub repository and extract it to your Windows PC.
- Go into the extracted folder and run qz-companion.bat by either double-clicking it or running it from the command line.
- When prompted to enter the bike/treadmills IP address, enter the same IP as noted in previous Step 3 and hit enter.
- When the installation is completed, the script will reboot the treadmill. Once rebooted, proceed to log in to iFit.
At this point, QZ Companion is running in the background and is ready to transmit your workout data to the “QZ app” on your iPhone. If it reads all 0’s, try going to the treadmill’s Settings > Apps > QZ Companion app > Permissions, and enabling all permissions.
The QZ Companion Installation Method 2:
In this method, you will be installing the QZ Companion App via the treadmill built-in web browser. So, you won’t be using your PC to install the application.
From the bike/treadmills Android desktop, swipe up from the bottom of the screen to open the installed apps screen. Select Browser.
Enter the following short URL address – https://tinyurl.com/qz-companion. This link will download the latest QZ Companion APK to the browser download folder on your treadmill (APK is a file format).
Next, select the APK to start the installation. You will get a warning message stating your tablet is not allowed to install apps from unknown sources. Select “Settings” which will bring you to a screen where you can toggle on “allow from this source” and confirm “do you want to install this application?”. QZ Companion will proceed to install. You will get a confirmation screen when done.
When completed, you should reboot the bike/treadmill by cycling the power switch. Once rebooted, proceed to log in to iFit. At this point, the QZ Companion is running in the background and is ready to transmit treadmill/bike data to the QZ app on your iPhone.
Step 3: Install and Configure the QZ App
Go ahead and install the “QZ application” on your iPhone (or whatever device you prefer) and configure the QZ app so that it is ready to communicate with the QZ Companion app.
- Open the QZ app and go to its Settings
- Expand Treadmill Options (if you have a bike expand the bike options)
- Expand the Proform/NordicTrack Options
- If you have a treadmill, look for the model and enter the treadmills IP address, and hit OK
- If you have a Proform/Nordictrack bike, look for “ProForm bike” and enter your bike’s IP address under “TDF Companion IP” and hit OK
- Exit and close the QZ app on your phone to save the change
- Reopen the QZ app and expand Experimental Features
- Toggle on the “Enable Virtual Device”, “Virtual Device Bluetooth”, and “Wahoo Direct Connect”.
- Exit and relaunch QZ again to save the last changes.
If done correctly, QZ will display live data tiles to indicate it is communicating directly with QZ Companion on the treadmill/bike.
Step 4: Start an iFit Manual
Now we are back to your Nordictrack/ProFrom bike/treadmill screen. In this step you are going to start an iFit manual workout to confirm QZ Companion communication. Here is how to do it:
From the main iFit dashboard screen on your treadmill/bike, select Manual workout.
QZ Companion should immediately begin to transmit live workout data to the QZ app on your phone.
Keep in mind that you don’t need a paid iFit subscription to access the iFit Manual mode. The iFit does ask if you want to subscribe, you can decline it.
Step 5: Install and Configure the Zwift
As I mentioned earlier, to install the Zwift application, I used an iPad but you can use a tablet, phone, Mac, or a PC.
You can install both, the QZ and the Zwift applications on one device but it should be a Windows PC or an iOS device (not an Android device).
- Launch and log into your Zwift account on your iPad to use the QZ Bluetooth device.
- If you have a treadmill, at the “Zwift Paired Devices” screen, click Run> Run Speed> Search> and select Wahoo Tread (this is QZ).
- If you have a bike, on the “Zwift Paired Devices” screen, under Ride> Search> select Wahoo Kicker (this is QZ) and click pair “power source”, “cadence”, “speed”, “Heart Rate”, and “Controllable”.
To see your heart rate on the Zwift application, you have two options; You can pair your heart rate belt (or Apple Watch) to the QZ app on your phone. Or you can directly connect your heart rate belt to the Zwift application. It’s best to connect your heart rate monitor to the QZ on your phone and then sync on Zwift just like speed, cadence, etc.
So, to be clear, for this example we have the “QZ Companion app” on the machine’s console, the “QZ app” on the iPhone, and the “Zwift app” on the iPad. Basically, three applications are installed on three devices.
The QZ Companion installation package (qz-companion.zip) contains:
- QZCompanionNordictrackTreadmill.apk (QZ Companion Android app).
- QZ-Companion.bat (batch script used to install QZ Companion via ADB).
- QZ-Companion-simple.bat (alternative batch script to use if you wish to run the commands separately for debugging and troubleshooting purposes).
- Uninstall-QZ-Companion.bat (batch script used to uninstall/remove QZ Companion).
- All other files (adb.exe, AdbWinApi.dll, AdbWinUsbApi.dll, tee.exe) are required for the scripts. Do not delete them.
The primary reason QZ Companion installation will likely fail is that your Windows PC can’t communicate with the treadmill IP address over your Wifi network. Ensure both devices are connected to the same Wifi network. The installation script will first attempt to ping your treadmill/bike IP address. If this ping fails, you will need to troubleshoot the connection.
When executed, the QZ-Companion.bat installation script will generate a log file named QZ-Companion-log.txt. If communication fails or the app fails to install on your treadmill, refer to this log to troubleshoot specific errors. You may be required to share this error log with Roberto to obtain technical support.
FAQs Related to Nordictrack and ProFom Compatibility with the Zwift
What if Your Nordictrack or ProFrom machine is not yet added to the QZ app?
When connecting a Nordictrack or ProForm treadmill and bike to Zwift, you should first make sure it is added to the QZ compatibility list. Unfortunately, not all ProForm and Nordictrack machines have been added to the QZ application yet.
I created a list of bikes and treadmills that have been tested with the QZ application and can connect to the Zwift application. I will leave this list down below.
If your machine is not listed, don’t worry, you can send your machine’s “NRF-Connect” to the QZ app developer, at “email@example.com”. His name is Roberto Viola, he is a really nice person and extremely helpful.
As soon as he receives your request (and has the time), he will try to add your Nordictrack and ProForm bike or/and treadmill to the QZ app and you should be good to go.
Can I install the Zwift application on my Nordictrack bike/treadmill Screen?
Yes, you can download and install the Zwift app on your machine’s touchscreen console. However, there is one issue. The console that comes with the Nordictrack and Preform equipment doesn’t meet the graphic and storage capacity of Zwift so the picture quality is not great and it keeps freezing. So, it’s not really enjoyable.
Knowing the picture quality issue, if you still want to install the Zwift application on the NordicTrack or ProForm treadmill or exercise bike’s console, you should jailbreak the screen of your machine and install the Zwift APK on the console.
What is the QZ Companion Application?
It’s an application that works on iFit-enabled bike treadmills such as the Nordictrack and ProForm equipment. If your machine has a built-in touchscreen tablet like the Nordictrack S15i and S22i, you will need the QZ Companion app to get to connect with the Zwift.
However, if your Nordictrack or ProFrom equipment doesn’t have a built-in touchscreen console and it only has a black and white or LED screen, you don’t need the QZ Companion app.
The job of the QZ Companion application is to transmit your workout data from the machine’s touchscreen console to the QZ application on your phone (or iPad/tablet).
Once installed on your ProForm or Nordictrack machine, the QZ Companion app always runs in the background on your bike or treadmill, using minimal memory and CPU.
The QZ Companion application always automatically starts when the treadmill/bike is powered on. There is no need to enter the treadmill’s “privileged mode” after initial installation.
QZ Companion is not affected by Android or iFit updates. So, it continues to auto-start and runs in the background after iFit and Android updates.
You can use flexible equipment startup sequences – e.g. start your treadmill first, HRM monitor second, QZ app third, Zwift last, or change the sequence. QZ will always communicate with QZ Companion regardless of your startup sequence.
What is the QZ Application?
The QZ application is a cross-platform app (iOS, Android, Raspberry, Windows, and Mac) that acts as a native Bluetooth protocol bridge for many exercise machines (spin bikes, treadmills, bike trainers, rowers, and ellipticals) to FTMS (FiTness Machine Service protocol) Bluetooth for direct connection to Zwift, Peloton, and other compatible apps.
In other words, the QZ application is the bridge that receives your workout stats from your machine and makes it readable for the Zwift, Peloton, Kinomap, Strava, and a few other exercise and indoor cycling applications.
It works perfectly without the QZ companion application on the Nordictrack and ProForm bikes that don’t have a touchscreen console as long as your bike has a Bluetooth connection.
But if you have a Nordictrack or Proform stationary bike or treadmill that has a touchscreen console, you have to use the QZ Companion application to make the QZ app work for you.
Wahoo Direct Connect (DIRCON) protocol was recently added to QZ in order to bypass Bluetooth connection drop-outs that are common during a bike or running race (Wifi and Ethernet is considerably more stable than Bluetooth).
Using the QZ which stats sync with the Zwift?
For Nordictrack and ProForm treadmills, the QZ application can transmit the speed and incline/decline directly to the Zwift application. Zwift can then automatically set your speed and incline to match the game. The QZ app also works with the Apple Watch and Bluetooth/ANT+ heart rate monitor.
For Nordictrack and ProForm exercise bikes, the QZ application can transmit, speed, cadence, watt, and resistance to the Zwift application. Although the QZ can set auto-resistance for some ProForm bikes like the TDF models, unfortunately, it is still not able to do auto-resistance for the Nordictrack bikes.
Can I use my Nordictrack bike with the Peloton app?
Yes, you can connect your Nordictrack bike with the Peloton application through the QZ app and the QZ Companion app on your bike’s screen.
Follow the exact same method that I explained above to install the Companion application on your Nordictrack exercise bike’s screen and then use an iPad to install the Peloton and an iPhone (or Android) to install the QZ application.
Can I connect my ProForm bike to the Peloton application?
Yes, if you have a ProForm bike like the TDF 1, TDF 2, TDF 4, TDF 5, or a ProForm CX (CBC), you can connect them to the Zwift and Peloton application using the QZ app without even needing the QZ Companion app because these bikes use Bluetooth protocol for data transmission (not just the WiFi).
But if you have a ProForm Studio Pro 22, Studio Bike Pro 10, or a similar model that has a built-in touchscreen console with Bluetooth only for HRM and wireless headphones, you need to follow my instruction above to install the QZ Companion app on your bike’s screen. Then you can use an iPad for the Peloton app and an iPhone for the QZ app.
How can I connect a ProForm TDF bike with Zwift?
Out of the box the ProForm TDF bikes don’t connect with the Zwift or any other application except for the iFit. However, if you use the QZ application on your device (phone or tablet), you can easily connect your TDF bike to Zwift.
Basically, you get the IP address of your bike from its console and enter this IP into the QZ application on your phone. The QZ will initiate a connection with your bike and will then make them readable/transmittable for the Zwift application on your iPad (or whatever device you decide to install the Zwift app on).
How to get the IP address of your ProForm Bikes:
Here is how you can get the IP address of your ProForm TDF bikes: Open the iFit app, then click on the “setting icon”, click on the “Network setting”, and finally click on your “Wifi network”. You should now see the IP address of your bike on the screen. This process might also work for some Nordictrack bikes.
Special thanks to Roberto Viola, Al Udell, Adam Burmister, and Brad Stoney who helped put this guide together. Thank you, gentlemen!