An infrared LED array on the headset and an IR sensitive camera was undoubtedly the most obvious solution for positional HMD tracking when Oculus began developing the Rift. However, the Constellation tracking system does not extend well to standing or room-scale experiences. I propose a modification to the Constellation system that would make the use of multiple Constellation cameras much more convenient, while remaining compatible with current Rift and Touch hardware.
The Rift’s Constellation tracking system uses a second camera placed behind the play area to provide a 360 degree stand in place experience with the Touch motion controllers. This requires running a USB3 cable from your computer around to the opposite side of the play area where the second camera is placed; quite an inconvenience. It also adds to the workload of the computer running the Rift, as now it has to process not one, but two video feeds to extract HMD and controller poses.
The situation is compounded again when adding a third camera, as Oculus recommends for their roomscale configuration. With three USB3 cameras, having bandwidth requirements high enough that they cannot be run on hubs and must be connected directly, not only is cable management and image processing cumbersome, but some people will even start running out of USB ports. My desktop, for instance, is a mini-ITX system with 4 rear USB3 ports, 2 front USB3 ports, and no USB2 ports. The HMD and Touch controllers each require their own USB3 ports, as does each camera, leaving me with one port for my keyboard, mouse, and other peripherals. In short, I would not be able to use a Rift in roomscale mode on my computer without a USB hub, and I’m sure I’m not the only one in such a situation, with small form factor computers becoming increasingly more common.
HTC’s lighthouse system has no such problems. It requires only two Lighthouses for a full roomscale experience, with each Lighthouse connected to nothing but a power point. No running cables from the opposite end of the room to your computer. No computationally expensive computer vision algorithms for extracting HMD poses from raster images. No issues tracking at range (on Constellation, as you move further away from the camera, the array of IR LEDs condenses into a blur of light a few pixels wide, and pose determination becomes impossible).
How can we bring some of the convenience of Lighthouse to Constellation without breaking compatibility with the existing Rift and Touch controllers? One solution is to equip constellation cameras with small system-on-a-chip devices, for example; the NextThing CHIP. The CHIP is a tiny, low-cost ($9USD) SoC, smaller than a Raspberry Pi Zero, with a 1GHz ARM processor, 4GB of on-board, non-volatile memory for storing an OS and applications, 512MB of RAM, WiFi B/G/N, Bluetooth 4.0, and a Mali 400 GPU. A SoC such as this, placed inside a Constellation camera, could run GPU accelerated algorithms for pose extraction, removing the burden from the host computer. Now the Constellation cameras only have to tell the host computer 18 numbers every refresh: the x, y, and z position of each headset/controller relative to the camera, and the three Euler angles of their orientations. This is a much, much lower bitrate of data than the high framerate video that current Constellation cameras send back to the host computer over USB3. This amount of data shouldn’t require anywhere near the full bandwidth of a USB3 port. In fact, we can transmit this amount of data easily via an on-board Bluetooth module. This means we don’t have to run cables back to the host computer, or worry about how many USB3 ports we need.
With this system, we only need to connect each Constellation sensor to a power point, just like the Lighthouse sensors. What’s more, since we haven’t changed the actual tracking system, only moved the post-processing from the host computer to the Constellation sensors themselves, this system is entirely compatible with existing Rifts and Touch controllers, requiring only a software update on the host computer and new Constellation cameras. With such an augmentation, I would still consider Constellation to be an inferior tracking system to Lighthouse, as the hardware cost of the Constellation cameras is significantly higher than that of the Lighthouses, especially in light of Valve’s new, single-rotor Lighthouses, and also because Lighthouse has a much longer effective range, as it does not rely on raster images of limited resolution. However, such as augmentation would dramatically increase the convenience of the Rift in a roomscale configuration, and undoubtedly make the Rift a much more attractive buy for those considering a roomscale VR system.