Skip to main content
Up and Coming
December 23, 2016
Question

Oculus TrayTool - SuperSampling profiles, HMD disconnect fixes (hopefully)

Oculus Tray Tool  
current version: 0.87.3

What is it?
In short; It’s a free application that helps you get the most out of your Rift. It is developed by me, ApollyonVR, with the support of the community for beta testing. Please note that this application is not an official piece software from Oculus, I am not affiliated with Oculus in any way. Any issues you
have with this application should be reported to me and not Oculus support. You can reach me here on the forums or by contacting me at *REDACTED*

Oculus Tray Tool (OTT) has many features that will hopefully help you get the very best VR experience. It has options that help you automatically switch audio and microphone to the Rift and back, handle the Oculus runtime service, voice commands, batch import Steam games (added to OTT by the awesome headkaze over at http://headsoft.com.au), replace icons for your games and more.

It’s primary feature however, is the ability to create “Profiles” for you VR Games and apps.
Within these Profiles, you set how Asyncronous SpaceWarp (ASW) should act, increase the perceived resolution by using Supersampling and increase the CPU Priority of a given app to get the most juice out of your system for that specific application.
Once a Profile has been created for a game or app, OTT will detect when it is started and apply the
profile for it, without the need for taking your headset of.

If you want to have a peek at all the things OTT can do for you before installing the application, check the User Guide pdf. The latest version of this application will always be right below this intro, but the app also checks for available updates on startup.

Enjoy, have fun and please report any issues, suggestion or feature requests to me using the above mentioned methods. Oh, and feel free to buy me a coffee by using the PayPal button in-app. 🙂
 
The very nice people over at Guru3d.com have been kind enough to host some mirrors for the setups, so make sure to pay them a visit!
-----------
 
UPDATE 03/08

Hi all!
It's been a while since i released a new version, but now the time has come! 😃
I'm looking for ppl who want to test the new version before public release.
There are primarily changes for the Quest but anyone is welcome to test it.
Just drop an email to *REDACTED* and i'll get you a download link
and some instructions. Also include what type of headset (Rift or Quest)
that you are using.

 

Also, i now have a proper domain for the website, so swing by www.ApollyonVR.com
and check out the new Forum! If you have questions, comments or suggestions

that is the place to post them. 😃

 

Below are the release notes for the new version. Please note that this is a Beta version

for testing the new features. If you just want to use a stable version of OTT then head

over to www.apollyonvr.com and simply download the latest version.

 

Version 0.87.7
* Oculus Dash will now use the same CPU Priority as what you set for OVR Server.
* Added a "Comments" option to Profiles.
* Implemented Paolod29's code for a permanent AirLink (https://github.com/pd29/oculus-airlink-enabler).
* Added more choices to the Quest Link settings for "Bitrate" and "Encode Resolution".
* Added option for "Force Mipmap generation on all layers" on the Game Settings tab.
* Added option for "Offset Mipmap bias on all layers" on the Game Settings tab.
* Added option for "Force Mipmap generation on all layers" to Profiles.
* Added option for "Offset Mipmap bias on all layers" to Profiles.
* Added option for "Encode Dynamic Bitrate" on the Quest Link tab.
* Added option for "Dynamic Bitrate Max" on the Quest Link tab.
* Added "FOV Multiplier" to Profiles. Setting this to a value lower than 1, for example 0.8,
will increase FPS due to less pixels being drawn at the expense of lower FOV.
* When creating a brand new Profile, the current settings from the Game Settings tab will be used.
This will make it even easier to create a new Profile! Simply experiment with different settings
on the Game Settings tab, and when you have found the perfect combo for a given game those
settings are copied over when you click "Create new Profile".

* Added option to Disable profiles.

* Redesigned the Profiles window a bit.
* Fixed some bugs.

 
Cheers!
This topic has been closed for replies.

1867 replies

Up and Coming
June 1, 2018
I've noticed that Home Beta won't be affected with the options "minimize to tray" and "minimize on startup" in OTT. Is it my bad or a missing function?
Up and Coming
June 1, 2018
Probably nothing you are missing, i suspect the window handle for Home is different in beta then live, so i need to take a look at that and catch the correct window to minimize. Will do that (and other stuff) as soon as life calms down a bit. Sorry for the lack of updates all, been a busy couple of months for me.

Cheers!
Up and Coming
June 7, 2018
@ApollyonVR Is there any way you could bypass the need for the Home 2 to be run, when using SteamVR? I guess they released 1.27 but haven't got answer from them, that does the admin trick work again or not. Well, we see when the app is updated. If not, i'm going back to Home1, as i read somewhere that the admin trick works with it.

EDIT: This might prove useful:

MAC_MAN86 said:
Don't Beta Test and perhaps try the hack to launch games directly rather inside Home. You click the box in Properties/Compatibility Run This Program As Admin for the file C:\Program Files\Oculus\Support\oculus-home\OculusVR

Just tested and this works better! IN DEATH I can run SS=1.25 ingame and although it runs Desktop Home it does not run your VR Home so you can not accidentally switch either. This is seriously what I wanted for ARIZONA SUNSHINE for a long time as they same in Thailand 
Holy moly, that's genius! And we get to use the Home Dash alongside with Steams! You saved the day! This must be copypasted/linked forward, if you, MAC_MAN86, allow it? I can confirm that this trick worked with Core 2.0 (i'm not in public test).

Edit: You can also set the Home2 executable "Home2-Win64-Shipping" in C:\Program Files\Oculus\Support\oculus-worlds\Home2\Binaries\Win64 to Run this program as admin. Effect is same, desktop app opens, and dash works but home2 won't load, if you don't separately run it by double clicking or putting it to taskbar and clicking while Desktop app is running. Also, you can load the older Home same way, if you need it.

i9-9900K@ 5GHz, ASUS Rog Strix 2080 Super OC , 32gb 3466MHz DDR4, ROG Strix Z390 E Gaming, 1 x Inateck 4 port USB 3.0 card, 2x3.1, USB, 6x3.0 USB on mobo, 1x USB-C on G-card, Reverb G2
June 8, 2018
@ApollyonVR  Just wanted to let you know about an odd "bug" that I run into consistently.  I have both the services set to manual and OTT set to run them when the tool starts and shut them down on exit.  I also have OTT set to switch audio default to the Rift on start-up and back to my normal defaults on shutdown.  I've noticed that, if the computer has been asleep and then I run OTT, the audio switch will not occur.  I close OTT (which stops the service and closes Home) and then restart OTT and everything works.  This is very consistent, so hopefully something easy to deal with.

Thanks so much for your work on this.  It is an invaluable tool for using Rift.

Up and Coming
June 9, 2018
It really is.
I've been wondering, would there ever be a way to downsample? As in, go under supersampling and make it go at
0.75
Up and Coming
June 9, 2018
@AppollyonVR - seems that the OTT cannot successfully turn off ASW when it is launched on detection of a game being started.
I've tested this and can re-create the issue every time.

The game title is iRacing - racing simulation.

I have been having issues with ASW kicking in way too much recently and noticed that in the OTT HUD that under the ASW section it shows that ASW is available but not active.
If I wait until iRacing has loaded and then launch the OTT it does what it should do, and the HUD now reflects that ASW is simply not available. 
There are no longer any disruptive frame dips with ASW deciding to kick in - I've tested the same tracks and sections where ASW would always kick in if the tool launched with iRacing, but when the tool is manually started after iRacing has loaded there are no longer these issues.

The only workaround I have is to manually open the OTT or go back to the old method of LEFT-CTRL + Numpad 1 to force off ASW.
Or find some way to create a delay in the launch of the OTT?

Also I noticed from the logs that access is denied with regards to the profile and making the CPU higher priority, not sure if this could be related?
I'm attaching text from my log I just collected making the OTT launch before the game/as the game is being loaded and the profile detected.
Hopefully you can help.

6/10/2018 2:37:37 AM Profile updated
6/10/2018 2:37:37 AM   Display Name: iRacing
6/10/2018 2:37:37 AM   Super Sampling: 0
6/10/2018 2:37:37 AM   ASW: Off
6/10/2018 2:37:37 AM   CPU Priority: High
6/10/2018 2:37:37 AM   Launch File: iRacingSim64DX11.exe
6/10/2018 2:37:37 AM   Detection Method: Timer
6/10/2018 2:37:37 AM   Path: C:\Program Files (x86)\iRacing\iRacingSim64DX11.exe
6/10/2018 2:37:37 AM Reading profiles
6/10/2018 2:37:37 AM 22 profiles found
6/10/2018 2:37:37 AM   0 monitored using WMI
6/10/2018 2:37:37 AM   22 monitored using Timer
6/10/2018 2:37:37 AM Parsing Third-Party Manifests in C:\Program Files\Oculus\CoreData\Manifests
6/10/2018 2:37:37 AM Parsing Manifests in E:\Oculus Store VR Games and Apps\Manifests
6/10/2018 2:37:52 AM Setting new SS to 0
6/10/2018 2:37:52 AM Done setting new SS
6/10/2018 2:37:52 AM Game launch detected using Timer: iRacing
6/10/2018 2:37:52 AM iRacing: Super Sampling @ 0
6/10/2018 2:37:52 AM Setting new option to server:asw.Off
6/10/2018 2:37:52 AM Done setting new option
6/10/2018 2:37:52 AM iRacing: Applying CPU Priority in 10 seconds
6/10/2018 2:37:56 AM Setting new SS to 0
6/10/2018 2:37:56 AM Done setting new SS
6/10/2018 2:37:56 AM iRacing exited, Super Sampling @ 0
6/10/2018 2:37:56 AM Setting new option to server:asw.Off
6/10/2018 2:37:56 AM Done setting new option
6/10/2018 2:37:56 AM Setting new SS to 0
6/10/2018 2:37:56 AM Done setting new SS
6/10/2018 2:37:56 AM Game launch detected using Timer: iRacing
6/10/2018 2:37:56 AM iRacing: Super Sampling @ 0
6/10/2018 2:37:56 AM Setting new option to server:asw.Off
6/10/2018 2:37:57 AM Done setting new option
6/10/2018 2:37:57 AM iRacing: Applying CPU Priority in 10 seconds
6/10/2018 2:38:02 AM ApplyCpuPrioTick: System.ComponentModel.Win32Exception (0x80004005): Access is denied
   at System.Diagnostics.Process.set_PriorityClass(ProcessPriorityClass value)
   at OculusTrayTool.FrmMain.ApplyCpuPrioTick(Object sender, ElapsedEventArgs e)   at System.Diagnostics.Process.set_PriorityClass(ProcessPriorityClass value)
   at OculusTrayTool.FrmMain.ApplyCpuPrioTick(Object sender, ElapsedEventArgs e)

6/10/2018 2:38:07 AM ApplyCpuPrioTick: System.ComponentModel.Win32Exception (0x80004005): Access is denied
   at System.Diagnostics.Process.set_PriorityClass(ProcessPriorityClass value)
   at OculusTrayTool.FrmMain.ApplyCpuPrioTick(Object sender, ElapsedEventArgs e)   at System.Diagnostics.Process.set_PriorityClass(ProcessPriorityClass value)
   at OculusTrayTool.FrmMain.ApplyCpuPrioTick(Object sender, ElapsedEventArgs e)

6/10/2018 2:38:58 AM Setting new option to layerhud set-mode 1
perfhud set-mode 0
6/10/2018 2:38:58 AM Done setting new option
6/10/2018 2:39:02 AM Setting new option to layerhud set-mode 0
perfhud set-mode 1
6/10/2018 2:39:02 AM Done setting new option
6/10/2018 2:39:03 AM Setting new option to layerhud set-mode 0
perfhud set-mode 6
6/10/2018 2:39:04 AM Done setting new option
6/10/2018 2:39:09 AM Setting new option to layerhud set-mode 0
perfhud set-mode 2
6/10/2018 2:39:09 AM Done setting new option
6/10/2018 2:39:12 AM Setting new option to layerhud set-mode 0
perfhud set-mode 6
6/10/2018 2:39:12 AM Done setting new option
6/10/2018 2:39:40 AM Setting new option to layerhud set-mode 0
perfhud set-mode 0
6/10/2018 2:39:40 AM Done setting new option

Up and Coming
June 10, 2018
Since it seems I can't get an answer to my issue, is it possible to have the OTT close every time a VR application/game closes? Seems there isn't such an option?
Thanks
Up and Coming
June 11, 2018
@Globespy I've had reports about iRacing in particular being a bit tricky, and it might be a timing issue as you say.
Since it works fin if you manually change ASW after the game has been launched, i can try and add a 5-10 second delay to setting ASW after a game has been detected, and see if that does anything. Will try and get some work done on the new version and get you something to test.
Honored Contributor
June 11, 2018
@ApollyonVR I have the same issue than @Globespy , OTT cannot switch off ASW when I launch IL-2 Sturmovik. When OTT detect the launch of IL-2 ASW stay ON and I have to manually turn it OFF through CTRL-1. This problem seems to appeared around the 1.26 version of Oculus. On IL-2 forum I saw other posts saying the same.
“Dreams feel real while we are in them, it's only when we wake up that we realize something was strange.” - Dom Cobb " Be careful, if you are killed in real life you die in VR too. " - TD_4242 I7 10700K,  RTX 4070 TI Super, 64GB DDR4 3200Mhz, Oculus Rift CV1 and Quest 3
Up and Coming
June 11, 2018
Hey ApollyonVR,
                           It's been about 3 months since I was using your program, was not able to use my Rift for that long, I noticed your new versions when you launch games they automatically use whatever SS you have set for Global unlike before when you can have Global set and the games would default to standard settings unless you created a profile for that game. Why did you do that?