SteamVR on DK1 and DIY VR using OSVR

Tutorials on how to create your own rigs, pics, movies, and everything that has to do with S-3D at home!
Post Reply
will1384
Cross Eyed!
Posts: 113
Joined: Tue May 13, 2014 10:56 pm

SteamVR on DK1 and DIY VR using OSVR

Post by will1384 »

I have a DIY DK1 and a "XG Virtual Reality Headset by I AM Cardboard" also called "XG PCVR" the DIY DK1 has all the correct parts to look like a real DK1 to the computer and to the Rift software, unfortunately support has been dropped for the DK1, and the XG PCVR has a strange EDID that shows up as "Oculus Rift DKHD2" in older Rift software so it also lacks Rift software support.

I needed a way to make my hardware work and found a reddit.com post:

https://www.reddit.com/r/OSVR/comments/ ... inect_and/

that had the missing software to make it work.

Here is an install tutorial to get it working, its a little rough around the edges, and I made this tutorial almost a month after I got it working on my system so it might be missing some stuff, but hopefully it will home a few people, I will update and add images later.

SteamVR on DK1 and DIY VR using OSVR

You need Notepad++, OSVR, OSVR-OpenHMD, SteamVR-OSVR and SteamVR installed for this to work.


You can get Notepad++ from: https://notepad-plus-plus.org/

You can get the OSVR Runtime from: http://access.osvr.com/binary/osvr-runtime-installer

You get OSVR-OpenHMD from: https://github.com/simlrh/OSVR-OpenHMD

you also need to download the files in "sample-configs" the "Oculus_Rift_DK1.json" seems to be optional as the OSVR Runtime already has a copy that you can use.

You get SteamVR-OSVR from: https://github.com/OSVR/SteamVR-OSVR

SteamVR is installed from inside Steam, you can find "SteamVR" under "Tools" in your library, make sure to use the regular SteamVR and not the Beta version.



(1) Install Notepad++, you will need this to edit the .JSON files that OSVR uses

(2) Install the OSVR Runtime

(3) Install OSVR-OpenHMD, put the plug-in into:

C:\Program Files\OSVR\Runtime\bin\osvr-plugins-0

then put "renderManager.extended.landscape.json" from "sample-configs" into

C:\Program Files\OSVR\Runtime\bin

you may need to edit the "renderManager.extended.landscape.json" so that VR shows up on the correct display.

I have a DK1/DK2 clone, use a Nvidia video card, and Windows 10, this is how my video displays are setup.

Right click on the Desktop, goto "Display Settings" and your LCD monitor should be display (2) and your DK1 should be display (1), click on display (1) and under "Multiple Displays" select "Extend Desktop to this display" also if you are using a DK1/DK2 clone like the PCVR that uses a phone screen you need to set "Orientation" to "Landscape Flipped" then in the "Nvidia control panel" and go to "Setup multiple displays" and and change it so that your LCD display is the on the left and the VR device is on the right, you just drag the monitor box with your mouse to put it in the correct order, also make sure the LCD monitor is set to the primary display.

Image



With my desktop LCD displays set to 1920x1080 the "renderManager.extended.landscape.json" works without making any changes to it.

I also tried my DK1 clone and it works just fine, with my main screen set to 1920x1080 and my DK1 set to 1280x800, I have my "Multiple Displays" set the same way as above, with my desktop LCD set to primary display and the DIY DK1 set to 1280x800, it looks like this:

Image

I did not even need the EDID spoofer!!

Then put "osvr_server_config.json" from "sample-configs" into

C:\Program Files\OSVR\Runtime\bin

For DK1 copy "Oculus_Rift_DK1.json" from

"C:\Program Files\OSVR\Runtime\bin\displays"

to

"C:\Program Files\OSVR\Runtime\bin"

For DK2 or clones with 1920x1080 screens copy "Oculus_Rift_DK2.json" from

"C:\Program Files\OSVR\Runtime\bin\displays"

to

"C:\Program Files\OSVR\Runtime\bin"

and edit "osvr_server_config.json" to be like this

Code: Select all

{   
    "display": "Oculus_Rift_DK2.json",
    "renderManagerConfig": "renderManager.extended.landscape.json"
}
You may also have to edit the "Oculus_Rift_DK1.json" or "Oculus_Rift_DK2.json files for to get the proper distortion, look for "distortion" inside the files for the settings.

(4) Install Steam and the non beta SteamVR if you have not already, then install SteamVR-OSVR following the directions at:

https://github.com/OSVR/SteamVR-OSVR

(5) Start OSVR Server, it should look something like this:

Image

and test by running the "D3D Example" you should see a square room with multicolored walls in your DK1 and moving the DK1 should change the view of the room, if thats working OSVR is correctly installed and setup, now exit out of "D3D Example".

(6) Start the OSVR Server, start Steam, start SteamVR, if it asks "SteamVR is disabled because it crashed the last time it ran, Would you like to try again?" click on "YES" then run the SteamVR standing room setup, have the DK1 setting on something sturdy like a table or desk, make sure the DK1 is facing the direction of your monitor and measure up from the floor to your eyes with a tape measure to get the number that standing room setup needs.

Warning --- if you put (0) into the SteamVR standing room setup, or you recalibrate, you will be low to the ground inside of the games, stuck to the floor, to fix you will need to run SteamVR standing room setup again.

(7) Install a SteamVR game, try to pick VR games that work with a Keyboard/Mouse or Gamepad.

The VR programs I have tried that work are:

Windlands
Whirligig Media Player
InCell VR
InMind VR
COSM
Gunjack
The Solus Project
Bazaar
Adventure Time: Magic Man's Head Games
Mervils: A VR Adventure


(8) Now lets start a SteamVR game, here is how you do that:

(1) Start OSVR Server
(2) Start Steam
(3) Start SteamVR, it will likely ask "SteamVR is disabled because it crashed the last time it ran, Would you like to try again?" click on "YES"

Image

Image

(4) Start the VR program


NOTES:


Steam and SteamVR Crashes

That just seems to happen, most of the time it happens when you try to exit Steam or SteamVR, I often have to press CTRL+ALT+DELETE and start the Task manager to stop Steam or SteamVR, sometimes some games have caused a red screen or VR on the wrong screen thankfully this seems rare.

Multiple display devices

If you use more than two display devices you may have problems with your VR device.

When using a single video card with three display devices, like a LCD Monitor, TV, and VR Device, its likely one of the devices will be shut off, and you will be unable to use all three video devices at the same time.

A possible workaround, a lot of modern motherboards have integrated video, and this can possibly be enabled to give you two video cards, I am using Windows 10, and Intel CPU, and a B85 chipset motherboard, all I needed to do was enable the motherboard's integrated video in the BIOS, and now I have a second video card, I have my main LCD monitor and the VR device on the real video card, and my TV on the motherboard's integrated video, you can even clone or mirror the main LCD monitor on the TV, if you do however SteamVR will warn you that this might cause performance problems, but I have yet to see any.

Custom Lenses

If you are using custom lenses, or want Google Cardboard style undistorted side by side video, you need to edit the ""Oculus_Rift_DK1.json" or "Oculus_Rift_DK2.json file you are using, look for "distortion" and remove the settings or change them to your custom distortion like this:

Code: Select all

],   
    "distortion": {
    "distance_scale_x": 1,
    "distance_scale_y": 1,
    "polynomial_coeffs_red": [ 0, 1, 0.2 ],
    "polynomial_coeffs_green": [ 0, 1, 0.24 ],
    "polynomial_coeffs_blue": [ 0, 1, 0.32 ]
},
to this for Google Cardboard style undistorted side by side video

Code: Select all

],    
    "distortion": { 
},
EDID spoofer

You don't need one with this.

STM32F3DISCOVERY

I was not able to get the STM32F3DISCOVERY working with this.
Post Reply

Return to “Do it Yourself!”