Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.

Controller:DualShock 4

From PCGamingWiki, the wiki about fixing PC games
This page may require cleanup to meet basic quality standards. You can help by modifying the article. The discussion page may contain useful suggestions.
DualShock 4
DualShock 4 cover
XInput support
Connection method
Bluetooth v2.1+EDR, USB-Micro
Predecessor
DualShock 3
PlayStation Move
Successor
DualSense
DualShock 4 on Wikipedia

The DualShock 4 is a a game controller developed by Sony Interactive Entertainment and manufactured by Sony, released on November 15, 2013. It was released alongside the PlayStation 4.

The DualShock 4 has a touch-sensitive pad and a lightbar on it, with the latter required for some PlayStation 4 games when used in conjunction of PlayStation Camera accessory. While the DualShock 4 has 6-axis motion sensing that was carried over from DualShock 3, it abandoned the latter's pressure-sensitive buttons in favor of digital buttons.

Over the years, the DualShock 4 has been available in a wide variety of colors. The default color model is Jet Black.

The first model, with the model name CUH-ZCT1 (commonly refers to as V1), was the launch model of the DualShock 4. The second version that superseded it, model number CUH-ZCT2 (commonly referes to as V2), has longer battery life, improved joysticks and triggers along with support for USB communication on the PlayStation 4 itself. The V2 can be distinguished by being able to see the lightbar LED through the top of the touchpad.

The DualShock 4 is a generic DirectInput controller, so it is not supported by games that use the XInput API unless XInput wrappers like Steam Input are used. Some wrappers can expose additional features such as gyroscope, touchpad control including the ability to change the lightbar color. The 3.5mm audio jack is only functional when the controller is connected wired via Micro-USB or wirelessly using the official adapter which exposes the custom PS4[1] mode.

General information

Official site
PC Games with DualShock 4 support
Technical Documentation

Inputs

  • Motion sensing: 6 axis motion sensing (3 axis accelerometer, 3 axis gyroscope)
  • 1 × clickable 2 point capacitive touchpad: ᴛᴏᴜᴄʜᴘᴀᴅ (resolution: 1919x941)
  • 2 × clickable analog sticks L3, R3
  • 2 × analog triggers: L2, R2
  • 2 × digital shoulder buttons: L1, R1
  • 4 × digital face buttons: △ ᴛʀɪᴀɴɢʟᴇ, ○ ᴄɪʀᴄʟᴇ, × ᴄʀᴏss, □ sᴏ̨ᴜᴀʀᴇ
  • 3 × digital functional buttons: sʜᴀʀᴇ, ᴏᴘᴛɪᴏɴs, PlayStation
  • 4 × digital directional buttons (d-pad): , , ,
  • 1 × Mono Microphone via TRRS jack

Use with PC platforms

The controller does not support XInput natively; additional third-party software such as Steam or an alternative (Windows, Linux) might be required to use the controller in XInput-only games.
Some older games works only with DS4 V1 controller and don't support V2 controller or don't work with wireless connection through Bluetooth dongle. DS4 V1 emulation helps to fix the issue.

Connection

Micro USB

V2 controller variation automatically installs itself as a DirectInput gamepad with the name "Wireless Controller" under Windows 10. An audio device with the name "Headset Earphone (Wireless Controller)" is also installed, which allows the use of the 3.5mm jack on the controller for audio passthrough. When the DS 4 is plugged in, the Windows audio playback device is automatically switched to "Headset Earphone (Wireless Controller)".
Connect the controller[2]
  1. Use a micro USB cable to connect the controller to a USB port on the computer.
  2. The controller should automatically be recognized and installed by Windows 10.

Bluetooth

Games with native controller support might not support Bluetooth connected controllers; requiring a wireless adapter, wired connection, or a XInput wrapper instead.[3]
Uses normal Bluetooth v2.1 + EDR[4] (but 2.0 + EDR can also be made to work)
Up to 4 controllers can be connected wirelessly to a single Bluetooth receiver.
The audio passthrough via the 3.5mm headphone port doesn't work.
Official Sony PlayStation services such as PS4 Remote Play and PlayStation Now do not support generic Bluetooth connected controllers.
Pair the controller[5]
  1. Make sure the Bluetooth functionality is enabled in your OS.
  2. Begin by turning the controller to off by pressing PlayStation+ or holding PlayStation for ten seconds.
  3. Put the controller in pairing mode by holding down PlayStation+Share at the same time until the light bar does two quick flashes of white, turns off, then repeats this pattern.
  4. Navigate to the Bluetooth settings of the operating system, select "Wireless Controller" and pair it.
  • If asked for a pair code, use 0000.

Notes

To turn off the controller press PlayStation+ or hold PlayStation for ten seconds.
If the controller have already been paired with Windows previously using Bluetooth, it might be required to remove existing older pairing in Windows before trying to re-pair the device again, as Windows otherwise might not discover the device.

Official Wireless Adaptor

DUALSHOCK 4 USB Wireless Adaptor officially released for Windows or Mac.
DUALSHOCK 4 USB Wireless Adaptor officially released for Windows or Mac.
Official peripheral; required if using PS4 Remote Play or PlayStation Now wireless.
Games with native controller support may not work with the adapter even if they work with a wired connection.
Installs itself as an audio device and allows the use of the 3.5mm jack on the controller for audio passthrough.
Recognized as a DirectInput controller while plugged in, regardless of whether an actual DualShock 4 controller is paired with the adapter or not. This can cause issues with games incorrectly assuming a controller is connected when there isn't.
Only a single controller can be connected.
Can be expensive compared to using generic Bluetooth receiver to connect wirelessly.
Pair the controller[6]
  1. Push in the wireless adapter towards the USB port until the light bar starts to blink rapidly.
  2. Hold down PlayStation+Share at the same time until the light bar starts to blink rapidly.
  3. The controller and adapter should automatically find and pair with one another within a second or two. When completed the light bar of both will stop blinking rapidly.

Notes

To turn off the controller press PlayStation+ or hold PlayStation for ten seconds.

Windows

Windows 10 has native drivers. When the DS 4 is plugged in for the first time, Windows 10 automatically installs it as a DirectInput gamepad with the name "Wireless Controller". All buttons are tested to work under Windows "Game controller settings". The headset audio device is also installed. When the DS 4 is plugged in, the Windows audio playback device is automatically switched to "Headset Earphone (Wireless Controller)".
Supported features reWASD DS4Windows Steam JoyShockMapper DSAdvance InputMapper Gamepad Phoenix
Virtual Xbox controller emulation [N 1]
Virtual DualShock emulation [N 2]
Vibrations
External Speaker [N 3]
Headphone Jack wirelessly ~ [N 4]
Motion Control
Touchpad
Light Bar ~ [N 5]
Dead-zone adjustment [N 6]
Multiple controllers
Virtual Nintendo controller emulation [N 7]
Keyboard & Mouse input emulation
Retro DInput/WinMM compatibility
Flick Stick
Touchpad as mouse
Cemuhook's UDP protocol
  1. Allows using controller as Xbox 360 and Xbox One virtual controllers.
  2. Allows using controller as DualShock 3 and DualShock 4 virtual controllers.
  3. DS4Windows developer Ryochan7 works on DualShock 4 audio tests
  4. Requires Sony’s DualShock 4 Wireless USB adapter. It is nit working via Bluetooth.
  5. Only for battery status. It's not possible control color by action, state, pressed button or macro.
  6. Possible to change the dead zones of the sticks or other parameters only in the configuration file Config.ini.
  7. Allows using controller as virtual Switch Pro Controller.

DSAdvance

Xbox controller emulation support.
A gyroscope and various modes of its operation are supported - mouse emulation, joystick-mouse and driving.
Easy to use, minimum settings
Support for only one controller.

DS4Windows

Bluetooth 2.1 + EDR or higher required for wireless connection.
Extensive program with high amount of customization. Can be used as XInput, keyboard and mouse wrapper with macros or just as an extend of the controller to use controllers features like touchpad, gyroscope, haptic feedback and lighbar.
Ability to emulate DS4 V1 controller which can help with older games that don't support V2 controller or don't work with wireless connection through Bluetooth dongle.
Does not currently support/recognize Bluetooth adapters with chips manufactured by Cambridge Silicon Radio (CSR) of which there are many.
The integrated headphone jack and speaker are not supported.
Ryochan7's build not longer being maintained after January 1, 2024.
The headphone jack can only be used via USB and only with a DS4v2 (native gamepad function, unrelated to DS4Windows)
The headphone jack can only be used wirelessly if the controller is connected via Sony’s DualShock 4 Wireless USB adapter

reWASD

Can emulate mouse control on touchpad.
Possible to set mappings to tap and tap with click for touchpad.
Can emulate the virtual Xbox 360 controller to play XInput-compatible games.
Lightbar shows when the battery is Critically low.
Not possible to map change of lightbar's color by pressing buttons.
Not free of charge. 14-days trial.
The site is closed for the countries of Russia and Belarus
Custom configs for DualShock 4 controller can be found in official Community Configs Library maintained by reWASD users.

InputMapper

Earlier known as DS4Tool and DS4Windows, not to be confused with current DS4Windows.
Ad supported donationware.

XInput wrapping

Being a DirectInput controller, it's possible to use any of the generic wrappers. See the controller article for those.
Double input
This is caused by controller showing up as two, first as the native, "real" controller (the DirectInput device) and second as the emulated (virtual) controller, which can be the Xbox 360 Controller or also another DualShock 4 version 1.
Disable emulated XInput controller (profile specific option)[citation needed]
  1. Under Profiles tab, select desired profile and edit it.
  2. Under Controls tab, from lower right corner, check "Use Dinput only".

Notes

This makes it easier to enable XInput with game-by-game basis if game doesn't support the controller or DirectInput.
Only works with games that support DirectInput or native DS4 input
HidHide[citation needed]
  1. For installation and how to configure instructions, follow HidHide's setup guide.

Notes

This "hides" the physical controller once properly configured, meaning only the DS4Windows' virtual controllers remains which fully prevents the double input issue
HidHide is the successor of HidGuardian
Easy to configure. Users can allow which applications can detect hidden controllers and also quickly hide/unhide controllers by using its own Configuration Client
Consistent exclusive mode regardless of the software currently running
Hide DualShock 4 (global option)[citation needed]
  1. Under Settings tab, check "Hide DS4 Controller"

Notes

This makes the controller always show up as single XInput controller, making controller work properly with majority of modern titles.
Some software like Steam, Ubisoft Connect, GeForce Experience or UWP apps prevent this from working consistently.

Linux

Controller is natively supported since kernel 3.15.

Light Bar support

Light bar support may require additional tweaks. For games using the FNA engine, refer to the engine article; for other games, refer to the game-specific articles for details.

macOS

On macOS Catalina (10.15) or later, Bluetooth support is available natively.[7]

Chrome OS

This controller is "Plug and Play" on Chrome OS.

Steam

Capable of making full use of Steam Input due to many overlapping features with the Steam Controller.[8]
Double inputs, games with native support might see the controller as an Xbox controller.
Enable Dualshock 4 controller support[9]
  1. Turn off or disconnect the controller from the computer.
  2. Open Steam and navigate to the controller settings page:
    • In desktop mode: View -> Settings -> Controller -> General Controller Settings
    • In Big Picture mode: Settings -> Controller Settings
  3. Enable PlayStation Configuration Support (in desktop mode)/Enabled Steam Input for PlayStation controllers (in Big Picture mode)
  4. Turn on or connect the controller to the computer again.
  5. Steam should now detect the controller (usually signified by the light bar changing color) and allow the use of it in XInput-only games, while also supporting custom configs using the Steam Input controller configurator.

Notes

This feature is what causes the double input issue in games that natively support the controller. Disable PlayStation Configuration Support (in desktop mode)/Enabled Steam Input for PlayStation controllers before playing affected games to solve the issue.

Steam Link compatibility

Wired or wireless works. Press the PlayStation+Share to power up to be detected by Steam Link. All buttons are mapped correctly.
Works without any drivers on any operating system that supports Steam.
Can be used just to send input from a controller to a PC. Go into Streaming options, hit and disable video and audio streaming.
Won't work great unless the streaming device is connected to LAN or a low latency Wi-Fi.

Controller profile and remapping

Only applicable when the DualShock 4 Back Button Attachment is attached to the DualShock 4.
Unlike other game controllers with back buttons, the profiles were saved in the attachment itself, so it's possible to attach the same attachment onto another DualShock 4 controller without losing the profiles.
Because the Back Button Attachment was added in the way that they send emulated input signals to the controller through the extension port, third-party wrappers cannot remap the remappable buttons.

Switching the built-in profiles

Switching the controller profiles[10]
  1. Double-press the OLED screen on the attachment to cycle through the 3 built-in profiles.

Notes

The OLED screen will show which profile was selected.

Remapping the buttons

Remapping the buttons[10]
  1. Press and hold the OLED screen on the attachment until it enter the remapping mode.
  2. Press either Paddles buttons to scrolling through existing button inputs to bind the inputs to the Paddles buttons.
  3. To exit the remapping mode, either press the OLED screen again or wait for it to automatic exit.

Hardware

Expansions

DualShock 4 Back Button Attachment

DUALSHOCK 4 Back Button Attachment with gamepad.
DUALSHOCK 4 Back Button Attachment with gamepad.
Works perfectly fine on PC. Attachment translates their inputs to Dualshock 4 signals what makes attachment compatible with every device which supports DualShock 4 controller.
Fully configurable - 16 different functions to map to the Back Button Attachment and save up to three profiles.
Easily programmable - scrolling through every button combination on a compact digital screen and possible to assign them with a single button press.
Unlike Xbox Elite controller, Paddles cannot be rebinded by any software as attachment is not sending its own signals, just simulate existing ones.
Share button cannot be mapped to Paddle what may affect some PC configurations where Share is still treated as Select button.

PS4 STRIKEPACK F.P.S. DOMINATOR

Adding to controller two remappable paddles.
Possible to map special behaviour mods: Anti-Recoil Adjustable, Quick Scope, Auto Run, Drop Shot, Rapid Fire, Optimized Rapid Fire, Rapid Fire Adjustable, Pulse Fire Adjustable, Burst Fire Adjustable, MW Jitter, Anti-Recoil, Auto Hold Breath, Turbo Melee, Double Jump, Auto Spot, ADS and Hair Triggers.
Detachable magnetic paddles allows buy and attach alternate paddles for different hand sizes.
Requires cable connection.

DIY mods kits

eXtremeRate DTC Upgrade Kit

DIY mod kit that adds additional buttons and trigger locks.
Only compatible with the second revision of the DualShock 4 controller (JDM-040/050/055).
Requires the controller to be taken apart. Soldering is optional for have working L3, R3 and touchpad button mappings.

Adapters

XIM APEX

XIM APEX provides the highest precision mouse and keyboard (and more) experience on Xbox Series X/S, Xbox One, PlayStation 4 (PS4), Xbox 360, and PlayStation 3 (PS3). Software emulates Keyboard+Mouse inputs into signals from controllers connected to third USB port.
Supports official wireless Playstation 4 DualShock 4 controller connected with a micro-USB cable
Simple real-time smartphone and tablet-based configuration. Real-time feedback to guide you to your optimal settings.
Supports existing PlayStation 4-compatible headsets.
Firmware upgradable.
Active community forum.
Needs the controller to be plugged into USB port #3 on the XIM HUB at all times to function.

Support in games

For a list of games, see List of games that support DualShock 4.

Games with generic DirectInput support are supported by the controller, however button placements may be out of place and need to be rebound. Refer to game-specific articles for rebinding support.
Supported natively by a growing list of games, allowing the use of the controller and some/all of it supplementary features without any additional software installed.
Support for some controller features may be only available on certain systems. Refer to game-specific articles for details.

Games with controller's speaker support

Like for DualSense controller, every game which allows to select separate playback audio device for specific sounds will be supporting controller's built-in speaker, eg. Death Stranding's BB voice audio can be assigned to controller's speaker when other sounds are played from other audio device.
Number of games which split audio channels and letting assign them to different audio devices is limited and controller's speaker support is still not a PC standard.
Feature is still in development. See more.
Projects DS4 Audio Test Windows and DS4AudioStreamer are working to enable DualShock 4 speaker on Windows operation systems.

Games with motion control support

For a list of games, see List of games that support tracked motion controllers in non-VR gameplay.

Thanks to JoyShockMapper, Steam Input, reWASD application, gyro control can be remapped to mouse or right stick in any game.
Number of games which natively support motion controls is limited and gyro support is still not a PC standard.

Games with touchpad support

For a list of games, see List of games that support touchpad.

Touchpad is placed on the front of the controller, the capacitive type touchpad is a clickable 2-point touchpad with a resolution of 1920x900. The functionality of the touchpad can differ from between games. Recognized gestures: zoom, swipe, pinch and scroll.
Thanks to Steam Input, reWASD or DS4Windows application, touchpad can be remapped to mouse or right stick in any game.
Number of games which natively support touchpad controls is limited and touchpad support is still not a PC standard.

Games with Light Bar support

List of games that support PlayStation light bar

Games with DualShock button prompts

List of games with Sony button prompts

Issues fixed

Game sees two controllers/game takes two inputs at once

This is caused by using a XInput wrapper with a game that natively supports both DualShock 4 controllers and XInput devices, causing the game to use both the actual hardware and the virtual XInput controller at once.
To use the controller natively as a DualShock 4 controller, do any of the following:
  • Close any installed XInput wrappers, such as DS4Windows, SCP, InputMapper, Steam (if possible), etc.
  • Disable the global/game-specific option to wrap the controller in any installed XInput wrapper.
    • Example: Disable PS4 Configuration Support in Steam.
  • Uninstall any installed XInput wrapper.
  • Unhide the controller if it's hidden by HidHide or HidGuardian
    • Alternatively, it's possible to keep the real controller hidden but make the remapping tool (e.g.: DS4Windows) emulate a new DS4 controller
To use the controller as a XInput device, do any of the following:
  • Use HidHide to "hide" the "real" DS4 from everything besides the remapping tool that is remapping the controller into the emulated XInput device
  • Enable the Hide DualShock 4 controller option in the XInput wrapping software, if one exist.
  • Use a third-party tool like Special K that includes this functionality (set DisablePS4HID to true).

Fast movement without input

This is most likely caused by game being designed for XInput controllers only, but still taking inputs from DirectInput controllers. What this means is that game is reading Dualshock 4 controllers shoulder axis which are not centered as right stick.
See the controller glossary page for more information.
Rebind Controller Buttons
For Unity games with no launchers hold Shift to access the launcher as the game starts, then select the Input tab.
Check the wiki article for the desired game to find a different rebinding solution. Configuration files may hold such settings.
Use XInput wrapper
For Dualshock 4 specific methods, you can see OS specific solutions above. For generic DirectInput and per game solutions, see controller article.

Other information

Worn analog sticks

Worn analog sticks are a known issue and Sony should've changed rubber material for new controllers.[11] If the controller is still under warranty contact Sony or the retailer for replacement instructions.[12] Worn sticks can also be replaced manually (follow this guide).

Technical information

Original, V1: Wireless controller, HWID: 054C:05C4
New variation (released with Slim and Pro), V2: Wireless Controller, HWID: 054C:09CC
Wireless Adapter: Device name: DUALSHOCK®4 USB Wireless Adaptor , HWID: 054C:0BA0
Controller button Button label and axis
Square Button 1
Cross Button 2
Circle Button 3
Triangle Button 4
L1 Button 5
R1 Button 6
L2 Button 7, X-rotation
R2 Button 8, Y-rotation
Share Button 9
Options Button 10
Left stick Button 11, X-axis, Y-axis
Right stick Button 12, Z-axis, Z-rotation
PlayStation button Button 13
Touchpad Button 14
D-pad up POV up
D-pad down POV down
D-pad left POV left
D-pad right POV right

Input lag

Wired connection input lag: 10 ms for button press and 9.9 ms for joystick move. Values can be improved to 3.0 ms by overclocking controller's polling rate to 1000Hz. [13]
Wireless connection input lag: 2.8 ms for button press and 2.8 ms for joystick move.[13]
Connection Input lag
USB (button press) 10.0 ms (± 1.2 ms)
USB (joystick move) 9.9 ms (± 1.3 ms)
Bluetooth (button press) 3.0 ms (± 1.7 ms)
Bluetooth (joystick move) 3.2 ms (± 2.0 ms)
USB OC 1000Hz (joystick move) 2.3 ms (± 0.5 ms)
DS4v1 USB (button press) 13.9 ms (± 1.2 ms)
DS4v1 BT (button press) 4.3 ms (± 3.4 ms)


References