Major update to Oculus Touch Steam Link SteamVR Driver
Hi Everyone,
​
For the few people who actually use this driver, which lets you use your Oculus Touch controllers with another headset (e.g. WMR or SteamVR native, or Oculus Quest over VirtualDesktop), I wanted to let you all know that I've just uploaded a big update to github mm0zct/Oculus_Touch_Steam_Link: SteamVR driver to enable Oculus Touch controllers with other headsets (github.com)
The original post is here:https://www.reddit.com/r/MixedVR/comments/l42zp4/announcing_oculus_touch_as_mixevr_controller
This update brings with it:
- reworked haptics, hopefully you should find the new implementation much better
- improved tracking prediction, offloaded to oculus by default and adds 10ms prediction by default (configurable)
- everything is now configurable by passing arguments to the ovr_test.exe standalone component, which can control many parts of the behaviour!
- the much requested ability to act as a tracker rather than as a controller
- the ability to support extra oculus controller "objects" as additional trackers for those of you with extra touch controllers (this is untested, as I don't own a 3rd controller).
​
The release now includes a batch script to launch ovr_test.exe in "tracker" mode, and uses some sane defaults for regular controller mode if run without any arguments.
​
The ovr_test.exe is still dumber than a bag of bricks though, if you give it arguments you have to specify everything, in the correct order, here's the help output you'll get from the program:
​
Welcome to oculus_touch_link, this program provides the input and haptic link to the stream driver, as well as passing confuguration data
You can provide this program with arguments to specify:
Render to Oculus headset y/n ("n" must be used with ovr_dummy.exe)
VR "Universe" ID, 0=Invalid, 1=Oculus, 31=Recommended with VirtualDesktop/ALVR
Manufacturer name: Oculus or Oculus_link (or HTC for trackers)
Tracking system name: oculus or oculus_link (or lighthouse for trackers)
Perform tracking prediction manually in-driver (n= ask oculus do the prediction) y/n
Extra prediction time (ms) for example 11.1 for 1 frame at 90fps
All controllers are tracked objects y/n
​
This program is super dumb and expects all of the arguments or none (for defaults), suggested invocations:
ovr_test.exe n 1 Oculus oculus n 10 n (must be used with ovr_dummy.exe)
ovr_test.exe y 1 Oculus oculus y 10 n (does not require ovr_dummy.exe, may not work on multimonitor setups)
ovr_test.exe y 31 Oculus_link oculus_link n 10 n
ovr_test.exe n 31 Oculus_link oculus_link n 10 n(default)
​
Sorry it's still not the most user friendly, and the code's a hacky mess - I struggle to find time to work on it as it is so I try and make the most of it working on functionality. Any pull requests to tidy shit up or make life more user friendly would be appreciated!
​
Of course the one big outstanding issue is the requirement to physically keep the cv1 headset alive by some mechanical means, there are a few solutions, but I haven't got a software hack for the oculus driver so no software workaround yet. If you have one that really works please tell us!
u/Mugendon has just shared a way in software to avoid the headset going to sleep too, although in my testing it makes it very laggy, maybe good enough as body trackers, but not for controllers. https://www.reddit.com/r/MixedVR/comments/pxu4uj/keep_rift_cv_1_from_going_idle_when_only_using/
My current solution is to install an app on my phone called "periodic vibration", set it to 2 minute intervals, and put it in the cv1 headset to Velcro strap. The vibration keeps it awake.
For first time setup u/PumkinSpiceTrukNuts very kindly wrote a nice setup guide https://github.com/PumkinSpice/MixedVR/wiki/MixedVR-CV1-Touch
Any feedback is always welcome of course, enjoy the update! :)
Edit: in case anyone is wondering, I have no problem S/SS ranking expert songs in beatsaber with this setup (any problems SS ranking are entirely mine for not being good enough 😆 )
Posted Sep 29, 2021, 11:13 PM UTC · edited
Thank you very much for all the work you put into the development of the driver.