Fixed* Double Input/Controller Issue in Game (DS4Windows)

DS4Windows: Your gamepad does not become a different kind just because Windows does. It builds an interface that virtually resembles your real controller. Accordingly, if you have just one real gamepad attached, Windows will recognize two gamepads—real and virtual. If two are actual, four, and so on.

As DS4Windows emulates an Xbox controller, the graphic below illustrates how Windows responds to a DS4v2 (Wireless Controller) attached to the system:

Double Input Issue | Double Controller Issue in Games

DS4Windows’ virtual controller/keyboard is the only one that games can see, hence hiding the actual controller is required to avoid or resolve this problem. Two methods exist for doing this:

Double Input Issue in DS4Windows

  • HideHide (Highly recommended)
  • DS4Windows Hide DS4 Controllers option (legacy, non-recommended option)

Explaining the Ways to Avoid Double Input Bug in Game

HideHide (Highly recommended)

With the HidHide driver, a user may restrict which gamepads can detect even while “invisible” on the system. The reason it is advised is that, if correctly configured, the hidden controller’s double input problem is permanently resolved. In the instance of DS4Windows, the user must set HidHide to 

When connected via USB or Bluetooth, hide the REAL controllers from the system once. To prevent DS4Windows from believing there are no compatible gamepads attached, allow it to view all hidden devices. The screenshots are attached for your convenience. 

HideHide result:

HideHide

HideHide Configuration Client:

HideHide Configuration Client

Its setup page is available for HidHide. Quick setup is available for those who are somewhat experienced, while a step-by-step part is available for those who are not.

Hiding PS4 Controller

DS4Windows Hide DS4 Controllers option (legacy, non-recommended)

The DS4Windows Settings tab has this option. When this option is selected, DS4Windows will politely request exclusive access to any devices it detects from Windows. This means that Windows will only provide DS4Windows permission to detect gamepads, so avoiding the problem of double input.

This technique has a flaw in that if another process already has an open connection to the gamepad, Windows may reject the exclusive access request. Typically, this request fails for the following reasons:

  • The game is already running.
  • It’s running Opera/Google Chrome; you might wonder why it’s connected to the controller. A mystery.
  • Geforce experience procedure grasping the controller.
  • Unpredictable, opaque procedure controlling the controller, etc,….

Even in the event that it works at first, you may have to quit the game in order to try again if your gamepad disconnects in the midst of a session and you lose exclusive access when it reconnects.

The option to hide DS4 controllers is still accessible for those who require it for whatever reason, however, it is not advised for the reasons previously mentioned. Overall, for those who can utilize it, HidHide is a superior solution.

How to Fix HidHide Configuration Errors

As a link between any gamepad and the games or apps that attempt to identify it, HidHide is a third-party driver. The purpose of it is to keep actual (physical) controllers hidden from the system and make them detectable only by designated applications.

What applications should I include on HidHide's list?

Just DS4Windows itself, typically, as it must continuously identify physical controllers, even while they are concealed. Unless there is a particular use case that necessitates them to have direct access to your real controller rather than using the virtual controllers provided by DS4Windows, games, and other apps shouldn’t be on the application list. 

On HidHide's list, I can't seem to figure out which controller to Hide

The devices list of HidHide will display both virtual and real controllers; however, real (physical) controllers are the ones that must be hidden to avoid the double input problem. The main recommendation is to make sure that HidHide’s Client is opened before DS4Windows is running, to ensure that there are no virtual devices on the system. To do this, the appropriate steps are: 

  • Get the Joy.cpl file from Windows’ list of game controllers.
  • Next, launch the HidHide Configuration Client after making sure DS4Windows is “Stopped” and completely closed.
  • Under the Devices tab, choose the Enable Device Hiding checkbox.
  • Upon locating and marking your controller within the Devices tab list, a red lock symbolizing its concealed status ought to surface.
  • If you utilize both connection methods, you must complete this once via USB and once via Bluetooth.
  • Verify if your controller has been hidden by looking at the Game Controllers list in Windows (click on the list to update).
  • You made a mistake in marking the entry if the controller was not hidden. Try again after undoing the modification.
  • You might need to reconnect the controller.
  • Before opening or starting DS4Windows, CLOSE the HidHide Configuration Client.

About the Manual Methods

  • To avoid confusing a DS4Windows virtual controller with your actual one, make sure that it is stopped or closed completely.
  • To make sure your genuine controller is still identified, check the Gamepad Tester Website and Windows’ Game Controllers list.
  • If you disconnect the controllers after concealing them, certain programs may still identify them. Reconnecting the controllers is advised for the modifications to take full effect.
  • You can tell if your controller is not hidden if it is recognized and shows up on the list. Set up HidHide again in this scenario.
  • In such a case, the double-input problem should be avoided because your controller has been correctly concealed. 

After hidden controllers are hidden, DS4Windows is unable to identify them

  • Add DS4Windows.exe manually to the Applications list by opening the HidHide Configuration Client.
  • In case DS4Windows is operating with a customized.exe name, further include the customized.exe file in the list.

Fixing the "Could Not Open Controller Exclusively" Error and DS4 Hiding Issues

One old feature of DS4Windows that helped avoid the notorious double input problem was the ability to hide DS4 controllers. In addition to providing alternatives and an explanation of why it occasionally fails to function, this page also aims to identify the specific cause of the failure and offer a solution in case the user truly needs this choice.

Why This Option May Not Be Ideal

DS4Windows will try to seek Exclusive Access to identified controllers when the Hide DS4 controllers option is activated, which means that games will no longer be able to recognize your real (physical) controller. The problem with double input may be avoided by just allowing the virtual controller of DS4Windows to be seen.

One issue is that Windows will reject your request for Exclusive Access and your actual controller will still be accessible if anything (games, apps, or processes) already has an open handle to the controller. When this occurs, as seen in the image below, DS4Windows will alert the user via the log tab.

Programs Commonly Causing Issues with Exclusive Mode

Closing any other programs that could be using the real controller and then re-connecting it (or ->Stop ->Start DS4Windows) are good ways to cure issues with proprietary mode. One can obtain Exclusive Access and conceal the actual controller if the DS4Windows program is the initial application to establish a connection with the device. Until the controller is reconnected or DS4Windows is stopped or started, Exclusive Access will be active after it has been granted.

An incomplete list of programs that could be openly connected to the original DS4 controller and operating in the background on your computer is provided below. The “Hide DS4 Controllers” exclusive mode cannot be enabled by DS4Windows if unexpected apps have an open connection to the physical controller without your knowledge.

NVIDIA GeForce Experience and in-game overlay: Once the DS4Windows application has begun, you can either activate the GeForce in-game overlay functionality or disable it under the NVIDIA settings.

Steam Client: A number of gamepad controllers, including DualShock4, are supported by the Steam client in “big screen mode”. Turn off the DualShock4 device type’s gamepad compatibility in the Steam client.

Steam DS4Windows

Ubisoft UPlay Client: Controller navigation is supported by UPlay. To start the DS4Windows utility, close the UPlay client.

Window Store Application: The gamepad controller navigation is supported by the Windows Store app. In order to use the DS4Windows program, close the WinStore.app.exe processing. DS4Windows must first have activated the exclusive mode before you can open the WinStore program.

Netflix (Win 10 app): The Netflix client is compatible with gamepad navigation. After closing the Netflix client and ending its process, launch the DS4Windows utility.

Microsoft Edge: You must exit Process Manager and close the Microsoft Edge browser window to stop the background process. Upon system boot, you may prevent Edge background processes from starting automatically by using the local group policy tool.

JoyToKey: Another gamepad remapper is called JoyToKey. There have been reports from some users that when a gamepad is unplugged, having both the DS4Windows and JoyToKey programs open might cause issues. If your physical gamepad is not recognized by DS4Windows at all, or if you reconnect it after a break, the exclusive mode will not function.

GameBat (Win 10): Your hardware controller could be in open communication with GameBar.exe. Setting -> Gaming -> deactivating ‘Record game clips, snapshots and broadcast using Game bar’ and Uncheck ‘Open Game bar using this button on a controller’ will deactivate the Game bar.

Oculus Rift VR tools: A background procedure utilizing a gamepad can be running if you have installed the Oculus Rift VR tools. After DS4Windows has begun and obtained the exclusive lock to your physical gamepad, stop the “Oculus Rift VR runtime service” background service and start it again.

Backgroundtransferhost: Exclusive mode may be impacted by this built-in Windows function. You may disable sync by going to Settings -> Accounts -> Sync your Settings. The alternative option, which includes using regedit to modify the “Start” value in HKEY_LOCAL_MACHINE\SYSTEM\,is to try that first. If no,RightNowControlSet\Services\TimeBroker to 4, also known as timebrokersvs.

Final Words

That’s how we are concluding the guide – you can select either of the ways to fix the “Double Input Issue with DS4Windows”. If you have any queries regarding the whole guide, feel free to comment us below and we will be more than happy to assist you all. 

Thank You.

Leave a Comment