Add improved guide

This commit is contained in:
Zuzka Varga 2025-03-04 20:24:35 +01:00
parent 76ba4f61b3
commit 5f07665b79

View file

@ -1,8 +1,8 @@
---
title: WMR Lighthouse (no SteamVR)
title: WMR Lighthouse (No SteamVR)
weight: 9000
---
# WMR Lighthouse (no SteamVR)
# WMR Lighthouse (No SteamVR)
This describes a WMR Lighthouse setup using the `steamvr_lh` driver.
@ -11,12 +11,11 @@ It's different from [WMR Lighthouse](/docs/steamvr/wmr-lighthouse/)
This doesn't use steamvr to re-map the head from some lighthouse tracking device.
Instead it does this natively in monado, so SteamVR is only necessary for the proprietary `steamvr_lh` driver.
For now this is a hacky approach as Monado's builders don't support the functionality yet:
For now this is a hacky approach requiring a Monado fork, as Monado's builders don't support the functionality yet:
* https://gitlab.freedesktop.org/monado/monado/-/issues/459
* https://gitlab.freedesktop.org/monado/monado/-/issues/288
<!-- This is made for WMR as the editor has a reverb -->
This is made for WMR based headsets and has been tested with a Reverb G2 & Vive1 (Vive1 used only for it's 2 watchman dongles needed for the lighthouse controllers).
You can easily adapt this for other headsets in a hacky way, until these issues are closed.
@ -26,17 +25,17 @@ Tested working on Arch Linux with NVIDIA RTX 2060S.
## Setup:
Setup your lighthouse system on SteamVR Windows. The Linux SteamVR version does not work well. On windows: Update everything, pair everything & setup your room boundaries.
Linux setup:
Linux Setup:
* install Steam
* Download SteamVR on Steam (try non beta version first)
* Configurations from Windows copied over
### How to copy your Windows steam configurations to Linux
### How To Copy Your Windows Steam Configurations To Linux
* mount your windows drive (e.g. at `/mnt`)
* `cp -r "/mnt/Program Files (x86)/Steam/config" ~/.steam/steam/`
### Linux only setup
It may be possible to use SteamVR on Linux to setup your room boundries, pair and update everything. This is untested, but try at least.
### Linux Only Setup
It may be possible to use SteamVR on Linux to setup your room boundaries, pair and update everything. This is untested, but try at least.
You may need playspace moving via Wlx to fine tune the floor if you don't have a Windows install.
## Build
@ -46,21 +45,27 @@ Use this fork of Monado
`git clone https://gitlab.freedesktop.org/Zuzka/monado`
(if it's too old, try to merge upstream into it and fix it)
(if it's too old for you, try to merge upstream into it and fix it)
Ensure you have all required dependencies installed beforehand (Envision or Monado docs might help)
`cmake -G Ninja -B build -DCMAKE_INSTALL_PREFIX=/usr -DXRT_BUILD_DRIVER_SURVIVE=0 -DXRT_BUILD_DRIVER_VIVE=0 -DXRT_BUILD_DRIVER_STEAMVR_LIGHTHOUSE=1`
* `cmake -G Ninja -B build -DCMAKE_INSTALL_PREFIX=/usr -DXRT_BUILD_DRIVER_SURVIVE=0 -DXRT_BUILD_DRIVER_VIVE=0 -DXRT_BUILD_DRIVER_STEAMVR_LIGHTHOUSE=1`
* `sudo ninja -C build install`
`sudo ninja -C build install`
Set following environment variable in your e.g. bash_profile:
`export LH_DEVICE_SERIAL="{YourSerial}"`
Replace `{YourSerial}` with [your actual serial](#how-to-find-your-serial)
### Envision
WiVRn version: 0.19+
Use this fork of Monado: https://gitlab.freedesktop.org/Zuzka/monado
In Envision, set Profile as such:
XR Service Repo:
```
https://gitlab.freedesktop.org/Zuzka/monado.git
```
XR Service CMake Flags:
```
XRT_BUILD_DRIVER_SURVIVE=0
@ -72,14 +77,24 @@ Environment Variables:
LH_DEVICE_SERIAL="{YourSerial}"
```
Replace `{YourSerial}` with [your actual serial](#how-to-find-your-serial)
Perform a Clean Build after changing the CMake flags!
## USAGE:
* set following environment variables in your e.g. bash_profile:
* `export LH_DEVICE_SERIAL="{YourSerial}"`
* get the actual tracking device serial via `motoc monitor` or by another way.
## How To Find Your Serial
You can find out the actual tracking device serial by:
## USEFUL RESOURCES:
1. At monado startup look if you see anything starting with `LHR-` e.g. `LHR-FC2E9BC3`. Try a bunch to find the tracker attached to your headset.
2. running this command and trying a bunch: `ls ~/.steam/steam/config/lighthouse/ | tr '[:lower:]' '[:upper:]'`
3. Running `motoc show` in a terminal
## Notes
* Turn on all your trackers & controllers and ensure the light is green, before starting monado.
* If you decide to use another lighthouse tracker mount, you'd need to figure the new tracker offset math in the Monado source code.
* If you use a Vive 1 as controller connection dongles *only connect power and USB*.
* Fork works fine without a Vive 1 for dongles, usb dongles work aswell.
## Useful Resources:
* https://monado.freedesktop.org/getting-started.html#installation-from-source
* https://monado.freedesktop.org/valve-index-setup.html
* check the commits on the fork for more info https://gitlab.freedesktop.org/Zuzka/monado