Repository navigation
Home
xsyetopz edited this page Oct 15, 2026
·
5 revisions
OpenJoystickDriver (OJD) lets you use game controllers on macOS that macOS does not support natively.
Note: These pages apply to OpenJoystickDriver 0.6.0-alpha.1 and later. Version 0.5.0-beta.4 and earlier do not have all of the features in these pages.
- Getting started: Learn what OJD is, install it, and use your first controller.
- Using the app: Learn the menu-bar item, the app window, and the tools in each pane.
- Testing a controller: Show live input from a controller, and test rumble and lighting.
- Supported controllers: See which controllers people tested, what each tier means, and how OJD treats clone and generic HID controllers.
- Connecting controllers: Learn how USB, Bluetooth, and dongle connections differ, find the VID:PID of your controller, and use the Xbox USB driver extension.
- Controller records: Add a controller that OJD does not know, or change how OJD drives a known one.
-
Writing controller mods: Package controller records, profiles, and personas in a folder, and install it with
ojd mod.
- Playing games: Learn how games see your controller, which games and apps work, and what to expect from rumble and lighting.
- Remapping profiles: Create, activate, import, and export profiles.
- Bindings and actions: Assign buttons and actions, and use combinations, sequences, and layers.
- Sticks, triggers, touchpad, and motion: Change how analog controls produce output.
- Profile file reference: Read where OJD stores profiles, and their shape and limits.
- Permissions and security: Learn which macOS permissions OJD needs and how OJD protects your Mac.
- Updating and uninstalling: Get a new version, or remove OJD and its data.
- Command line: Control OJD from Terminal, and read its output formats and exit codes.
-
Command reference: Look up every
ojdcommand and option. -
Automating OpenJoystickDriver: Use
ojdin scripts, read its JSON output, change profiles, and drive a virtual gamepad. - WebRTC bridge: Play on one Mac with a controller that is connected to another Mac.
- Troubleshooting: Fix a controller that is not detected, a game that does not see the controller, and crashes.
- Known issues: Read current bugs and limits, with a workaround for each.
- Error codes: Look up the meaning of an error code and how to fix it.
- FAQ: Read short answers to common questions.
- Reporting a bug: Learn what to include in a bug report.
- Building from source: Build OJD yourself to get a fix before the next tester build.
Architecture, signing, release, and hardware test records are in the contributor documentation.
- Home
- Start here
- Controllers
- Games
- Remapping
- Your Mac
- Command line
- Help
- Advanced