Controller Support Status
Controlify uses SDL3 to communicate with most controllers, so a controller supported by SDL3 will usually provide its standard buttons, sticks, and triggers to Controlify. This is not a guarantee that every controller or every feature exposed by SDL3 will work. Support can also change with the controller's mode, connection type, operating system, and system driver.
This page records combinations that have been tested or whose behaviour is otherwise known. It deliberately does not assume that similar controllers behave the same way.
Features Controlify understands
The status table below refers to these Controlify features. A controller may have additional hardware that Controlify does not currently use.
| Feature | Current Controlify support |
|---|---|
| Standard input | Buttons, sticks, analogue triggers, and directional pads can be bound to Minecraft actions. |
| Rumble | Standard dual-motor rumble and trigger rumble work when the controller and its driver expose them. |
| Extra inputs | Paddles, mute buttons, and other extra inputs can be bound when the driver exposes them independently. Buttons remapped in controller firmware are not independent inputs. |
| Gyroscope | Gyro input can control the camera for motion aiming. |
| Accelerometer | Not supported. A driver may expose acceleration data, but Controlify does not use it. |
| Touchpad | Touchpad clicks can be bound as buttons when the driver exposes them. Touch position, movement, and gestures are not currently used. |
| HD haptics | Experimental DualSense HD haptics are supported for the USB combinations recorded below. Controlify currently uses them only for GUI navigation effects, though add-on mods can provide more effects. |
| Adaptive triggers | DualSense adaptive trigger effects are supported for in-game item actions. |
| Battery level | Controlify can report battery state and warn when charge is low if the driver provides reliable battery information. |
Tested support status
- ✅ Works out of the box: no controller-specific setup or additional software is required.
- 🛠️ Additional setup required: open the controller's linked setup guide.
- 🟡 Partial support: the controller or driver exposes only part of the feature to Controlify.
- ❌ Unsupported: this combination does not make the feature available to Controlify.
- — Not applicable: the feature is not relevant to this row.
| Controller | Connection | Operating system | Standard input | Rumble | Extra inputs | Gyro | Touchpad | HD haptics | Adaptive triggers |
|---|---|---|---|---|---|---|---|---|---|
| XInput-compatible controller | — | Windows | ✅ | ✅ | — | — | — | — | — |
| Xbox Elite Series 2 | USB | Windows | ✅ | ✅ | ❌ | — | — | — | — |
| Xbox Elite Series 2 | USB | Linux | ✅ | ✅ | ✅ | — | — | — | — |
| Xbox Elite Series 2 | USB | macOS | ✅ | ✅ | ✅ | — | — | — | — |
| Sony DualSense | USB | Windows | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Sony DualSense | Bluetooth | Windows | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| Sony DualSense | USB | Linux | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
| Sony DualSense | Bluetooth | Linux | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
| Sony DualSense | USB | macOS | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| Sony DualSense | Bluetooth | macOS | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| Steam Deck | Built in | SteamOS | ✅ | ✅ | ❌ | ❌ | ❌ | — | — |
| Steam Deck | Built in | Windows | ✅ | ✅ | ✅ | ✅ | ✅ | — | — |
| Google Stadia | USB | Windows | ✅ | ✅ | ✅ | — | — | — | — |
| Google Stadia | USB | Linux | ✅ | ✅ | ✅ | — | — | — | — |
| Google Stadia | USB | macOS | ✅ | ✅ | ✅ | — | — | — | — |
| Google Stadia | Bluetooth | Windows | 🛠️ | ❌ | 🛠️ | — | — | — | — |
| Google Stadia | Bluetooth | Linux | 🛠️ | 🛠️ | 🛠️ | — | — | — | — |
| Google Stadia | Bluetooth | macOS | 🛠️ | 🛠️ | 🛠️ | — | — | — | — |
A controller is missing
An unlisted controller is not necessarily unsupported. It only means its exact controller mode, connection, and operating-system combination has not been added to this page yet. If its standard controls are supported by SDL3, they will usually work with Controlify even when its controller-specific features have not been tested.
When reporting results, include the exact controller model, controller mode, connection type, operating system, and which of the features above you tested. This lets the table grow from verified results rather than assumptions based on similar hardware.