Thread Rating:
  • 25 Vote(s) - 4.68 Average
  • 1
  • 2
  • 3
  • 4
  • 5
DS4 To XInput Wrapper
Hello guys, I am new here but I want to share a tool I made for Dualshock 4 controllers. I was inspired by the tool made by Scarlet.Crush for DS3.

My tool works in a similar fashion and is based on source code from DS3 Scp Tool.

I am no longer actively developing this, so check other forks of this for newer versions.

It works though without messing with the original drivers for DS4. Uses HID Protocol to XInput mapping. You still need to install drivers for SCP virtual bus device and possibly X360 Controller drivers.

[Image: FEvv8lq.png]

The whole project is in beta so please keep in mind there will be some bugs.

Make sure you have:

1. Microsoft .NET 4.0
2. Visual C 2010/2012 Runtime.
3. Latest DirectX Runtime.
4. Latest Official Microsoft Xbox 360 Controller Drivers available.
5. Minimum of Bluetooth 2.1 + EDR Dongle (if using Bluetooth).
6. Administrator rights on your PC.
7. Make sure you quit all other apps/games that can use the controller
(Steam/Uplay/TeamSpeak, etc) if you are using Hide DS4 controller option
8. Having MotionJoy drivers installed seem to cause issues for some people
9. This tool can't run at the same time as DS3 SCP server gui or service at this moment
10. Bluetooth Drivers from Microsoft or other driver that use Microsoft Bluetooth Stack

IF XinputTest shows everything correctly the problem is with the game!

Explanation on what HIDE DS4 CONTROLLER checkbox does:

Source code :

Next update:

Please when anyone asking for help provide this:

Connection type: USB/BT
Windows Version
DS4 Tool Version
Are you using Exclusive vs Shared mode ( is Hide DS4 Controller checkbox enabled)
Make sure if USB works first, only then try BT

The Dark Souls is quite buggy port from consoles. So don't expect it to work flawlessly.
Before starting Dark Souls make sure:
xinput*.dll is not present in your game folder (having X360ce will break things)
You have started the tool with Hide DS4 Controller on
In Devices and Printers from Control Panel (Game Controllers menu) make sure that X360 Controller is only one visible)
At this moment we do not support running DS3 and DS4 simultaneously, so make sure only DS4 is connected
The X360 Controller supports both Xinput and DirectInput so its up to game which one to use

I am 100% positive that everything works if you do everything correctly.
People asking about Dark Souls will be ignored or will receive a wearing.
As the topic was covered over few dozen posts

Direct Input Emulation:
There is a limited support of DirectInput in X360 Controller. No Vibration and triggers act different. Other option is to use of contoller without a tool and using in game settings to map buttons. Some games support it. Again no vibration as that's how DS4 DirectInput is defined.

There is no plans to add virtual DirectInput device at the moment. As it would requite reverse engineering another controller and emulating it on the virtual bus driver. At the moment I am relying on Scarlet.Crush's code to emulate X360 and he definitely knows more about it. But he doesn't support emulating DirectInput devices in his tool as well.

Attached Files
.zip (Size: 716,82 KB / Downloads: 361.424)
.zip (Size: 664 KB / Downloads: 18.562)
.zip   DS4_1.1_Beta1_Update (Size: 669,02 KB / Downloads: 53.793)
.zip   DS4Tool_1.1_Beta_2 Update (Size: 730,67 KB / Downloads: 15.260)
.zip (Size: 718,69 KB / Downloads: 65.783)
.zip (Size: 710,6 KB / Downloads: 53.153)
.zip   DS4Tool (Size: 717,22 KB / Downloads: 104.850)
.zip   DS4Tool (Size: 1,74 MB / Downloads: 36.253)
.zip (Size: 36,26 KB / Downloads: 56.160)
.zip   DS4Tool (Size: 1,74 MB / Downloads: 817.524)

Sponsored links

Here is youtube demo video,
Input filter/wrapper applications are always very useful. I'm sure this will be most welcome, once more people have gotten their hands on the DS4. Thanks for the contribution.

How are you finding the DS4?. Any apparent, non-PS4 specific improvements over the DS3? Such as the feel, the analog etc. I'm planning on getting one myself soon, for PC use.
Definitely an improvement from DS3. Feels more firmly in hands and feels more solid compared to creaky old controller. Kinda feels solid on inside instead how DS3 was hollow. Triggers also better, one thing feels unusual is placement of Options and Share buttons which are equivalent to select/start.

Dualshock 4 now is for sale in a lot of retail stores. I got one to use with PC and PS4 for coop games
I'm glad this exists. Thanks for your work InhexSTER. Hopefully you'll be able to get rumble and the like working if you plan to go that far.
CPU: Intel i5 2500k @ 4.6GHz | Mobo: ASRock Z68 Gen3 | GPU: GTX 970 | Mem: GSKILL Sniper 8GB DDR3 @ 1866MHz | OS: Windows 10 x64
CPU: AMD A10-7800 APU @ 3.5GHz | Mobo: ASUS A88XM-E | GPU: GTX 680 | Mem: Kingston HyperX 8GB DDR3 @ 1866MHz | OS: Windows 10 x64

Thanks for making this!

One suggestion: can you bind the Xbox guide button to the PS button or the touch pad button?
(11-09-2013, 08:44 PM)Trace Bullet Wrote: Thanks for making this!

One suggestion: can you bind the Xbox guide button to the PS button or the touch pad button?

Yeah should be easy to do, will upload new version shortly
Great job mate! I'm a huge fan of the scarlet.crush drivers for using my Ds3 on my PC and have been waiting for someone to make something similar as soon as I heard the Ds4 getting PC support.

I know this current version has no rumble support and I do play a game where I need that function. I was wondering if you had any plans to implement rumble support in the (Hopefully) near future?
(11-10-2013, 08:54 PM)Grimnir Wrote: I was wondering if you had any plans to implement rumble support in the (Hopefully) near future?

I was planning to invistigate that further, I have been able to read/write byte data to device but i need to find exact locations where rumble values are stored. The issue with that approach it would most likely require custom drivers for usb device same it was in DS3 and for bluetooth. (WinUsb drivers). Official drivers for windows don't list controller as Force Feedback capable.
I specifically registered to reply to say that I love you, InhexSTER.

Users browsing this thread: 8 Guest(s)