Improve WMR lighthouse hacky (!70)

This commit is contained in:
Zuzka Varga 2025-02-22 11:54:34 +01:00
parent 7bea74d97c
commit 12041e65ee

View file

@ -9,33 +9,40 @@ This describes a WMR Lighthouse setup using the `steamvr_lh` driver.
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, so SteamVR is only necessary for the proprietary `steamvr_lh` driver.
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:
* https://gitlab.freedesktop.org/monado/monado/-/issues/459
* https://gitlab.freedesktop.org/monado/monado/-/issues/288
I made this for WMR as I have a reverb G2 & vive 1 (used only for it's 2 watchman dongles)
<!-- 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.
You can easily adapt this for other headsets in a hacky way, until these issues are closed.
I use this as my only vr setup on arch and it works fine.
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:
* install steam
* install Steam
* Download SteamVR on Steam (try non beta version first)
* configurations from windows copied over
* 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 "/mnt/Program Files (x86)/Steam/config" ~/.steam/steam/ -r`
* `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.
You may need playspace moving via Wlx to fine tune the floor if you don't have a Windows install.
## Build
Grab my custom Monado
### Manually
Use this fork of Monado
`git clone https://gitlab.freedesktop.org/Zuzka/monado`
@ -47,26 +54,34 @@ Ensure you have all required dependencies installed beforehand (Envision or Mona
`sudo ninja -C build install`
You may get this error:
### Envision
WiVRn version: 0.19+
Use this fork of Monado: https://gitlab.freedesktop.org/Zuzka/monado
In Envision, set Profile as such:
XR Service CMake Flags:
```
CMake Error at cmake/OptionWithDeps.cmake:141 (message):
XRT_BUILD_DRIVER_STEAMVR_LIGHTHOUSE specified but not available: failed
check XRT_HAVE_STEAM
Call Stack (most recent call first):
CMakeLists.txt:327 (option_with_deps)
XRT_BUILD_DRIVER_SURVIVE=0
XRT_BUILD_DRIVER_VIVE=0
XRT_BUILD_DRIVER_STEAMVR_LIGHTHOUSE=1
```
Environment Variables:
```
LH_DEVICE_SERIAL="{YourSerial}"
```
In which case it's okay to just comment (put # at beginning of line) of line 372.
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}"
* `export LH_DEVICE_SERIAL="{YourSerial}"`
* get the actual tracking device serial via `motoc monitor` or by another way.
## USEFUL RESOURCES:
* https://monado.freedesktop.org/getting-started.html#installation-from-source
* https://monado.freedesktop.org/valve-index-setup.html
* check the commits on my branch for more info https://gitlab.freedesktop.org/Zuzka/monado
* check the commits on the fork for more info https://gitlab.freedesktop.org/Zuzka/monado
* vive tracker 3.0 3d printable mount
* model: https://www.printables.com/model/107654-hp-reverb-g2-vive-tracker-mount