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

Controller:DualShock 3

From PCGamingWiki, the wiki about fixing PC games
This page is a stub: it lacks content and/or basic article components. You can help to expand this page by adding an image or additional information.
DualShock 3
DualShock 3 cover
XInput support
Connection method
USB-Mini, Bluetooth v2.1+EDR
Predecessor
Sixaxis
DualShock 2
Successor
PlayStation Move
DualShock 4
DualShock 3 on Wikipedia

The DualShock 3 is a game controller developed by Sony Interactive Entertainment and manufactured by Sony, released on November 11, 2007. It was the primary controller for the PlayStation 3 console.

The DualShock 3 added the 6-axis motion control capability with its motion sensors. It also phased out the proprietary PlayStation controller port in favor of Mini-USB port. There also are minor changes to the button layout compare to its predecessor; The pressure-sensitive L2 and R2 buttons had been replaced with the analogue triggers, the analogue mode button was replaced by a PlayStation button. The controller can be used wirelessly via Bluetooth and is powered by a built-in rechargeable lithium-ion battery. Analogue joysticks and pressure-sensitive buttons has been upgraded with 10-bit precision reading and Rumble motors are retained.

The DualShock 3 is preceded by Sixaxis, which was launched alongside the PlayStation 3 console on November 11, 2006. While it share many features with DualShock 3, it lacks the rumble motors. The Sixaxis would later be phased out and replaced by the DualShock 3.

Despite using the standardized Mini-USB port and Bluetooth connectivity, using the DualShock 3 requires the use of special drivers because of the use of pressure-sensitive buttons, but even then, it is mostly treated as a DirectInput controller, requiring the use of third-party wrappers in games that only support XInput API. Special drivers also exposes the gyroscope function. There are also reports of software conflict when MotionInJoy and Better DS3 were installed, requiring both software to be uninstalled in order to use the controller properly (See Removing MotionInJoy.). Some software, like the RPCS3 and PCSX2 emulators, can support the DualShock 3 natively without special driver.

General information

PC Games with DualShock 3 support
DualShock 3 on PS3 Developer Wiki

Inputs

  • Motion sensing: 3 axes, 6 degrees of freedom
  • 2 × clickable analog sticks (10-bit precision): L3, R3
  • 2 × analog triggers: L2, R2
  • 2 × pressure-sensitive shoulder buttons: L1, R1
  • 4 × pressure-sensitive action buttons: △ ᴛʀɪᴀɴɢʟᴇ, ○ ᴄɪʀᴄʟᴇ, × ᴄʀᴏss, □ sᴏ̨ᴜᴀʀᴇ
  • 4 × pressure-sensitive directional buttons (d-pad): , , ,
  • 3 × digital buttons: ► sᴛᴀʀᴛ, ◼ sᴇʟᴇᴄᴛ, PlayStation

Controller variations

The Sixaxis controller is an earlier variant of the DualShock 3 controller, lacking haptic feedback. See Sixaxis.

Use with PC platforms

Windows

Windows 10 has no native drivers; drivers are needed. When the gamepad is plugged in for the first time, Windows 10 detects it and the device shows up as a placeholder device. Once the official drivers is installed, the device acts as a DirectInput gamepad. All buttons are tested to work under Windows "Game controller settings".
Supported features reWASD DS4Windows DsHidMini SCP Steam Gamepad Phoenix
Virtual Xbox controller emulation [N 1]
Virtual DualShock emulation [N 2] [N 3] [N 3]
Vibrations
Bluetooth connection ~ [N 4] ~ [N 5] ~ [N 5]
Pressure-Sensitive Buttons [N 6]
Motion Control [N 7]
LEDs [N 8]
Dead-zone adjustment
Multiple controllers
Wireless Keypad
Keyboard & Mouse input emulation
Virtual Nintendo controller emulation [N 9]
Retro DInput/WinMM compatibility
Battery status [N 10]
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. 3.0 3.1 Allows using controller as DualShock 4 virtual controller.
  4. Blocks whole Bluetooth adapter. Requires a supported Bluetooth 2.0 (or higher) compatible USB dongle with EDR (Enhanced Data Rate).
  5. 5.0 5.1 Requires third-party software installed like DSHidMini or DS4Windows
  6. Every button has three activation stages which can activate different action depends how hard button is pressed.
  7. Allows only to forward motion control data to emulators, but it's not possible to remap gyro to eg. mouse.
  8. LED shows which config slot is active at the moment.
  9. Allows using controller as virtual Switch Pro Controller.
  10. LEDs are used as charge indicator. It flashes when it battery enters low/dying state.

reWASD

Supports DualShock 3 controller via Bluetooth adapter or cable, does not require manual driver installment.
Allows to remap pressure sensitive face buttons. Every button has three activation stages which can activate different action depends how hard button is pressed.
LED shows which config slot is active at the moment.
Can emulate an virtual DS4 controller to play PS4 Remote Play, PS Now or Dualshock 4 compatible games. Including gyro and accelerometer control.
Can emulate an virtual Xbox 360 controller to play XInput-compatible games.
Supports analog face buttons feature which can be remapped to High, Medium and Low zones.
Motion related functions not supported.
Not free of charge. 14-days trial.
Custom configs for DualShock 3 controller can be found in official Community Configs Library maintained by reWASD users.

DS4Windows

Needs to be running under DsHidMini driver and in DS4Windows Mode.
Requires BthPS3 for Bluetooth connection (covered on DsHidMini installation guide).
Bluetooth 2.0 + EDR or higher required for wireless connection.
Rumble works as normal, though the small motor has only one strength level.
LEDs can be controlled by setting the correct lightbar colors (more on this here).
Pressure sensitive buttons not supported.
Motion related functions not supported.
Ryochan7's build not longer being maintained since January 1, 2024.

Wired connection - official drivers

Third-party application DS4Windows allows to use accelerometer and gyro with official drivers.
Third-party application reWASD allows to use pressure-sensitive buttons, connect controller wirelessly and emulate virtual DualShock 3 controller with official drivers.
Setup
There is no need to have a program running in the background, once the drivers are installed the controller works.
While the drivers might be official, they don't work on nearly as many games as the unofficial ones due to not supporting the 360 controllers Xinput, and to make matters even worse, not using conventional input values.
  1. Plug in the Dualshock 3 or SIXAXIS controller into the computer, and if prompted, install the dummy drivers. These are not designed to make the controller usable, they are just there to make it so windows can identify them.
  2. Download and install the Official DualShock 3 drivers v3.0.0.0 for Windows and install it.

Notes

If the installer gets stuck, take a toothpick or a needle and press down the reset button in the small hole on the back of the device.

Wired connection - unofficial drivers

Using ViGem Drivers
Development of DsHidMini is still active.
DualShock 3 can be used as virtual DualShock 4 controller.
No background program or service needed to use the controller.
Only supports Windows 10, older versions will not work. Windows 11 is partially supported and work-in-progress as of writing.
Instructions[1]
  1. Make sure no other DS3 drivers, like SCPDriver/XInput Wrapper/Fireshock/Sixaxis(Official driver), are installed.
  2. Download DsHidMini from here
  3. Download and extract the attached dshidmini_vX.X.X.X.zip archive.
  4. Make sure you know your architecture:
    • On x64 navigate to x64\dshidmini
    • On x86 navigate to x86\dshidmini
  5. Right-click on dshidmini.inf and select Install, continue until the driver is installed.
  6. Right-click on igfilter.inf and select Install, continue until the driver is installed.
  7. Connect your controller via USB
  8. With your controller connected by USB, open the DsHidMini Control Utility (the DSHMC.exe file that comes along the driver archive) to see if the controller gets detected
    • Run it as Administrator to change settings, check the documentation for details.
    • It is not required to keep the utility running for the driver to function, only if you want to observe battery level or change settings.
Using SCPDriver/XInput Wrapper
Supports Windows XP and up.
No longer maintained[2].
Instructions
  1. Plug-in the controller and let Windows install any drivers if prompted.
  2. Download the DualShock XInput Wrapper.
  3. Push Win+R and type %SystemDrive% then select OK and extract the ScpServer folder in that location.
  4. Now perform the following based on the operating system:
    • Windows 10, 8.x:
      1. Run ScpServer\Binaries\SCPDriver.exe and uncheck the Bluetooth checkbox then select Install.
      • If the controller still does not connect (may involve the controller number LEDs all flashing), uninstall and then retry while having Force Install checked before selecting Install again.
    • Windows 7:
      1. Download and install the Xbox 360 Controller Drivers.
      2. Run ScpServer\Binaries\SCPDriver.exe
      3. Check the Force Install checkbox and uncheck the Bluetooth checkbox then select Install.
    • Windows Vista, XP
      1. Run ScpServer\Binaries\SCPDriver.exe
      2. Check the Force Install checkbox and uncheck the Bluetooth checkbox then select Install.
      3. Download and install the Xbox 360 Controller Drivers.

Bluetooth connection

Using ViGem Drivers
Can use other Bluetooth Devices.
No background program or service needed.
Instructions[3]
  1. Install BthPS3.
  2. Follow Using ViGem Drivers wired setup.
  3. Controller should've been paired after connecting from USB if you have active supported Bluetooth dongle.
Using SCPDriver/XInput Wrapper
Other Bluetooth devices cannot be used.
Instructions
  1. Plug-in the controller and let Windows install any drivers if prompted.
  2. Download the DualShock XInput Wrapper.
  3. Push Win+R and type %SystemDrive% then select OK and extract the ScpServer folder in that location.
  4. Now perform the following based on the operating system:
    • Windows 10, 8.x:
      1. Run ScpServer\Binaries\SCPDriver.exe and check the Bluetooth checkbox then select Install.
    • Windows 7:
      1. Download and install the Xbox 360 Controller Drivers.
      2. Run ScpServer\Binaries\SCPDriver.exe
      3. Check the Force Install checkbox and check the Bluetooth checkbox then select Install.
    • Windows Vista, XP:
      1. Run ScpServer\Binaries\SCPDriver.exe
      2. Check the Force Install checkbox and check the Bluetooth checkbox then select Install.
      3. Download and install the Xbox 360 Controller Drivers.
  5. Push Win+R and type control printers then select OK.
  6. Insert the Bluetooth dongle, then copy the last name which shows up.
  7. Run ScpServer\Binaries\zadig\zadig.exe
  8. Under Device select Load Preset Device and Bluetooth.cfg then select Open.
  9. Under Options select List All Devices.
  10. Select the name found in control printers from the dropdown menu, then select Replace Driver.
  11. Unplug the controller.

Notes

Pair the controller to the desired computer by plugging it in. Unplug it to use it with the Bluetooth dongle.
If the controller isn't working push the central Home button to turn it on, plug it into the desired computer, then unplug it.
If the device isn't being paired try reinstalling the DualShock 3 Driver.
Bluetooth Driver Removal
If the instructions didn't work then remove the Bluetooth drivers and try something else.
If the device manager asks to restart select No.
Instructions
  1. Plug-in the desired Bluetooth device.
  2. Push Win+R and type devmgmt.msc then push OK.
  3. Find the desired Bluetooth device under Universal Serial Bus devices.
  4. Right Click on it then select Uninstall and select the Delete the driver software for this device checkbox.
  5. Unplug the Bluetooth device, then plug it in again.
  6. Find the desired Bluetooth device under Bluetooth.
  7. Right Click on it then select Uninstall and select the Delete the driver software for this device checkbox.
  8. Unplug the Bluetooth device, then plug it in again.
  9. Reinstall the drivers for the appropiate device. See Bluetooth.

Notes

If the drivers are not working find them on the manufacturer's website.

XInput wrapping

With certain adapters and/or software it acts as a DirectInput controller, making it possible to use any of the generic wrappers. See the controller article for those.

macOS

OS X 10.7 and Newer
  1. Plug-in the desired controller and ignore the Pairing Request.
  2. Go to Bluetooth Preferences.
  3. Select Connected and Configured and deselect Paired if needed.
  4. Find the PlayStation3 controller in the list, and add it to the favourites.
OS X 10.6 and Older

Download and install this driver.

Linux

Native support in modern kernels.
To use Bluetooth connection, controller has to be connected via USB first.

Steam

Controller can be found in Supported Controller Database and it's correctly recognizable as PlayStation DualShock 3 controller.
Natively supported wired and wireless (since beta build 554). To pair over Bluetooth: connect via USB cable press PlayStation button. Unplug USB cable then press again PlayStation button and now DualShock 3 works over Bluetooth.
Not capable of making full use of Steam Input. Does not include support for the DS3 gyro or analog face buttons. Gyroscope is not visible in configuration menu.
If you’re using a DS3 on Windows you’ll have to obtain the Sony driver through PlayStation Now.

Steam Link compatibility

Natively supported wired and wireless (since beta build 554).[4]
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.
To pair over Bluetooth connect via USB cable press PlayStation button. Unplug USB cable then press again PlayStation button and now DS3 works over Bluetooth.
Some clones (CECHZC2H Bluetooth DualShochIII and OUBANG PS3 Controller Wireless Dualshock3) won't work wirelessly.[5]
Won't work great unless you connect it to LAN or a low latency Wi-Fi.

Hardware

Adapters

Mayflash Wireless PS3 Controller to USB Adapter

All controllers that can be paired and work with regular PlayStation 3 should work, including third party ones.
Has switch on side of adapter, allowing for both XInput and DirectInput modes natively. XInput should work with regular drivers, for rumble to work with DirectInput mode, drivers needs to be downloaded manufacturers website.
Can connect one controller in XInput Mode and four controllers in DirectInput Mode.
Includes turbo mode. Pressing PlayStation and button toggles turbo for that button. To disable turbo for all buttons press PlayStation button twice quickly.

8BitDo Wireless USB Adapter or USB Wireless Adapter for PS classic edition

All controllers that can be paired and work with regular PlayStation 3 should work, including third party ones.
Supports X-input, D-input, Mac mode, Switch mode.

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 3 DualShock 3 controller connected with a mini-USB cable
Simple real-time smartphone and tablet-based configuration. Real-time feedback to guide you to your optimal settings.
Firmware upgradable.
Active community forum.
Needs your controller plugged into USB port #3 on your XIM HUB at all times to function.
PlayStation 3 headsets and chatpads are unsupported.

Expansions

Wireless Keypad

Does not work in games.

Issues fixed

Controller no longer detected or working (Windows)

Instructions
  1. Plug-in the desired controller.
  2. Run ScpServer\Binaries\SCPDriver.exe and select Uninstall. Check the Bluetooth Driver checkbox if needed.
  3. See PS3 Controller on Windows.

Playing with multiple PlayStation 3 Controllers on Windows

Set up the Xbox 360 Controller Emulator, then play the desired multiplayer game with multiple controllers.

Support in games

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.

Games with pressure sensitive face buttons support

For a list of games, see List of games that support Pressure-Sensitive Face Buttons.

Pressure-sensitive face buttons are supported in PlayStation emulators PCSX2[6] (thanks to DsHidMini) and RPCS3[7].
Xbox emulator Cxbx-Reloaded do not recognize pressure-sensitive face buttons from Playstation controllers yet. Controller will require Xbox OG Controller emulation to be recognized.
Pressure-sensitive face buttons are recognized by PC games thanks to reWASD application which allows to remap their three pressure zones (low, medium, high) to any key.
Mod GInput for GTA III, Vice City and San Andreas enables support for DualShock 3 controllers and SCP Driver Package or DsHIdMini driver - including pressure sensitive buttons and SIXAXIS accelerometers[8].

Games with motion control support

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

Accelerometer is supported in emulators like RPCS3[7], Cemu (via Cemuhook[9]) or Dolphin (via DSU protocol[10]).
Mod GInput for GTA III, Vice City and San Andreas enables support for DualShock 3 controllers and SCP Driver Package or DsHIdMini driver - including pressure sensitive buttons and SIXAXIS accelerometers[8].
Number of games which natively support motion controls is limited and accelerometer support is still not a PC standard.

Games with DualShock button prompts

List of games with Sony button prompts

Other information

Removing MotionInJoy

Due to the way MotionInJoy behaves a full reformat is advised instead. The following steps could potentially harm Windows, backup any important files before following these instructions.
MotionInJoy should be always treated as malware due to its odd and overall harmful behaviour. It can trigger BSODs, crashes and other major system issues.
Instructions[11]
  1. Download Geek Uninstaller, then extract it anywhere.
  2. Find MotionInJoy in the list, then Double Click on it, select Finish when asked to remove any leftover items.
  3. Open a command prompt as an admin.
  4. Type and run pnputil.exe -e, and find MotionInJoy's *.inf ID, under the Published name field.
  5. Replace the star with MotionInJoy's ID in the following command pnputil.exe -f -d *.inf and run it.
  6. Navigate to %WINDIR%\System32\drivers\ and remove MijXfilt.sys.

Notes

Geek Uninstaller is portable and as such can be easily removed afterwards.
Deleting any system files in use could potentially break the current Windows installation.
Overridden Bluetooth Driver
  1. Plug-in the desired Bluetooth device.
  2. Open Devices and Printers, and find the desired device.
  3. Right Click on the device, select Properties, the Hardware tab, and Properties again.
  4. Select Change Settings, Authenticate, the Driver tab, and Uninstall.
  5. When asked to remove the device's software select OK.
  6. Remove and plug-in again the desired device.

Technical information

Wireless controller, HWID: 054C:0268

Input lag

Wired connection input lag: 13.6 ms for button press and 10.1 ms for joystick move.[12]
Connection Input lag
Wired (button press) 13.6 ms (± 2.9 ms)
Wired (joystic move) 10.1 ms (± 2.9 ms)
Bluetooth (button press) ?
Bluetooth (joystic move) ?


References