Why are Pimax processes running without PiTool?

Why are Piservices and Piserver running at boot and not started when I run Pitool and why do they continue to run after I close Pitool and not terminate?
I don’t want unneeded processes running and/or taking up CPU usage even if only small.

General services and managers that help the pimax connect faster, and help prevent starting a VR game accidently while the services aren’t running from breaking your steamVR settings, which has happened to me many times if I leave them off.

1 Like

PiTool could start the services when running and stop them when you close, it’s a simple change. This is the kind of things we’ll be able to do once it is open-sourced!


How do you accidentally start a VR game?
I pretty much need to change steamVR settings every time I start a game anyway because each game has different performance requirements and scales differently.
So long as Pimax server and services processes start up okay when Pitool is initiated then would be far more preferable for me.

I believe you do not need to run PiTool (as long as you do not need to change the config), so what you are asking for is just another unnecessary dependency.

The service and the background apps should not load the CPU if the headset is not powered on. But if you would want to make sure, you can also stop PiLauncherService.exe which will also shutdown PiService.exe, pi_overlay.exe and pi_server.exe.

Starting the service again, will also start all the other processes automatically.

1 Like

Easy launch steamvr title without pitool running.

That isn’t accidentally starting a VR game though is it? :thinking:

1 Like

Okay it could be said starting Steamvr without having pi services running. You have all kinds of services that sit waiiting to be called to become “active”. Some folks created programs to trim these down for increase in performance back when resources were severely limited.

As far as I know you need Pitool running but even if not I would rather just initialise it when I need it which is pretty much all the time when using VR since each game pretty much demands different settings.
I have tracked the processes and they fluctuate between 0 and 2% of my CPU load when not in use, not sure about memory use but regardless if they are unnecessary until I want use VR I would liek them not running and to auto start when load up Pitool.
Yes I can ensure they don’t begin at startup but don’t know whether that will cause issues.
Imagine every app running processes regardless of whether you are using it or not, your PC would be crippled pretty quick.
If they need to be run at startup for some reason then fair enough.

Most likely because PiTool just adjust settings of those services, and I really like the fact that PiTool is not needed to use headset, I hope it stays that way.

I personally shut them down after race session and start them up before playing game.

1 Like

I have found that they simply restart if you shut them down via task manager so there must be another hidden task running that restarts them which bothers me some.

1 Like

Nah just kill tasks. They stay dead on mine. Pilauncher & pi services with pitool already exited

Ah right it isn’t hidden, didn’t see the 3rd process before Piservicestarter or something. That needs to be closed first and then the other 2 processes will stay dead.
But then I have to manually start them again when I want VR so I would still like these services to start when Pitool is opened and stop when Pitool is closed but it seems others aren’t too bothered by it, fair enough.

1 Like

You need to change their service type startup from Automatic to Manual.


If you have a program like “process Lasso” you can hard assign cpu affinity and or priority, so these services can be assigned some cores and not affect your main computing experience if desired… Even if the process used 100% of the assigned cores, it will not affect your main computing function. You can assign most, but not all, processes, for example, windows processes need access to all cores etc… Process Lasso can also assign a different priority to each process and remember the settings after a reboot, so if you desired you could set these processes to ‘low priority’ and basically forget about them etc…


Great way to optimize vr that way as well. @Douglaster posted details.

Yes it sure is, it’s not going to give more fps per se’ but I no longer get any judder from when Windows decides to start a process that IT thinks is more important than my game etc… Just makes everything a bit more judder/jitter free etc…

If I find a process that is eating cpu a bit, I can isolate this process to a specific core,then simply run some benchmark tests or just look at FPS in game, and see if there is any effect. All in all a pretty easy process that has helped me have almost zero issues with either of my gaming PC’s… 1 PC runs the Pimax and the other runs my Vive Pro.


PiServiceLauncher is basically the equivalent to Oculus Runtime Service, it handles all the heavy lifting of managing the SteamVR tracking state, compositor state and detecting and updating hardware state. PiTool is only a client frontend that sends commands to the background service.

If you don’t want the service to run automatically and control when it starts manually, navigate to Start > Run > services.msc > right click PiServiceLauncher > Properties > Click Stop and select Manual from the Startup Type drop down. Whenever you want to use the headset, just Start the service again and Stop it when you’re done.


Just to add that on Win 10, you can use Task Manager “Services” tab to re/start and stop the service. It basically became so easy that I have Task Manager running in the tray and for just two clicks, I can get to PiServiceLauncher.exe control.