Full-Body Tracking for Xbox 360 and Xbox One Kinect

Please update to KinectToVR EX if you play VRChat. More info on Discord.

(Using K2VR Installer will not install KinectToVR EX)

K2VR Installer v1.4.4

Automatically installs Kinect drivers, KinectToVR and its prerequisites.
(Scroll down for instructions)

Installer screenshot

How to calibrate

Video Instructions (text version is below)

Calibrating is mostly straight-forward. You just need to make sure your controllers are working and you should also ignore the arrow.

Imagine the Kinect is its own box in which you're tracked. And you're trying to line it up with the box of your VR headset.

After initializing trackers, two checkboxes will appear towards the bottom for "Enable Kinect Rotation Calibration" and "Enable Kinect Position Calibration", which let you rotate and move the trackers respectively.

Enable one checkbox at a time, and with the SteamVR dashboard closed, use the thumbsticks/trackpads on your VR controllers to line up the trackers to your body.

Press any of the two triggers (analog buttons on the back of your controllers) to confirm each calibration step. and recheck any of the checkboxes for rotation or position if needed until they're roughly in the right spot. Don't try to align them to a rotation you think works. only align them to your real life movements. Especially if you're having issues with Beat Saber avatars..

YOU'RE DONE!! Do keep in mind if your controllers weren't working you will need to start and initialize K2VR twice when you want to play.

Useful Tips and Troubleshooting

If launching KinectToVR while SteamVR is open gives you a white screen. Try launching it as administrator. Note that if this works, you should consider checking why SteamVR has to be run in an elevated state in the first place. Because you shouldn't need to.

If KinectToVR immediately closes right after launching it with SteamVR open. It's possible it's due to the OpenVR-InputEmulator DLL fix. To attempt to fix it, find the temp folder created next to the K2VR Installer executable. Run the ovrie-1.3.exe file in there and let it upgrade the existing install.

When positioning the Kinect sensor, you want it high up (above your head preferably) and pointing down. Good skeleton tracking for Xbox 360 Kinect starts around 3-4 meters away from it, and 2-2.5 meters away for Xbox One Kinect. With that in mind you want the Kinect as far away from you as possible, in the angle where you’re going to play. Using the skeleton preview inside KinectToVR can be useful.

You may encounter a bug where one or both of your hands in VRChat is swapped with the trackers. and/or one or both of your controllers’ input to SteamVR stops working (Can’t open the dashboard or click on it.) after initializing trackers. If this happens, close out of KinectToVR, launch it again and initialize trackers again. The controllers will start working.
You may also need to restart K2VR if the trackers appear in the SteamVR status window, but don't show up in VR.

If the above happens to you, it means you will need to launch K2VR and initialize trackers twice anytime you want to play. Hope to have this fixed or find a workaround for it in the future.

If controller calibration still doesn't work:

The white arrow in SteamVR does not represent the Kinect in 3D space accurately and should be ignored in favor of aligning the trackers with your body.

The video tutorial is old, and should only be used as anecdotal reference as it uses an older version of the software and is missing some information present in the written instructions.

If you're planning to use this for Beat Saber, Go to the Adv. Trackers tab and enable "Use Head orientation for ALL joints" and it should fix Beat Saber avatars.
This happens because the CustomAvatar mod requires manual configuration of each tracker onto the model in Unity, and KinectToVR spawns the trackers in a different orientation than you would put on actual Vive trackers. I personally recommend you use VirtualMotionCapture with the SteamVR camera config file and optionally LIV if you want correct depth mapping with your avatar.

Remember to launch SteamVR, then KinectToVR, initialize trackers and then launch your game, in that order. Or else things will crash.

If your Kinect is turning on and off in a loop, make sure its microphone isn’t muted. Press Windows + R to open the Run dialog, and paste in:

control mmsys.cpl,,1
to access recording devices and check on it. On Xbox 360 Kinect, the green LED flashing indicates normal operation.

If KinectToVR says KINECT_NOT_GENUINE try unplugging and replugging in your Kinect. Possibly in a port used by a different USB controller. Then click on “Reconnect Kinect”.

Extra Stuff You Should Probably Get

What people call “Playspace Mover” is actually Space Drag from OpenVR Advanced Settings.
An addon for SteamVR (NOT VRCHAT) kinda like OpenVR-Input-Emulator, which contains incredibly useful stuff.

If you intend on playing VRChat with this, and you want to launch into FBT while in-game but are in an invite-only instance. You can use VRChat Rejoin Tool to launch the game back into the last world you were in as if you launched it from the VRChat Web UI since launching K2VR will crash the game. This does not modify the client in any way and is perfectly within VRChat’s terms of service.

Random Questions

What makes KinectToVR so much better than Driver4VR?
Its free and it takes less CPU. Once upon a time, I would’ve told you it had exponentially better tracking for Xbox 360 Kinect, but that eventually got fixed in D4VR.

Can I use multiple Kinect sensors at once?
Using KinectToVR no. But as of the time of writing this, Driver4VR is expected to support at least configurations using 2 Xbox 360 Kinect sensors in a future update.

Where is Sharky?
Hooray Sharky has in fact, not succumbed to COVID-19. Refer to the announcements channel on Discord. We don’t know where she is. I’d assume we would know if she died. But in her last update video and on Discord she mentioned going to university. I’ve personally seen people go off the grid for multiple YEARS when going to uni or college in the past. So, uhh, probably having a splitting headache in a dorm doing assignments and getting drunk with mates.

Since Sharky is gone and there hasn’t been any updates in almost a year. Is the software going to stop working?
Most likely not. The only dependencies are the Kinect SDK, for which development ended many years before K2VR even existed. And OpenVR-Input-Emulator which is still used by a lot of other projects and will continue to get fixes from the community as time goes on. If there ever is a need for a fix for OVRIE, I will update this document.

What about PSMove?
I’ll have more info on PSMove when I get my own setup completed. For now, I would refer you to the folks on the D4VR Discord or the color-tracking channels. But do expect a full tutorial from me.

Why do you know so much?
I have no life.