# Enabling High-Quality Untethered Virtual Reality (MoVR) Abari _et al.,_ USENIX NSDI '17 ## Motivation/Introuction - Streaming Virtual Reality (VR) systems - Multi-Gbit/s data rates from game console to wearable headset - 100 frames per second frame rate to make it realistic, avoid nausea - Replace cable from console to headset with RF link - mmWave: only practical RF technology that supports those rates - > 24 GHz, 24 GHz in this paper - Highly directional, like light - **Problem:** Blocked by hand, head, obstacles, like light - **Challenge:** User is mobile, creates dynamic blockages - Interest from Google, many other smaller companies ## Design (§3) - Overview shown in Figure 2: wall-mounted mmWave relay module (referred to as the "_mirror_" throughout) - AP chooses to send direct (above), or thru relay if direct path blocked - **Quantifying blockage** (Figure 4) - Hand: -14 dB, head: -20 dB, body: -25 dB - **Status quo:** AP finds a "bounce" path off a wall or object (best case of *that* is **-15 dB**, since longer distance and bounce scattering) ### MoVR Mirror Design (§4.2) - Overall design (Figure 6): receive antenna to amplifier to transmit antenna - Phased array antennas for both transmit & receive - Create narrow transmit, receive beams - No radio, just a relay - **Problem:** Some signal transmitted from mirror is received by mirror, resulting in **feedback loop** that saturates the amplifier, generates garbage (Fig. 6b, right) - So set the amplifier so that forward _gain_ minus _leakage_ is negative, so the feedback loop dies away - So need forward gain **less than** leakage - **But leakage varies** with angles of antennas (Figure 7) - So need **adaptive algorithm** to set the forward amplifier gain - **Challenge:** No radio to measure signal levels on the mirror - **MoVR approach:** Monitor current draw of the amp, increase gain continuously until **high current draw** indicates saturation, then back off the gain. Repeat continuously. ### Alignment and Tracking (§§5.1, 5.2) - Very sensitive to alignment (-20 dB for 10 degrees misalignment as shown in Figure 9), so need precise alignment - *For Direct Mode:* Need AP to headset alignment - *For Relay Mode:* Need AP to mirror, **and** mirror to headset alignment - **b) AP to headset** alignment: - Just leverage VR laser tracker: gives location _and_ orientation - **a) AP to mirror** alignment: - Challenge: The mirror can't receive, just relay - AP transmits on some frequency, mirror reflects **back to the AP** on a neighboring frequency, AP measures power of the reflection - Frequency shift overcomes problems with listening and transmitting on the same frequency - **Need two angles:** Angle at AP $\theta_1$, angle at mirror $\theta_2$ - Exhaustive two-dimensional search in those two angles to maximize power - **c) Mirror to headset** alignment: - Leverage AP to headset alignment from VR laser tracker, from step (a) above - Then, translate coordinates from AP to mirror: **have angle** from step (b) above, **need distance** as well to translate coordinates - Approach: **Triangulate mirror location** as shown in **Figure 10** - $\phi_{AP}$ is $\theta_1$ from previous step - $\phi_H$ is found by a similar two-dimensional exhaustive search with AP sending to mirror, searching over mirror and headset angles ## Evaluation (§7) - HTC VIVE VR system hardware with custom mirror hardware in a 5 meter by 5 meter room - LoS blocked 20 times over 5 minutes while playing a game (**Fig. 12** shows blockage durations, 245 milliseconds median, _i.e._ 25 frames, so would cause a noticeable glitch) - Mirror Performance (no blockage = 0 dB reference level in Fig. 13) - Compare no blockage versus blockage without MoVR - Fig. 13: -27 dB loss from bouncing off a wall - Compare no blockage versus blockage **with** MoVR - Fig. 13: Improvement in SNR from amplification, shorter paths - Why sometimes 3 dB worse? No explanation, possibly amplifier saturation, beam alignment problems - Beam Alignment and Tracking Performance (§7.3) - Two degree accuracy for AP to mirror beam alignment (Fig. 14), ground truth coming from laser distance measurement tool - Whole system (Fig. 15) versus exhaustive search in **all three angles:** MoVR 4 dB worse sometimes about the same number of times to possibly explain Fig. 13 - Beam Alignment Latency - **Important:** needs to be fast to track -- claimed 0.9 $\mu$s to align, 1.7 $\mu$s to reconfigure phase shifters, compared to 1 ms delay in the VR tracker so MoVR is much faster - System Performance (§7.4) - Compare no mirror (bounce off walls), fixed gain mirror, MoVR with **LoS path blocked by hand** - Where's the AP in Fig. 16? - Better with MoVR's adaptive gain control