Use your PS4 Controller on your Windows PC to its full potential

DS4Windows (32-bit)

DS4Windows 3.1.1 (32-bit)

  -  3.2 MB  -  Freeware

Sometimes latest versions of the software can cause issues when installed on older devices or devices running an older version of the operating system.

Software makers usually fix these issues but it can take them some time. What you can do in the meantime is to download and install an older version of DS4Windows 3.1.1 (32-bit).


For those interested in downloading the most recent release of DS4Windows (32-bit) or reading our review, simply click here.


All old versions distributed on our website are completely virus-free and available for download at no cost.


We would love to hear from you

If you have any questions or ideas that you want to share with us - head over to our Contact page and let us know. We value your feedback!

  • DS4Windows 3.1.1 (32-bit) Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    DS4Windows 3.1.1 (32-bit) Screenshot 1
  • DS4Windows 3.1.1 (32-bit) Screenshot 2
  • DS4Windows 3.1.1 (32-bit) Screenshot 3
  • DS4Windows 3.1.1 (32-bit) Screenshot 4
  • DS4Windows 3.1.1 (32-bit) Screenshot 5

What's new in this version:

- Changed gyro output mode output behavior for joined JoyCon controllers. Run output early for Gyro Mouse and Gyro Mouse-like Joystick
- Updated many project dependency NuGet packages and DLL files
- Migrated project to use H.NotifyIcon.Wpf package
- Added extra CONNRESET IOControl call for ReceiveCallback method in UDP server. Avoids potential memory leak within UDP server in .NET 6. The call should have probably existed beforehand
- Switched main UDP message rsp to convert payload from a struct. Faster and simpler
- Added dependabot to GitHub actions. Contribution by sitiom
- Slightly tweaked Suspend and Resume power routines
- Fixed DS4Updater download URL redirect when automatic download fails
- Fixed initial data bindings for Auto Profile section
- Have Full Pull Dual Stage triggers use raw input range rather than interpreted. Might have to change how Full Pull is handled later
- Changed WelcomeDialog to use Windows temp folder while downloading rather than program folder. Would mainly affect when DS4Windows is run from a read-only folder (shouldn't be the case on a proper setup)
- Removed Mastodon and Minds social media links from About window. No longer support Mastodon as a whole. DS4Windows actually got banned from Minds
- Added extra project links and notes to About window
- Allow joined JoyCons to transmit unique Gyro data to UDP server. Mimics behavior of BetterJoy for two JoyCon controllers linked together
- Changed HidHide download link to point to version 1.1.50.0. Approved release
- Enforce 6 normal key maximum for fake virtual keyboard in FakerInput handler. Pretty sure some reports were from people abusing said limit
- Removed old .NET 5 workaround for single process instance checking. Use EventWaitHandleAcl.OpenExisting included with .NET 6. Contribution by sitiom
- Fixed touchpad counter reading with DualSense. Needed for Touchpad passthru for virtual DS4 Extended output to work