/OpenVR-OpenTrack

OpenVR driver with OpenTrack support / OpenVR драйвер, с поддержкой OpenTrack

Primary LanguageC++OtherNOASSERTION

EN RU

OpenVR OpenTrack

OpenVR / SteamVR driver allowing head tracking with any OpenTrack trackers, for DIY VR headset made of Android smartphone or HDMI display and tracker.

OpenTrack supports the following trackers: FreePie UDP receiver (FreePie IMU for Android), Hatire Arduino or Razor IMU (Arduino + GY-85), Oculus DK1, Aruco (Paper + WebCam) and etc.

youtube-freetrack

Setup

  1. Unpack SteamVR FreeTrack or UDP driver to folder "...\Steam\steamapps\common\SteamVR\drivers" (both are supported in OpenTrack, I recommend using FreeTrack). If necessary, configure the settings in the configuration file "...\Steam\steamapps\common\SteamVR\drivers\opentrack\resources\settings\default.vrsettings".
  2. Download, install and configure OpenTrack (add hot centering key, disable filter, change output interface "freetrack 2.0 Enhanced" or "UDP over network", depending on the selected driver). If you selected UDP, then in the output interface settings you need to set IP "127.0.0.1".

If you are using an Android smartphone, you need to use FreePie IMU from the OpenTrack archive to tracking and you can use the "Moonlight" application (for Nvidia 600 series only and above) or for any other application to stream pictures from the monitor screen. You can use this guide.

If you use the Arduino Razor IMU tracker, you can use the standard TrueOpenVR, with its SteamVR driver or the Razor IMU SteamVR application.

Configuration file options

Name Description
DebugMode debug mode, locked at 30 FPS. After checking, it is recommended to set it to false (disable).
DistanceBetweenEyes the distance between stereo images, the larger the closer.
DistortionK1, DistortionK2 lens distortion factors.
ScreenOffsetX horizontal image shift.
ZoomHeight, ZoomWidth scaling factors of stereo images.
displayFrequency screen refresh rate.
renderWidth, renderHeight image rendering resolution for one eye.
windowWidth, windowHeight height and width of the displayed window.
windowX, windowY window offset is required for display on other monitors. For example, to display on the second display, which is displayed on the left, you need to specify the value 1920 (provided that the first display we have is 1920 by 1080).

Known Issues

  1. Red screen. You can fix this by selecting the "Headset Window" window.
  2. The keyboard, mouse and gamepad do not work when using the driver on one monitor (The game window should be in focus). On systems with multiple monitors, you can move the application to second monitor and select it, then everything will work.

Download

Version for x86 и x64.
Download

Feedback

r57zone[at]gmail.com