Skip to content

Virtual HID Mini-user-mode-driver for Sony DualShock 3 Controllers

License

Notifications You must be signed in to change notification settings

nefarius/DsHidMini

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,387 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Warning

No other official website exists for this project besides this GitHub repository (github.com/nefarius/DsHidMini) and sites hosted on *.nefarius.at (e.g. docs.nefarius.at, discord.nefarius.at).

Anyone claiming otherwise is a scammer and a fraud. Do not trust other websites, download links, or people claiming to represent this project. Please be wary and only use the sources listed above.


DsHidMini logoDsHidMini

Build status GitHub All Releases GitHub issues Discord Website

Virtual HID Mini user-mode driver for Sony DualShock 3 controllers on Windows 10/11.

Version 3 (Beta)

The next major version is available for Beta-testing. Highlights: new installer and configuration app, ARM64 and Windows 11 support, LED/dead-zone/rumble customization, Xbox One emulation, and more. Follow progress on Discord or Mastodon.

Repository activity

Repository activity

Summary

DsHidMini is a self-contained user-mode driver for Windows 10/11 that presents Sony DualShock 3 controllers as configurable, standard-compliant HID devices. Games and apps can use DirectInput, Raw Input, the HID API, or XInput (via the optional XInput Bridge). The driver supports USB and Bluetooth (with BthPS3); a configuration app lets you tune modes and behavior. Full documentation: docs.nefarius.at/projects/DsHidMini.

Features

  • Bluetooth with BthPS3 (v2.0.144+); auto-pairing and idle disconnect (5 min); quick disconnect: L1 + R1 + PS for 1+ second
  • HID modes: single Gamepad (including pressure-sensitive buttons), split/multi device, Sony sixaxis emulation, DualShock 4 (for DS4Windows), Xbox / XInput for modern games
  • Rumble exposed as Force Feedback
  • LED indicates battery (wired: charging 1–4; wireless: 4 = full, 1 = low)
  • Compatibility: PCSX2, RPCS3, DS4Windows (v2.2.10+), RetroArch, x360ce, Dolphin, DuckStation; see issue #40 for XInput/DS4 notes

What's missing

See the issue tracker for known bugs and in-progress work. Not currently supported (contributions welcome where noted):

  • Motion (SIXAXIS) — gyro/accelerometer (#217)
  • Navigation Controller — mostly done (#48)
  • Motion Controller — not in scope

Repository layout

Path Description
driver/ UMDF driver: HID modes, USB/Bth, config, build (WDK, DMF)
XInputBridge/ XInput proxy DLL (XInput1_3.dll), extended API for DS3 pressure data
setup/ MSI installer (WixSharp), release packaging
ControlApp/ Configuration app (WPF)
docs/ R&D notes; official docs at docs.nefarius.at

For how the driver works (UMDF, DMF, config) and build prerequisites (Visual Studio, WDK, DMF), see driver/README.md. For the XInput Bridge build, see XInputBridge/README.md.

Building

From the repo root, run build.cmd or open dshidmini.sln in Visual Studio. Driver and bridge build steps are in driver/README.md and XInputBridge/README.md.

Licensing

This solution contains BSD-3-Clause and other licensed components; see the individual LICENSE files. Community project, not affiliated with Sony Interactive Entertainment Inc. "PlayStation", "PSP", "PS2", "PS one", "DUALSHOCK", and "SIXAXIS" are registered trademarks of Sony Interactive Entertainment Inc.

Documentation

Project page — user guides, HID modes, installation.

Installation

Pre-built binaries and instructions: releases. Installation steps: How to Install.

Support

Community support guidelines.

Sponsors

JetBrains

Sources & credits