--- date-created: 2026-10-20 17:45 date-modified: 2026-10-20 17:52 --- # SteamVR to Meta Quest 3 design tree ## Goal Stream PCVR from Zeus to a Meta Quest 3. The design must produce a repeatable and diagnosable SteamVR session. ## Observed facts - Zeus runs NixOS with a CachyOS kernel. - Zeus uses an AMD Radeon RX 9070-series GPU with the `amdgpu` driver. - Zeus runs Hyprland on Wayland. - Zeus has Steam and Gamescope configured. - SteamVR 2.17.10 is installed. - SteamVR includes Valve's Linux `vrlink` driver. - A previous `vrlink` session detected the Quest 3 and its Touch controllers. - That session selected 90 Hz from the Quest's 72, 80, 90, and 120 Hz modes. - SteamVR setup lacks `cap_sys_nice` on `vrcompositor-launcher`. - NixOS can declare host packages, permissions, services, and diagnostics. - Steam owns the Quest pairing and SteamVR user settings. - Zeus connects by Ethernet at `10.23.50.221`. - The local Wi-Fi scan finds the `Tracion` 5 GHz network at 5220 MHz. - The scan reports a 1170 Mbit/s link rate. - The operator has no external tracked devices. ## Decision tree - **D1: Host platform commitment** — Settled: Linux-native on the current NixOS installation. - Linux-native on the current NixOS installation. - **D2: Transport** — Blocked by D1 - Wireless LAN. — Settled: primary transport. - **D3: Streaming stack** — Settled: SteamVR with its built-in VRLink driver. - SteamVR with its built-in VRLink driver. - **D3a: SteamVR acceptance criteria** — Settled: reliable session test. - Run a SteamVR game for 30 minutes at 90 Hz. - Verify visuals, audio, and Touch controllers. - Verify one reconnect. - ALVR only after SteamVR fails the agreed acceptance criteria. - **D4: Wi-Fi topology** — Settled: keep the current access point. - Keep the current access point. - Add a dedicated access point. - Use a direct Wi-Fi link. - **D5: Session performance target** — Settled: selectable refresh-rate profiles. - Selectable refresh-rate profiles. - **D5a: Default refresh rate** — Settled: 90 Hz. - **D5b: Included refresh rates** — Settled: 72, 80, 90, and 120 Hz. - **D6: Network isolation** — Settled: existing trusted LAN. - Existing trusted LAN. - Dedicated VR VLAN or SSID. - **D7: Controller and tracking scope** — Settled: Quest Touch controllers only. - Quest Touch controllers only. - Also support external tracked devices. - **D8: Launch workflow** — Settled: automatic service and headset connection. - Start SteamVR when Steam Link connects from the Quest. - **D9: Diagnostics and recovery** — Settled: capture health checks and logs. - Capture SteamVR logs and health checks. - Recover failed sessions manually. - USB tether. - **D10: USB streaming stack** — Blocked by D2 - ALVR over USB. - Meta Quest Link through a Windows installation. - **D11: USB role** — Blocked by D2 - Primary transport. - Fallback transport. - Both wireless LAN and USB tether. - **D12: Primary transport** — Blocked by D2 - **D13: Fallback behavior** — Blocked by D12 - **D14: System integration** — Settled: hybrid configuration. - NixOS manages system integration. - Steam manages Quest pairing and user settings. - Dual-boot or replace NixOS with Windows. - **D15: Windows streaming stack** — Blocked by D1 - Steam Link. - Virtual Desktop. - Meta Quest Link or Air Link. - ALVR. - **D16: Windows installation scope** — Blocked by D1 - Dedicated VR installation. - General-use Windows installation. - **D2: Transport** — Blocked by D1 - Keep NixOS and add a separate Windows VR host. - **D17: Host placement** — Blocked by D1 - **D15: Windows streaming stack** — Blocked by D17 - **D2: Transport** — Blocked by D17 ## Frontier None. ## Settled decisions - **D1: Host platform commitment** — Linux-native on the current NixOS installation. - **D2: Transport** — Wireless LAN as the primary transport. - **D4: Wi-Fi topology** — Keep the current access point. - **D5: Session performance target** — Selectable profiles at 72, 80, 90, and 120 Hz. - **D5a: Default refresh rate** — 90 Hz. - **D5b: Included refresh rates** — 72, 80, 90, and 120 Hz. - **D6: Network isolation** — Existing trusted LAN. - **D7: Controller and tracking scope** — Quest Touch controllers only. - **D3: Streaming stack** — SteamVR with its built-in VRLink driver. - **D3a: SteamVR acceptance criteria** — 30-minute session at 90 Hz, with visuals, audio, Touch controllers, and one reconnect. - **D8: Launch workflow** — Start SteamVR when Steam Link connects from the Quest. - **D9: Diagnostics and recovery** — Capture health checks and logs. Recover failed sessions manually. - **D14: System integration** — NixOS manages system integration. Steam manages Quest pairing and user settings.