This documentation is outdated!


New docs are here.

System Requirements

Cloud PCs

Because of the nature of the Kinect and its proprietary drivers, USB forwarding applications such as VirtualHere will not work with Kinect. For similar reasons, PSMoveService and especially PS Eye cameras will not work either.

Services such as Shadow or Plutosphere can offer VR streaming because sending video back to you is a lot easier than you sending video to them.


Before someone comes and asks, we've done research into these things, there's simply no good way to implement it for now. Maybe in the future. But we would like to focus our efforts on local computer users for the time being.

Virtual machines

Simply put, if you're using kernel-mode virtualization software like QEMU/KVM (Pretty much any system that allows full PCIe GPU passthrough is KVM under the hood), then just like the GPU, you can pass through a full USB controller, or a USB PCIe add-on card.

Doing that will work for both Kinect models, and for PS Eye cameras.

Passing through just the Kinect device won't be enough because USB passthrough is vulnerable to CPU scheduling on the host OS, and will cause latency issues.

Additionally, the descriptor handshake for Kinect creates multiple devices internally, and all of them need to exist on the same root connector, which can't be done with software USB passthrough.

Operating System

There is a hard requirement for Windows 10 1809 or Windows 11 because the SteamVR driver is built with WinAPI thread descriptors which were only added in 1809. This means that while it's possible to get K2EX Installer and K2VR to launch even on Windows 7, you won't be able to add trackers.

As for Linux, it could happen but most likely won't because implementing the workaround needed to translate data from the Kinect received via libfreenect into an app running inside of Wine/Proton that then passes it to the official Kinect for Windows SDK would prove to be a royal pain. Linux FBT has a greater future with SteamVR tracked devices, and later SlimeVR (support is planned). If you're a full-time Linux VR advocate, I'm sorry, we can't help here.

Devices

You'll need either a Kinect for Xbox 360, Kinect for Windows V1, Kinect for Xbox One or Kinect for Windows V2, with their respective adapters. There is no Kinect model that ends directly in USB, they all have a semi-proprietary AUX port that carries USB and 12v power.

We highly recommend where possible to get the Xbox 360 Kinect because it's easier to troubleshoot, more reliable, and will work for more PCs. And the tracking difference between the Kinect versions isn't important enough to warrant the increased price and issues of the Xbox One/V2 Kinect.

When purchasing an adapter for the Kinect, you should try to avoid buying from Amazon, as anecdotal evidence from thousands of users shows that buying adapters on Amazon has a 100% chance of running the risk of getting a broken adapter on arrival. What this means is that users who bought adapters anywhere else never had dead ones.

There's also the concerns of cheap after-market clones VS the original OEM Microsoft adapter. When it comes to the Xbox 360 Kinect adapters, buy whatever, it doesn't matter and the tolerances for USB 2.0 are very loose so you'll be good.

For Xbox One Kinect adapters, the official Microsoft one has a signal repeater inside of the hub that allows the USB 3.0 signal to run through the entire length of the cable without degradation. Some cheap adapters lack this repeater and may cause issues even with the cable they come with. I would recommend that you either try and find an original adapter (they're very expensive) or that you read the reviews for the one you're buying to see if anyone else had issues resulting in low framerates or signal instability.

USB Bandwidth

With the Xbox One Kinect, the requirement for USB 3.0 bandwidth is rather high and needs a sustained and stable connection, as well as there being complete incompatiblity with certain brands of USB controllers. You can read more about it here.

About PSMove

The PlayStaion Move + PlayStation Eye setup using PSMoveService really isn't for everyone. PSMS is a glitchy and outdated program, and will cause you many nightmares while trying to setup camera calibration and controller rotation settings.

The cable length for the cameras isn't enough for most rooms so you'll need extensions and you might also need a separate USB card to run those cameras.

Generally, we would only recommend that people attempt the PSMove setup if they already have a good portion of the hardware, and they know what they're doing because very little people have done PSMove and some of them have given up completely and moved to either Vive trackers or back to Kinect.