Thanks for checking out VirZOOM! This online manual is meant as a supplement to the printed manual shipped with our VirZOOM bike controller, which you can find online here. Please also feel free to consult our Frequently Asked Questions page and our Forums for answers to common questions.
Please click here for our End User License Agreement .
This page will walk you through the process of setting up your VirZOOM bike to play VirZOOM Arcade games. Let's get started!
Remove your VirZOOM controller from its box and follow the instructions in the printed manual that came with your bike. VirZOOM requires 2 AA batteries.
Please make special note: The left pedal must be screwed on counterclockwise. Attempting to screw it in clockwise can damage it.
The VirZOOM bike communicates with a PC or PlayStation 4 console wirelessly using a Bluetooth. The battery compartment has extra space to store a USB dongle that must be plugged into the PC/PS4 to use the bike. Plug it in, and make sure the bike is switched on.
VirZOOM games can be downloaded as a collection called VirZOOM Arcade from Steam , an online game service. If you don't already have Steam set up, be sure to do the following:
Before you can play VirZOOM games, you need to create a VirZOOM account. You may have already read in the manual that you need a code for this.
When the game starts up the first time, it will present you with a registration code that you enter at virzoom.com/register to create an account. You'll then need to check your email to verify your account.
Trouble? If your PC doesn't respond to you using the bike, you may need to update drivers to recognize the Bluetooth USB dongle.
Once you've created your VirZOOM account, you should be able to play. Read the rest of this manual for additional tips on setup and features.
Note that when you first start, you only have access to one game at a time. This is on purpose: Moving around in VR can be disorienting without proper training first, so complete these tutorials to unlock more games!
PLEASE READ THIS LICENSE AGREEMENT BEFORE CLICKING BUTTONS THAT PROVIDE ACCESS TO THE SOFTWARE ("HOLD L AND R"). CLICKING THESE BUTTONS INDICATES YOUR ACCEPTANCE OF THE LICENSE TERMS. IF YOU DO NOT AGREE WITH THE TERMS, YOU SHOULD NOT CLICK THESE BUTTONS.
License Grant; License Restrictions. Licensor ("Licensor") provides the computer software program, exercise bike controller, and user manual(s) or help files contained therein, and any modifications, updates, revisions, or enhancements thereto received by you from Licensor (the "Software"), and licenses its use solely pursuant to the terms stated below:
a. You are granted a nontransferable license to use the Software under the terms stated in this Agreement for personal use in your business or profession. Title and ownership of the Software and of the copyright in the Software remains with Licensor;
b. The Software is only licensed for use with the VirZOOM exercise bike controller and not with any other game controller or exercise equipment;
c. You may not make copies, translations, or modifications of or to the Software. You may not alter, obscure, or remove the copyright notice on any copy of the Software;
d. You may not assign, sell, distribute, lease, rent, sublicense, or transfer the Software or this license or disclose the Software to any other person. You may not reverse-engineer, disassemble, or decompile the Software or otherwise attempt to discover the source code or structural framework of the Software;
e. You assume full responsibility for personal injury for yourself and (if applicable) family members resulting from use of the Software and hardware, including the VirZOOM exercise bike controller, and further release and discharge VirZOOM, Inc. for injury, loss or damage arising out of your or your family's use of VirZOOM, Inc. Products, whether caused by the fault of yourself, your family, VirZOOM, Inc. or other third parties; and
f. Licensor may terminate this Agreement and the license granted hereunder at any time. This Agreement and the license granted hereunder automatically terminates if you fail to comply with any provision of this Agreement. You agree upon termination to destroy the Software, together with all copies, modifications, and merged portions in any form, including any copy in your computer memory or on a hard disk.
Limited Warranty. Licensor provides the Software at no additional charge, and as such, the Software is provided "AS IS" and with all faults. NO WARRANTIES ARE EXPRESSED FOR SOFTWARE AND NONE SHALL BE IMPLIED. LICENSOR SPECIFICALLY EXCLUDES ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT. LICENSOR DOES NOT WARRANT THAT USE OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE.
Limitations of Liability. IN NO EVENT WILL LICENSOR'S LIABILITY FOR ACTUAL DIRECT DAMAGES ARISING OUT OF THIS AGREEMENT OR THE USE OR PERFORMANCE OF THE SOFTWARE EXCEED $500. IN NO EVENT WILL LICENSOR BE LIABLE FOR ANY LOST PROFITS, SALES, BUSINESS, DATA, COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES OR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES RESULTING FROM THE USE OF THE SOFTWARE OR OTHERWISE ARISING FROM THIS AGREEMENT, AND NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF ANY LIMITED REMEDY. The parties agree that the above limits represent a reasonable allocation of risk.
Governing Law; Exclusive Jurisdiction. This Agreement is governed by the laws of Massachusetts. You agree that the federal or state courts sitting in Massachusetts shall be the exclusive courts of jurisdiction and venue for any litigation, special proceeding or other proceeding as between the parties that may be brought, or arise out of, or in connection with, or by reason of this Agreement. The United Nations Convention on Contracts for the International Sale of Goods is expressly disclaimed.
Nondisclosure. You shall not disclose or use any Confidential Information except as expressly permitted under this Agreement. You shall hold all Confidential Information in confidence during the term of this Agreement and for a period of three (3) years after the termination of this Agreement. You shall take all reasonable steps to ensure that Confidential Information is not disclosed or distributed to third parties who are not subject in writing to the confidentiality obligations of this Section. "Confidential Information" shall mean this Agreement, all Software, data, drawings, benchmark tests, specifications, trade secrets, object code and source code of the Software, and any other proprietary information supplied to you by Licensor, including all items defined as "confidential information" by Licensor.
Assignment. You may not assign any of your rights or delegate any of your obligations under this Agreement without the prior written consent of Licensor. Subject to the foregoing, this Agreement will bind and inure to the benefit of the parties, their respective successors and permitted assigns.
Notice. All notices required to be sent hereunder shall be in writing and shall be deemed to have been given when mailed by first class mail to the address listed below.
Severability. If any provision of this Agreement is held to be invalid or unenforceable, the remaining provisions of this Agreement will remain in full force.
Waiver. The waiver by either party of a breach of any provision of this Agreement or the failure by either party to exercise any right hereunder shall not operate or be construed as a waiver of any subsequent breach of that right or as a waiver of any other right.
Export Administration. You agree to comply fully with all relevant export laws and regulations of the United States ("Export Laws") to assure that neither the Software nor any direct product thereof is (1) exported, directly or indirectly, in violation of Export Laws; or (2) are used for any purposes prohibited by the Export Laws, including, without limitation, nuclear, chemical, or biological weapons proliferation.
Entire Agreement. This Agreement shall constitute the complete agreement between the parties and supersede all prior or contemporaneous agreements or representations, written or oral, concerning the subject matter of this Agreement. This Agreement may not be modified or amended except in writing signed by a duly authorized representative of each party; no other act, document, usage or custom shall be deemed to amend or modify this Agreement.
Survival. The provisions of Sections 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 and 12 shall survive the termination of this Agreement.
Copyright C 2016 VirZOOM. 56 JFK St, Cambridge, MA 02138. All rights reserved.
This documentation and the corresponding software are the property of Licensor and are licensed to the user under the terms of the Software License Agreement. Unauthorized use or copying of the software, documentation, or any other associated materials is a violation of state and federal laws. These materials must be returned to Licensor if so demanded.
This privacy policy discloses the privacy practices for vizoom.com. This privacy policy applies solely to information collected by this website. It will notify you of the following:
We are the sole owners of the information collected on this site. We only have access to/collect information that you voluntarily give us via email or other direct contact from you. We will not sell or rent this information to anyone.
We will use your information to respond to you, regarding the reason you contacted us. We will not share your information with any third party outside of our organization, other than as necessary to fulfill your request, e.g. to ship an order.
Unless you ask us not to, we may contact you via email in the future to tell you about specials, new products or services, or changes to this privacy policy.
You may opt out of any future contacts from us at any time. You can do the following at any time by contacting us via the email address or phone number given on our website:
You may also update your contact information at any time at my.virzoom.com .
We take precautions to protect your information. When you submit sensitive information via the website, your information is protected both online and offline.
Wherever we collect sensitive information (such as credit card data), that information is encrypted and transmitted to us in a secure way. You can verify this by looking for a closed lock icon at the bottom of your web browser, or looking for "https" at the beginning of the address of the web page.
While we use encryption to protect sensitive information transmitted online, we also protect your information offline. Only employees who need the information to perform a specific job (for example, billing or customer service) are granted access to personally identifiable information. The computers/servers in which we store personally identifiable information are kept in a secure environment.
We request information from you on our order form. To buy from us, you must provide contact information (like name and shipping address) and financial information (like credit card number, expiration date). This information is used for billing purposes and to fill your orders. If we have trouble processing an order, we'll use this information to contact you.
In order to use VirZOOM, a user must first complete the registration form. During registration a user is required to give certain information (such as name and email address). This information is used to identify your account on our server so that you can continue to use our services on any number of different VirZOOM bikes. We may also use this email address to contact you about new features and updates for VirZOOM.
At your option, you may also provide demographic or physical information about yourself (such as gender and weight). This information is not required to use VirZOOM, but certain features (such as estimating Calories burned) will only function properly if this information is given. Additional demographic data may be used for internal research purposes, but will not be shared outside VirZOOM except in aggregate, without personally identifying information connected to specific users.
To provide some specific services, such as shipping orders, processing credit card information for purchases made through our website, and adding users to our email list, we use services provided by additional parties. When the user places an order or submits an email address, we will share names, or other contact information that is necessary for the third party to provide these services. These parties are not allowed to use personally identifiable information except for the purpose of providing these services. Our third party associates that handle credit card data do not retain, share, store or use personally identifiable information for any secondary purposes beyond filling your order.
VirZOOM offers the option to share data between our software and additional third-party software, including Strava and Pandora. Using this functionality with VirZOOM is entirely optional. Usernames and passwords for other applications are used solely to access their functionality or export your performance data from within VirZOOM; we do not share your data from other services with any other parties besides the owners of those services.
We use "cookies" on this site. A cookie is a piece of data stored on a site visitor's hard drive to help us improve your access to our site and identify repeat visitors to our site. For instance, when we use a cookie to identify you, you would not have to log in a password more than once, thereby saving time while on our site. Cookies can also enable us to track and target the interests of our users to enhance the experience on our site. Your browser can be set to reject cookies to avoid any such data being stored by us.
This website contains links to other sites. Please be aware that we are not responsible for the content or privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of any other site that collects personally identifiable information.
From time-to-time our site requests information via surveys or contests. Participation in these surveys or contests is completely voluntary and you may choose whether or not to participate and therefore disclose this information. Information requested may include contact information (such as name and shipping address), and demographic information (such as zip code, age level). Contact information will be used to notify the winners and award prizes. Survey information will be used for purposes of monitoring or improving the use and satisfaction of this site.
Our Privacy Policy may change from time to time and all updates will be posted on this page.
If you feel that we are not abiding by this privacy policy, you should contact us immediately via email at support@virzoom.com .
The VirZOOM bike controller is a specially-built stationary exercise bike designed for use with VR and games. Buttons on the handlebars allow you to interact with game worlds, and your pedaling speed on the bike controls your movement speed in games. Plus, VirZOOM games also record how strong you've set your bike's resistance, which can affect gameplay as well, such as offering a scoring modifier for a tougher workout in the cycling game Le Tour.
The VirZOOM bike controller is a specially-built stationary exercise bike designed for use with VR and games. Buttons on the handlebars allow you to interact with game worlds, and your pedaling speed on the bike controls your movement speed in games. Plus, VirZOOM games also record how strong you've set your bike's resistance, which can affect gameplay as well, such as offering a scoring modifier for a tougher workout in the cycling game Le Tour.
VirZOOM comes in a 20" x 20" x 20" box. Assemble according to the instructions in the box, which are also available here online in PDF form. Requires 2 AA batteries.
Please make special note: The left pedal must be screwed on counterclockwise. Attempting to screw it in clockwise can damage it.
Height is adjustable from 4'4" to 6'2" comfortably. Just unscrew the seat knob, adjust the seat height (making sure not to go above the safety line), and rescrew the seat knob, tightening it by hand.
Note: The weight limit for VirZOOM is 240 lb. Usage beyond this limit is not covered under warranty.
You can manually adjust the pedaling resistance of the bike (how hard it is to pedal) by turning the dial in front of you while seated on the bike. Resistance ranges from 1 (lowest difficulty) to 8 (highest difficulty).
VirZOOM games can sense your resistance settings, but won't change your resistance for you.
The VirZOOM bike communicates with a PC or PlayStation 4 console wirelessly using a Bluetooth. The battery compartment has extra space to store a USB dongle that must be plugged into the PC/PS4 to use the bike.
If you're trying to run VirZOOM Arcade but it doesn't recognize your bike, and the green LED light on your bike is blinking, check out troubleshooting tips here .
VirZOOM offers a clip to secure the cord from your Oculus Rift, HTC Vive, or PlayStation VR. Using this helps prevent wires from getting caught on your pedals while in VR. To set up:
The power switch is just beneath the handlebars, above the resistance dial, directly in front of you when you are sitting on the bike. The bike must be ON (the side with the | symbol pressed down) in order to use VirZOOM. Turn the bike OFF (the side with the O symbol pressed down) after use to conserve battery life.
The green LED light will flash until the bike is connected to a VirZOOM game running on a PC/PS4.
The red LED light will show when your batteries are low and need replacing (after an estimated 3 months of regular play.
Sleep mode will start automatically after a few minutes of inactivity, preserving battery life and disconnecting the bike's wireless signal from the PC/PS4. To wake the bike back up and reconnect to the game, press any button on the handlebars, or flip the power switch off and on again.
VirZOOM Arcade is a collection of exercies games designed specially for use with the VirZOOM bike controller. It's currently available for download from Steam . (Oculus Home listing is pending, but Oculus Rift users can still download and play the game in Steam.)
After you assemble your bike and plug in the dongle, you should install VirZOOM Arcade. The first time you launch it (with the bike turned on and the dongle plugged in!), you'll get an access code that lets you set up your VirZOOM account and start pedaling!
VirZOOM Arcade is a collection of exercies games designed specially for use with the VirZOOM bike controller. It's currently available for download from Steam . (Oculus Home listing is pending, but Oculus Rift users can still download and play the game in Steam.)
After you assemble your bike and plug in the dongle, you should install VirZOOM Arcade. The first time you launch it (with the bike turned on and the dongle plugged in!), you'll get an access code that lets you set up your VirZOOM account and start pedaling!
VirZOOM Arcade is a collection of exercise games, free to download and play with your VirZOOM bike.
Download on PC: If you have the Oculus Rift or HTC Vive, install the Steam online game service, search in Steam for "VirZOOM," and click the button to install VirZOOM. You can also find VirZOOM Arcade on the web.
Download on PS4: Open the PlayStation Store and search for "VirZOOM," and click the button to install VirZOOM.
For more information, see our Downloads page.
To play games on VirZOOM, follow these steps:
The first time you launch VirZOOM, you will be prompted to create an online account. This account allows you to record your high scores and fitness statistics, viewable in-game and on my.virzoom.com . It also allows you personalize your Calorie burn rate, connect to the Strava fitness app and the Pandora music service, and create additional profiles for your friends and family.
When the game starts up the first time, it will present you with a registration code that you enter at virzoom.com/register to create an account. You'll then need to check your email to verify your account.
All your progress and settings moves with you if you login at different places with VirZOOM bikes, such as your friend's or your workplace.To login with another account, select Logout from the Options menu in VirZOOM Arcade.
You can edit your account and see your high scores and fitness statistics anytime at my.virzoom.com . Look for more online features as we add them!
Registration is not required to play VirZOOM, but playing without creating an account requires you to play offline, disabling the ability to track progress.
Each time you run VirZOOM, after your bike is powered on, and your VR headset is being tracked, you will be asked to recenter your VR headset.
Hold the L (left) and R (right) trigger buttons while you are seated on the bike and looking forward. This allows the VR system to detect your head position and the direction you're leaning, which are used for steering and menu navigation in the game. If you ever need to recenter during a game, press the left trigger 4 times in rapid succession. This will allow you to repeat that process on the fly (say, if you need to move your bike across the room without quitting the game).
The game then asks you to lean left and right, like the blue figure shows, to make sure you have full range of motion.
The first time you launch VirZOOM, the game will also ask you to calibrate your resistance setting from the Options menu. This is necessary to accurately interpret your bike's manual resistance setting.
After calibration you arrive at the Profile menu. Lean your body left and right to the turn menu to different Profiles, which you can setup at my.virzoom.com . The profile you pick determines your game progress and personalization settings.
The profile screen shows your progress toward a weekly calorie goal that you can customize on my.virzoom.com. It gets reset every Sunday midnight.
VirZOOM Arcade is a collection of games designed to be strung together into a workout. It currently has 5 workout modes:
Quickplay: Pick any one game to play! The ending depends on the game selected (e.g., after 5 laps of a car race, or 10 minutes on a tank, or losing all your fuel in a helicopter). Note that Quickplay is the only mode that supports live multiplayer.
Timed Workout: You pick how long you want to work out, and let the game random launch games for you until the time runs out.
Custom Workout: Pick the sequence of games you want to play.
Friend Challenges: Play game challenges scheduled by your friends on my.virzoom.com!
Hotseat: Take turns with friends playing on the same bike, and see your scores on an instant leaderboard.
Demo: Take a quick spin through four levels. Best for new players who want to see what VirZOOM is about!
Options: Pick your music station and volume (after setting up online music on my.virzoom.com), calibrate your bike tension resistance, or logout of the current profile
To select a game you first pick an avatar and then a level. Current avatars and their levels include:
Cowboy: Lasso bandits off horses and throw dust devils.
Kayak: Find ducks for grandmas to feed during the day, and at night lead fish to underwater gems
Cycle: Ride a bicycle to checkpoints, drafting other bikers to conserve energy
Racecar: Race AI, live players online, and the ghosts of your own best laps on different tracks.
Tank: Battle against AI tanks and live players online.
Pegasus: Search for gems, skim treetops for apples, and race through canyon gates, alone or with live players online.
Chopper: Shoot turrets, dodge missiles, and keep fueled up.
VirZOOM Arcade is ever expanding through automatic updates via Steam and PlayStation Store, and will include more avatars and levels on a regular basis for free.
These games are designed for exercise! That means you must pedal to go faster and lean to turn, dive, and climb. They encourage interval exercise by having sections where sprinting doesn't help and sections where it does.
The end of each game shows your distance traveled, average heart rate, and estimated Calories burned. Track these statistics and personalize your data for better estimates at my.virzoom.com.
VirZOOM Arcade games has four different ways to compete online: head-to-head, leaderboards, challenges, and hotseat.
Live "head-to-head" multiplayer is supported in Live Race (Racecar), Winterstan (Tank), Gem Hunt/Gate Race/Keep Flying (Pegasus), and Lotus Pond (Kayak). Players join online matches in progress automatically when they launch the game in groups of 10 players. Some games see players come and go at different times; in Live Race, the "leader" is the first person to join a session, and is in charge of deciding when to restart the game in order to line everybody up at the starting line for a new race.
Weekly Leaderboards rank your profile's score in each game against everyone else who has played that week. Get to the Leaderboard menu from each Level screen or game Results screen, or on my.virzoom.com.
Friend Challenges are custom leaderboards for a time period and game you pick. Use them to organize head-to-head matches or asynchronous competition. See your friend's ghosts alongside as you try to beat their scores.
Hotseat Workout is turn-based multiplayer for friends in your home or workplace. Pick a game to play with everyone in the room, see their previous ghosts and scores on the Results screen. Every game is shorter and faster in Hotseat mode to keep up the action and fun!
Every game you play earns coins for your avatar, displayed on the avatar menu. Use these coins to rent Avatar upgrades, which currently include
The Speed Racer (Racecar) has a higher top speed, but requires you to pedal harder for it!
Homing Missiles (Chopper) allow you to paint rather than aim at turrets.
The Golden Pegasus (Pegasus) increases your flight ceiling and stamina.
As with avatars and levels, you can expect more upgrades to appear on a regular basis through automatic updates. Upgrade rentals cost coins for every game play, so use them wisely! You can also purchase upgrades for permanent use on Steam (tbd) and PlayStation Network with credits you can buy.
Goals are objectives that require multiple games and play session. Keep track of them from your profile screen, as they progress from 0-100%. Some of these may take a day, some a month, some even a year!
A subset of goals are reflected as Trophies on PlayStation Network and Achievements on Steam.
VirZOOM Arcade supports SteamVR's externalcamera.cfg for you to create mixed reality videos like this
Since the Vive hand controllers aren't used for any other purpose, you only need one Vive controller plugged in to become the "virtual camera".
My VirZOOM ( www.myvirzoom.com ) is a website that allows you to manage your VirZOOM accounts and settings, check up on your progress with workouts and games, and view global leaderboards to see how you rank among players at large. All account data is stored online, so you can log in using any VirZOOM bike and make whatever biking you do is recorded.
My VZ works great on both desktop and mobile phones, and it's easy to install as an icon on your home screen on iOS and Android.
My VirZOOM ( www.myvirzoom.com ) is a website that allows you to manage your VirZOOM accounts and settings, check up on your progress with workouts and games, and view global leaderboards to see how you rank among players at large. All account data is stored online, so you can log in using any VirZOOM bike and make whatever biking you do is recorded.
My VZ works great on both desktop and mobile phones, and it's easy to install as an icon on your home screen on iOS and Android.
Whenever you use VirZOOM Arcade, you sign into an account so the game knows which user is biking and can track their performance. Registering for My VirZOOM creates one account for you automatically. (And if you're the only one using the bike, you don't ever need to create another one!)
Every account has a unique name (which appears over players' avatars in multiplayer games), friends list, Pandora and Strava hookup, and leaderboard rankings. You can also enter a Bio on your account page to describe your available times and favorite VirZOOM games, which will show up in search results for anybody looking to add friends.
You can create additional accounts using My VirZOOM in case multiple people in your household want to track their VirZOOM progress separately. Every account requires email verification, but you may use the same email address to set up any number of accounts.
Please note that age, weight, and gender information requested for accounts is only used to provide better estimates for how many Calories you burn with VirZOOM. You don't need to enter anything in these fields if you prefer not to share this information.
The Home page shows your (and your friends') activity log, which includes your game scores, achievements, and challenge and leaderboard ranks. Your friends' activity messages also appear in the game if they are playing at the same time. Also see graphs of when people have been playing VirZOOM, to find the best time for head-to-head matches.
You can add and accept VirZOOM Friends to see their activity log, filter your leaderboards to them, and create online challenges.
To add a friend, go to virzoom.com/friends . Under "Search for Users," type their account name or email address. You can also search for keywords, like "weeknights" or "Tanks," to find players with similar availability and favorite games. Hit Go! and then tap the Friend button for any users in the search results you want to send a friend request to. They can accept the friend request on My VirZOOM.
The Challenge page allows you to challenge friends to timed matches on any game level. When challenge members play a game, it gets recorded on a local challenge leaderboard they can all see, and results go on their activity log. Choose a game level, time period, "best" or "cumulative" score, and which friends to play.
Challenges are also great for head-to-head events, in games like Racecar Live and Tank and Pegasus Gem Hunt, because members will only see other challenge members during the event.
VirZOOM Leaderboards display the top performers for distance biked and coins earned in each game (for each level of each avatar) over the past week. Search for yourself or for friends to see current standings!
You can view Leaderboards anytime at virzoom.com/leaderboards , though they may take a short while to update after you finish a game.
My VirZOOM lets you connect all your profiles to a single Pandora account to listen to while playing on PC. In the Options menu of VirZOOM Arcade, you can cycle between your Pandora radio stations and choose which one will play while you work out.
To link your VirZOOM account to a Pandora account, go to virzoom.com/account and follow the instructions to log into Pandora and install the Piano Bar app.
Strava and Fitbit are social networking services and apps for athletes. Each VirZOOM account is capable of connecting to its own Strava and Fitbit account. Whenever you work out on VirZOOM, in addition to tracking your results here in My VirZOOM, a workout will also be posted to your Strava and Fitbit account, noting the distance and time you biked.
The VirZoom Gamepad Emulator, or VZGE, is an application that allows you to use the VirZoom Bike Controller as a normal joystick. The application uses the buttons on the bike, the pedal speed, as well as the Oculus or Vive's position tracking as input into games, disguised as normal joystick input.
The VirZoom Gamepad Emulator, or VZGE, is an application that allows you to use the VirZoom Bike Controller as a normal joystick. The application uses the buttons on the bike, the pedal speed, as well as the Oculus or Vive's position tracking as input into games, disguised as normal joystick input.
This application is in its early stages and therefore will probably go through a number of changes based on user feedback and the addition of features.
Go to github and click on the "Clone or Download" button, and then choose "Download Zip." After downloading this file, unzip the folder wherever you want the emulator to run from.
Now, you have to run VJoySetup.exe. (You'll find it in the unzipped folder) This installs a number of "virtual" joysticks on your system that the emulator uses. Now, simply run VZGamepadEmulator.exe You will see the window pop up with the VirZoom logo. From the menu, you can pick what type of VR headset you are using. Choose OpenVR if you have a Vive, Oculus for Oculus, or None if you just want to use the bike without headset data. Additionally, to reset the head tracking, you hold both triggers for 1 second. Do this when you start, or when you feel like the positional head tracking is not working correctly.
Some PC games only support the Xbox 360/Xbox One controllers. This means we need to take an extra step for VZGE. First, you have to download x360ce here:
x360ce and get the 64 bit version.
This will download a zip file with x360ce_x64.exe inside it. Now, whenever you want to play a game that supports only Xbox controllers with the bike, you have to do the following:
This will have save xInput1_3.dll in the same folder. Unfortunately, we're not done. Because of multiple versions of XInput, we need to copy this dll 3 times and rename it xinput1_1.dll, xinput1_3.dll, and xinput1_4.dll
We should now be done. Close the x360ce application. VZGE should now appear as an Xbox controller to the PC game in that folder.
But how do you know if a game requires x360ce? It's a pretty good guess if you google the control scheme of a game, and it only shows Xbox controller diagrams. On the other hand, most Unity games use Raw Input, so they don't require x360ce.
VZGE has two modes, Emulator and Developer. Emulator mode allows the player to load .ini files created specifically for different games, and play the games. Developer mode allows the user to create configurations to use the bike with different games. If you just want to use configurations created by other people and play games, Emulator mode is all you'll ever need.
How the output of the bike and HMD is mapped to the gamepad is called a configuration. These are stored in ini files. These ini files can be loaded and saved through VZGE. It will be common for most games to have their own configuration file.
This mode allows the user to create a configuration or a "mapping" for the bike to play a certain game. For example, let's say the player wants to use the speed coming off the bike to make the character in game move forward. VZGE could be set to map the "speed" parameter coming off of the bike to the "Y Axis" of the controller. In other words, if you pedal forward, the game will think you're pressing up on the left analog stick.
The bike has a lot of outputs that can be used. 8 Buttons, 2 Triggers, and your pedalling speed. Additionally, VZGE can map output from your HMD (head mounted display) such as the rotation and relative position of your head. A good example would be, if you want your player to move left or right when you lean, you can use the "lean" output and map it to the "X Axis" so whatever way you lean will push the left analog stick left or right.
Now for the details:
Column 1: Name of output from bike and HMD
Column 2: What that output is mapped to
Column 3: If what is in column 2 is a button or a key, specify which one
Column 4: Multiplier on output from Column 1.
Column 5: Added to output from Column 1.
Example:
Let's say that as we said before, you want to control the left analog stick with the speed of the bike. First, find "speed" in column 1. (It's about one half of the way down.) Now, in column 2, select AxisY. That's it! Try it out in the game. Oh no, the first thing you notice is that the person is going the wrong way because a positive value for speed maps to moving the left analog stick down and not up. You can fix this by setting a -1.0 in the "Mult" column, meaning the speed is multiplied by negative 1. Now, if you give this a try, you'll see that a positive speed maps to pushing the left analog stick up. You can experiment with the mult value if you want to pedal faster or slower to have the same effect on the stick.
Some interesting outputs:
Raw Speed - the speed coming directly from the pedaling of the bike. It's a bit "noisy" due to how it is calculated, but reacts very quickly to pedalling speed changes
Speed - the speed of the bike after some smoothing, so it's not noisy, but takes a bit longe to react to changes
Head Yaw - looking left and right
Head Pitch - looking up and down
Lean Speed - how quickly you are leaning left and right.
Forward Stick - the maximum of pedalling acceleration and speed. This can be useful when you want quick reaction to changes in pedalling and then be able to keep that value. For example, taking off from a stop in a racing game, but then continuing to keep the accelerator down.
Steering - This is a special control that takes leaning and head rotation into account and is supposed to be mapped to the X Axis of an analog stick. Basically, the idea is that when you aren't leaning, rotating your head doesn't matter. But, as you lean more, the rotation of your head as well as the leaning takes into account the output value. This was tested with Project Cars for a good way to control the steering of the car.
Towards the bottom of the window, there is a drop down list with some values and a description. These are a mix of variables used in the emulator. Some are used by the "steering" output, some by the "forward stick" output, and others are just general settings.
The "Min Speed Sound Shutoff" variable is interesting. When not 0, if the speed of the bike falls below this value, the system's sound is shut off. This can be used while watching movies, or anything else to motivate you to keep biking or lose audio!
Once you have set up a configuration that you are happy with, you can save it out under File/Save or File/SaveAs. Now, this configuration can be loaded up in both Emulator and Developer modes.
Developing a configuration for a game can get complex sometimes. It's possible to map outputs in VZGE, then if the game uses x360ce, inputs can also be mapped there. Finally, it's possible to map inputs in the games themselves. In fact, in Project Cars, it's possible to configure a generic joystick without using x360ce, but every single button has to be mapped inside the game, so it's impossible for us to send our current configuration without also explaining how to map all the buttons in the game too.
As a general rule, I try to do all the mappings in VZGE and leave the x360ce and game mappings as default if possible. This allows me to swap ini files with other people who want to play games with the bike controller without having to do additional work on their own.
A few example configurations are included:
MovieWorkout.ini - The system audio cuts out if you pedal slower than 2 m/s. So, if you want to hear what's going on in that video, keep pedalling!
OmegaAgent.ini - For the game OmegaAgent. This game requires x360ce, so make sure you set it up in the proper folder with default settings.
TimeMachine.ini - For the game Time Machine VR. Also uses x360ce with default settings
There is currently an annoying problem where Oculus Home does not allow the gamepad emulator as well as a game to launch at the same time. So, for now, you'll have to play from the games from your Steam library. Oculus is aware of the issue, and said that it can be fixed in the future.
There are probably a lot of features that could make VZGE better for everyone. Definitely let us know what you think and any ideas you'd like for us to incorporate.
The VirZOOM SDK allows you to quickly create and adapt games that talk to the VirZOOM Bike Controller. It provides access to all the sensor data from the bike, including speed, pedal direction, buttons, resistance setting, and heartrate. It also includes a high-level player controller, using our patent-pending motion controls, that combine the bike sensors with your head movement to comfortably move through large VR worlds.
Besides this SDK documentation, also see our SDK discussion forum and our UNITE 2015 talk for more that you can do.
Usage of this SDK and the VirZOOM Bike Controller is governed by this License Agreement .
UNITY RELEASE NOTES
1.0
1.1
1.2
1.3
UNREAL RELEASE NOTES
1.0
The VirZOOM SDK allows you to quickly create and adapt games that talk to the VirZOOM Bike Controller. It provides access to all the sensor data from the bike, including speed, pedal direction, buttons, resistance setting, and heartrate. It also includes a high-level player controller, using our patent-pending motion controls, that combine the bike sensors with your head movement to comfortably move through large VR worlds.
Besides this SDK documentation, also see our SDK discussion forum and our UNITE 2015 talk for more that you can do.
Usage of this SDK and the VirZOOM Bike Controller is governed by this License Agreement .
UNITY RELEASE NOTES
1.0
1.1
1.2
1.3
UNREAL RELEASE NOTES
1.0
The Unity SDK requires
You can get the SDK from the Unity Asset Store for free.
It comes as a Unity package file that you import into your existing Unity project through the menu Assets->Import Package->Custom Package.
Then you need to set up your project to use our "input mappings" and settings for compatibility:
For Windows builds, in BuildSettings set architecture to x86_64
In PlayerSettings
Copy or merge Assets/StreamingAssets/InputManager.asset into your ProjectSettings/InputManager.asset
The test.unity scene in VZ/Scenes is as basic as it gets:
A plane with a simple texture and mesh collider
The VZPlayer.prefab (just the VZPlayer component, and rigidbody, and a sphere for an avatar)
The directional light and camera that Unity makes in any new scene
To try it in Unity,
Open test.unity and hit Play
Get on the bike, put on your VR headset, and hold the L and R triggers to calibrate
Pedal to move forward, lean to turn
Obviously you can do a lot more--all of our games are based on the same VZPlayer. Don't just limit yourself to tweaking its parameters, you can subclass VZPlayer to override and extend its functions, like to add lift force as a function of Controller.InputSpeed, which is how our Pegasus flies.
We can add such examples to this scene at everyone's request.
Make a new Unity scene
Drag VZ/Prefabs/core/VZPlayer.prefab into scene
Replace its Sphere child with your own avatar objects
Hit Play!
VZPlayer is our high-level player controller, that translates VZController into comfortable VR motion with our custom physics.
Here's a quick rundown on VZPlayer motion parameters:
Adding VZPlayer to a game object will cause your pedaling and leaning to move that game object. Your game object will also need a physics Collider and Rigidbody components to behave correctly. VZPlayer will also make the Camera a child of the game object to be moved around with it.
Script code can access your VZPlayer anywhere like VZPlayer.Instance.
VZController is our low-level controller and VR interface abstraction. It also supports gamepad and keyboard control for testing when you don't have a bike or HMD.
It's loaded dynamically by VZPlayer, where it can be accessed as VZPlayer.Controller.
It's properties are
All of the buttons have these properties/methods
Currently supported gamepads are Xbox, DS4, and Logitech Dual Action. Additional devices can be configured in Assets/VZ/Resources/VZControllerMap.xml
Gamepad
Keyboard
If you just want to access bike sensor data without VZPlayer motion controls or VZController device abstraction, you can call functions directly on the VZPlugincs.
First call VZPlugin.Init() to initialize the plugin.
Then call VZPlugin.ConnenctBike(ref BikeState) to try connecting to a VirZOOM bike. BikeState.Type will indicate if there is no bike (< 0) or some version of VirZOOM bike (>= 0).
If BikeState.Type > 0, then a VirZOOM wireless dongle has been detected, but BikeState.Connected will only be true when a VirZOOM bike has been turned on and connects to the dongle.
After BikeState.Connected is true you can query other bike state:
You can use Playmaker with the VZ SDK by importing the Playmaker package and building your project with the VZ_PLAYMAKER flag.
The following global Playmaker variables will then be created and updated, corresponding to our Controller and Player states:
We have a preliminary plugin for Unreal Engine 4 which wraps the VZPlugin dll with an Actor Blueprint that provides events on bike connection and state changes.
It is available on request.
VZPlugin has 2 classes that are made to be used with blueprint. VZBike is a static function library that exposes all the functions necessary to work with the VirZOOM bike. VZBikeInput is an actor that can be dropped in a scene and it will handle initialization and updating for you, as well as has events that fire when bike state changes.
VZBike functions
VZBikeInput events (hopefully self-explanatory)
Our Frequently Asked Questions page offers answers for the most common questions we get, but if you have a technical issue that requires more in-depth troubleshooting, there are a few ways to find a solution:
Click the other sections in the "Troubleshooting" section on the left to see if there are already instructions online for your issue.
Ask a question in the VirZOOM Forums . Our staff (and sometimes even other players!) may have the answer you need.
Issues with that aren't specific to the VirZOOM bike controller or VirZOOM Arcade are best addressed by those manufacturers' support services. Such issues include problems setting up an Oculus Rift, HTC Vive, or PSVR virtual reality system; your VR headset not being detected by your PC or PS4; and setting up Steam Voice Chat . Here are some links you might find helpful:
HTC Vive Support Steam Support Oculus Rift Support
Contact us at support@virzoom.com with your question. We strive to reply to every email in a timely fashion, though responses for unique questions not already answered in the above sources may be prioritized.
For the time being, we communicate exclusively online for technical support services; we regret that we cannot at present respond to phone calls requesting live, one-on-one technical support.
Our Frequently Asked Questions page offers answers for the most common questions we get, but if you have a technical issue that requires more in-depth troubleshooting, there are a few ways to find a solution:
Click the other sections in the "Troubleshooting" section on the left to see if there are already instructions online for your issue.
Ask a question in the VirZOOM Forums . Our staff (and sometimes even other players!) may have the answer you need.
Issues with that aren't specific to the VirZOOM bike controller or VirZOOM Arcade are best addressed by those manufacturers' support services. Such issues include problems setting up an Oculus Rift, HTC Vive, or PSVR virtual reality system; your VR headset not being detected by your PC or PS4; and setting up Steam Voice Chat . Here are some links you might find helpful:
HTC Vive Support Steam Support Oculus Rift Support
Contact us at support@virzoom.com with your question. We strive to reply to every email in a timely fashion, though responses for unique questions not already answered in the above sources may be prioritized.
For the time being, we communicate exclusively online for technical support services; we regret that we cannot at present respond to phone calls requesting live, one-on-one technical support.
If you try to launch VirZOOM but only get a white screen with an error message that prevents you from progressing, please try the following:
Are you using Steam Link with your TV? If so, quit and launch VirZOOM Arcade before you launch Steam Link with a controler. This should allow VirZOOM Arcade to launch without issue.
If this doesn't fix the issue, please send your output log. In your virzoom folder, open virzoom_Data, and find the file called output_log.txt. Please send an email to support@virzoom.com with that file attached along with a detailed description of the steps leading up to the error. We'll use this to diagnose the issue and fix it as soon as possible.
If the green LED light on your bike is blinking, it means your PC or PS4 can't detect your VirZOOM bike controller. Try these steps:
If that doesn't work, then read on.
You may be experiencing a problem with USB that affects some Windows PCs. This is a rare issue, as Windows 7, 8, and 10 should install the necessary drivers automatically, but here's how to tell whether you're experiencing it:
If you already have "Bluegiga Bluetooth Low Energy" listed, then the steps below won't correct your problem, so please drop by our Forums to investigate your issue further. If, however, you do not see the "Bluegiga Bluetooth" item listed, try the following:
Still stuck? Please drop by our Forums to discuss it further.
When you launch the VirZOOM game on your PC or console, it connects to the first active but unconnected VirZOOM bike it finds. This decision was made to be convenient for the average user: Dongles aren't preprogrammed for specific bikes, so it's cheap to get a replacement if a dongle is lost or broken.
If you want multiple VirZOOM bikes and games in a room (because you are lucky enough to have multiple computers and VR systems to play them, or have talked your office manage into the health benefits of VirZOOM at lunch), you need to be a bit more careful about powering them on to make sure that bikes connect to computers in the order you expect. To do that:
If a bike goes to sleep and reawakens, don't worry: It will always reconnect with the game it started out with. If a game starts out with a bike you didn't want it to, however, this means you'll need to restart that game.
If you see an error message that your headset is not detected or your head position is not tracked, make sure that there's a clear line of sight between your headset and your Oculus Sensor, PS VR sensor, or Vive lighthouse.
You may also experience this issue in a room with very bright sunlight shining directly on your headset, such as when playing under a skylight on a sunny day. In this case, you may want to try moving your VirZOOM bike or covering windows to shade from some of the light.
If your VirZOOM game quits without warning (what we call "crashing"), you may be having a problem with Steam or with Oculus Home. Try closing and reopening Oculus Home, or right-clicking on Steam in the taskbar and choosing "Exit Steam" (and not just "Close Window") and then reopening Steam.
If you find you VirZOOM is still closing unexpectedly, please visit our Forums to investigate the issue further.
In rare instances, you might experience a "freeze" in which everything will stop moving on your screen (and in your goggles), and turning your head won't turn the "camera" so you can look around in VR. We refer to this as a loss of positional tracking.
The most common way to address this issue is to remove your headset, quit the game as well as Steam/Oculus Home, and restart the game.
When the game feels slow and sluggish, and the buttons don't seem to activate right when you press them, this is generally a symptom of batteries about to run out. Open up the battery box on the opposite side of the power switch and replace your old batteries with two new AA batteries.
If changing the batteries doesn't fix the issue, and if you have similar issues in other VR games, your computer itself may be experiencing performance issues. Try quitting unnecessary applications and restart your computer. Be sure too that you are not attempting to use a computer below the minimum recommended requirements for VR.
If you're certain that your computer is up-to-date and VR-ready but you're still experiencing performance issues, please check in with us at the VirZOOM Forums .
When you first start VirZOOM Arcade, this tells the game where your VR headset is in relation to its Vive lighthouse, PSVR sensor, or Oculus sensor. If you far from where you started during play (such as by rotating your bike a bit, moving your bike elsewhere in the room, or letting some other player very different from you in height to take over for you), the VR system may track your position incorrectly. This might manifest as...
To address these issues, you can recalibrate your bike anytime by hitting the left trigger 4 times in rapid succession. Alternatively, you can quit the game and relaunch it to calibrate again. Either should resolve the issue.
If images in VR are blurry, especially if this appears the case in all VR games, the most likely reason is that your lenses are foggy or smeared. We recommend using a lint-free cloth with some goggle spray to clean the lenses. (We use this here in our own office.)
If you launch VirZOOM but have no audio, this is likely because of a known issue that affects some games using the Oculus Rift. Fortunately, this is easily fixed.
You should now be able to restart VirZOOM arcade and hear sound properly while using your Oculus Rift.