Welcome to DS4Windows
DualShock4Windows is a portable program that allows you to get the best experience while using a PS4 Controller (or any of the supported gamepads) on your PC. By associating your connected controller to one fully re-mappable virtual Xbox 360 or DualShock 4 gamepad, many more games are accessible.
Who Are We
DS4Windows was originally created by InhexSTER and branched off to Elctrobrains and eventually recreated by Jays2Kings. Currently the official, safe and working DS4Windows is maintained and forked by Ryochan7.
New features, stability and a more complete program has been made since the fork with many community users also contributing to the app it is today.
This website has been made to promote the app with added support and guidance on using DS4/DS5 Windows.
How It Works
DS4Windows works by remapping the user’s gamepad into a new, virtual/emulated gamepad or by directly mapping the real gamepad to the user’s keyboard and mouse.
By emulating the Xbox 360 controller you can now play games specifically made for Xbox, on non control supported games, remapping your keyboard & mouse keys, joysticks, motion sensors etc and ultimately customizing your controller to your needs.
Who is it for
Anyone that wants to use a PlayStation or Nintendo controller on PC or just wanting to customize their controller.
If a game doesn’t support controllers, using the DS4Windows tool allows you to bypass and remap every key from your keyboard and mouse to DualShock 4, DualSense 5, Joycon, replica (fake) remotes etc.
DS4Windows truly gives you the power to take control of your controller. With less input lag and latency issues compared to other apps out there.
Most Popular DS4 Tool
Frequently Asked Questions
The Supported Gamepads page will better answer this question for you.
Keep in mind that the real controller you are using is not that important for game compatibility. As long as it is detected by DS4Windows, you’ll be using them as either a Xbox or DS4 gamepad via gamepad emulation.
DS4Windows works by remapping the user’s “real” gamepad into a new, virtual / “fake” / emulated gamepad (check the GIF below) or by directly mapping the real gamepad to the user’s keyboard and mouse. This allows:
- Using your gamepad in games that support (for example) only Xbox controllers
- It’s possible to emulate either a Xbox or DS4 gamepad, but keep in mind that most games do not support DS4 controllers in any way, requiring Xbox emulation
- The virtual controller is fully configurable: its buttons and sticks can be remapped to other buttons/sticks or entirely disable, their behavior tweaked , special functions configured etc.
- Using your DS4 via Bluetooth in games that only recognize DS4 controllers connected via USB (Wired v1 DS4 emulation)
- Playing games that do not support gamepads by controlling the PC’s keyboard and mouse
- Mapping the controllers motion sensors to control the mouse, sticks etc.
- And much more!
When using DS4Windows, the real controller that you are using is mostly of no importance. What matters is the type of controller emulation set on the currently active profile (Virtual Controller Settings).
On default settings DS4Windows is set to emulate Xbox controllers since most games support only this type. Though it’s possible to change to DS4 emulation in the profile settings, KEEP IN MIND THAT MOST GAMES DO NOT DIRECTLY SUPPORT DS4 CONTROLLERS AND XBOX EMULATION IS REQUIRED!
For some more info on games not recognizing DS4 controllers, check the games not recognizing DS4 controllers troubleshooting page.
As the name suggests, it’s a fake / virtual / non-physical controller.
DS4Windows cannot “transform” the real controller you are using from one type to another, so instead it associates it to a new virtual controller in the system from the desired type.
On default settings, the virtual controller is a Xbox 360 to ensure maximum game compatibility and it replicates the movements done by the real controller as if the user were directly using it.
The main advantages are:
- Virtual controllers are recognized as “real” by the system. As such, they work in any game or application on the system that has support for them
- This does not magically add gamepad support to games that do not have them or support only one type of controller. If a game works only with Xbox gamepads then you NEED to do Xbox emulation, since the game would not recognize the gamepad if you were to emulate a DS4
- A game may have fixed control schemes, but the user wants to rebind a function from one button to another. By directly rebinding the virtual controller’s button on DS4Windows the user completely bypass the game’s limitation
These are just examples, keep in mind that DS4Windows is a powerful tool that can be heavily customized to the user’s preferences, as such it’s hard to properly summarize what can and cannot be done.
DS4Windows can emulate a DS4v1 connected via USB. This is useful when:
- You want to rebind buttons, adjust the sticks behavior etc when using a real DS4 (or any other controller)
- a fake/copy-cat DS4 controller is being used which the game may not recognize as an actual DS4
- Your controller is connected wirelessly but the game you want to play only has (full) support to wired, version 1 DS4 controllers
- DS4Windows’ virtual DS4 controllers are always wired/v1, regardless to the real controller being used and how it’s connected
- Your real, physical DS4 is hidden, meaning the only way to use it with games as an actual DS4 controller is by emulating a new one
- “Hiding” the physical controllers being used with DS4W from the system is a recommended step to prevent issues with games. For more information, check the Preventing the double controller / double input issue in games page
Yes. This can lead to an infamous problem called double input issue. Fortunaly, this can be solved by “hiding” the real controller being used, leaving only the virtual one visible to games and applications.
Check the Preventing the double controller / double input issue in games guide for more info on this.
DS4Windows is limited to the types of virtual controller the ViGEmBus driver can create, and for now it can only spawn virtual Xbox and DS4 controllers. This may change in the future but there is no estimate.
The Troubleshooting section of this site Is made to direct users to the info they need to “help themselves”. Be sure to look around carefully as most known issues are already covered there somewhere, all it takes is some reading and comprehension skills and a bit of patience.
You can contact us directly using the contact us form or sending us a private message on social media.
- Rumble is disabled when using a VIRTUAL DS4 controller, regardless of the type of real controller being used
- Rumble is working as normal if using a real DS4 controller and Xbox emulation
The main difference is that for Steam’s controller support to work every game or application need to be launched through Steam, since it needs to directly intercepts the game’s controller communication. On the other hand, DS4Windows’ virtual controllers behave as real ones on the system and will work in any game or application that has support to them, including Steam games.
Function wise, DS4Windows can be considered more powerful, with only a few exceptions where Steam can do something better or that the former cannot. Although it has been tested the DS4Windows provide less input lag and latency issues.
Only when using:
- a DS4 version 2 or a DualSense connected via USB
- a DS4 controller connected wirelessly by using the official Sony USB Wireless Adapter
When a controller is connected accordingly to the options above, a new audio and mic device should be detected by Windows automatically, without the need of special drivers or similar.
Keep in mind that those are native functions of the controller or of the official Sony Adapter and that DS4Windows is not involved with anything audio related. If the audio device parts of the controller are not being detected or you are having audio issues then that’s 100% not DS4Windows’ fault.
Yes you can download the source code DS4windows github repository. https://github.com/ds4win/ds4windows
Is it possible to implement this? Apparently yes. WILL it be implemented? The answer is probably no unless some new developer steps in to specifically focus on this.
What most users don’t understand is that:
- DS4Windows is a free, open-source software developed by a few people out of their own limited free time. Have you ever had to work, study, have fun and still have time left to work on non-paid software for random internet users? Balancing all these things is not an easy task
- Even minor things can be complicated to be implemented. Audio input/output over Bluetooth is complicated, specifically because there is a LOT that is not known for the lack of documentation, so sometimes it takes way too many hours of work just to test something
- There are other more important things to focus that actually impact gaming. if users need wireless headsets they can just buy a dedicated one. As such, this niche feature is really low on the To Do list
You are probably connecting a controller that has headphone jack audio support and Windows is automatically switching to it.
When this happens, the user needs to manually switch back to the preferred audio device on apps being used and on Windows itself.
Check the Headphone or mic related issues on the troubleshooting page.