Like those other DS4 tools, but sexier.
DS4Windows is an extract anywhere program that allows you to get the best DualShock 4 experience on your PC. By emulating an Xbox 360 controller, many more games are accessible. Other input controllers are also supported including the DualSense, Switch Pro, and JoyCon controllers (first party hardware only).
This project is a fork of the work of Jays2Kings and Ryochan7. It adds various new features like switch debouncing, a tool that helps to fix stick drift and pitch and roll simulation for DS3 based on accelerometer value (which is a work of sunnyqeen).
This fork also includes:
- A
Gamepad (Nintendo layout)preset that swaps the face button layout for Nintendo/Switch muscle memory:Cross -> B,Circle -> A,Square -> Y, andTriangle -> X. - A fallback for invalid Switch Pro stick calibration data so compatible controllers can keep a usable default stick range.
- Update checks are disabled in this fork so users are not prompted to install a different upstream build.
This fork is maintained for controller compatibility fixes that are useful in my setup, especially Switch Pro and Nintendo-style controller layouts. It keeps the original DS4Windows behavior where possible, but adds small fixes for compatible controllers that do not report calibration or button layout the same way as official PlayStation devices.
The current fork-specific changes are:
- A
Gamepad (Nintendo layout)preset for Nintendo/Switch face-button order. - A Switch Pro stick calibration fallback for compatible controllers with missing or invalid calibration data.
- Disabled update checks, so this fork does not prompt users to install a different upstream build.
DS4Windows is licensed under the terms of the GNU General Public License version 3. You can find a copy of the terms and conditions of that license at https://www.gnu.org/licenses/gpl-3.0.txt. The license is also available in this source code from the COPYING file.
Ready-to-run builds for this fork are published on the GitHub Releases page.
For most Windows PCs, download the latest DS4Windows_*_x64.zip file from
the latest release.
- Download
DS4Windows_*_x64.zipfrom the latest GitHub Release. - Extract the ZIP to any folder you prefer.
- Run
DS4Windows.exe.
ds4w.bat is not the recommended install path for this fork because it may download a different upstream build.
Windows SmartScreen may warn that DS4Windows.exe is from an unknown publisher because this fork is not code-signed.
This is a personal fork, and I do not currently have extra budget for a paid code-signing certificate.
If you downloaded it from this repository's Releases page, choose More info and Run anyway to start it.
Visual Studio is not required. With the .NET 8 SDK installed, this repo can be built from VS Code or PowerShell:
cd path\to\DS4Windows
$env:DOTNET_CLI_HOME="$PWD\.dotnet-home"
$env:NUGET_PACKAGES="$PWD\.nuget-packages"
dotnet build DS4WindowsWPF.sln -p:Platform=x64 --configfile NuGet.ConfigThe debug executable is written to:
DS4Windows\bin\x64\Debug\net8.0-windows\DS4Windows.exe
For a local optimized build:
dotnet build DS4WindowsWPF.sln -c Release -p:Platform=x64 --configfile NuGet.ConfigThis repo includes a GitHub Actions release workflow. To publish a build:
- Open the new release page.
- Create a new tag, for example
v3.5.1, targetingmain. - Set the release title to
DS4Windows v3.5.1. - Add release notes describing the changes.
- Leave the binary attachment area empty.
- Click Publish release.
After publishing, GitHub Actions will build the app and attach the x64/x86 ZIP files to the release. If the files do not appear immediately, wait for the release workflow to finish in the Actions tab.
If the release only shows GitHub's automatic Source code (zip) and Source code (tar.gz) files, open
Actions, choose .NET Release, click Run workflow, and enter the release tag such as v3.5.1.
- Windows 10 or newer (Thanks Microsoft)
- Microsoft .NET 8.0 Desktop Runtime. x64 or x86
- Visual C++ 2015-2022 Redistributable. x64 or x86
- ViGEmBus driver (DS4Windows will install it for you)
- Sony DualShock 4 or other supported controller
- Connection method:
- Micro USB cable
- Sony Wireless Adapter
- Bluetooth 4.0 (via an adapter like this or built in pc). Only use of Microsoft BT stack is supported. CSR BT stack is confirmed to not work with the DS4 even though some CSR adapters work fine using Microsoft BT stack. Toshiba's adapters currently do not work. Disabling 'Enable output data' in the controller profile settings might help with latency issues, but will disable lightbar and rumble support.
- Disable PlayStation Configuration Support and Xbox Configuration Support options in Steam