Controllers for Mac
A little help.
More time to play.
Get connected, make your first layout, and troubleshoot your setup.
Your first layout
- Connect and power on your controller. Use a USB cable or the Bluetooth button at the bottom left of Controllers.
- Grant permission in System Settings → Privacy & Security → Accessibility. On older macOS versions, use System Preferences → Security & Privacy → Privacy.
- Create a layout with the plus button, then select your controller and layout.
- Press a controller button and assign a keyboard key, key combination, mouse action, or scrolling action.
- Set the main On/Off toggle to On and open your game.
Make the most of your layouts
Create different layouts for different games. Configure per-app switching to change layouts automatically with the foreground app. Export your layouts as JSON for backup or sharing, and use the menu bar icon for quick switching.
Connecting your controller
Start with your controller family below. Features vary by model, firmware, and connection; Controllers Lite can help you check the inputs your Mac receives.
| Controller | Connection | Notable inputs |
|---|---|---|
| DualSense, DualSense Edge, DualShock 4 | USB or Bluetooth | Buttons, sticks, triggers, touchpad, and gyro. Edge also has paddle and Fn bindings. |
| Xbox One, Series, and Elite | USB; Bluetooth on equipped models | Buttons, sticks, and triggers. Paddle availability depends on model and connection. |
| Xbox Adaptive and PlayStation Access | Supported USB or Bluetooth connections | Map the buttons and axes reported by your adaptive setup. |
| Nintendo Joy-Con and Pro controllers | Connection varies by generation; see pairing notes below | Buttons, sticks, and supported motion controls. Joy-Cons can use separate layouts. |
| MFi and generic HID gamepads | Connection supported by the device | Available buttons, axes, and D-pads. Extra features vary. |
PlayStation
DualSense and DualSense Edge work over USB or Bluetooth. For Bluetooth, hold PS + Create until the light bar blinks. On DualShock 4, hold PS + Share. Buttons, sticks, supported touchpads, and motion can be mapped.
Xbox
Supported Xbox One, Series, Elite, and Adaptive controllers can connect over USB or, on Bluetooth-equipped models, wirelessly. Use the in-app connect panel or macOS Bluetooth settings. Older models may require a compatible adapter.
Nintendo Switch
For Switch 2 controllers, use the in-app Bluetooth panel: they do not appear in macOS Bluetooth Settings. Hold the sync button until the lights sweep, then click Connect. Switch 1 Joy-Cons can be paired separately over Bluetooth. Connection options vary by model; consult the in-app help for your controller.
Other controllers
Controllers also supports MFi and generic HID gamepads. Available mappings depend on the inputs reported by the device. Try Controllers Lite to check your setup before buying. There is no Windows or iOS version of Controllers.
Troubleshooting
My mappings do nothing
Check Accessibility permission, quit and reopen Controllers, and confirm the global toggle is On. Select your controller, assign a layout, and check that its buttons have bindings. Quit other remapping apps while testing.
My controller doesn’t appear
Confirm the controller is powered on and in pairing mode. Try a supported USB connection. For Switch 2 Bluetooth, use the in-app connect panel. Some older controllers require an adapter.
My game receives double inputs
The game may be reading the controller directly as well as the mapped keyboard input. Select the controller and use the lock button to enable Exclusive mode, where supported. Turn it off when you want the game to read the controller natively.
My motion cursor drifts
Hold the controller still for a second or two so the rest bias can calibrate. Check motion sensitivity, dead zone, and hold/toggle settings. Motion bindings require a controller with a supported gyro.
Does Controllers support rumble?
Controllers maps input. It does not control rumble, controller LEDs, or controller audio.
Still need a hand?
Email hello@vividmachine.com with your macOS version, controller model, and connection type. You can also ask the Controllers assistant or watch the tutorials.