Questions

Can Karabiner-Elements map a game controller?

Partly, and less than most people need. Karabiner-Elements is the best keyboard customizer on the Mac, free and open source, and it is built around keyboards and mice. Since version 14.13, released in December 2023, it also reads some gamepads: its release notes say DirectInput devices are supported and XInput devices are not supported at all, and later versions added a deadzone for using a gamepad stick as the pointer. So whether your pad appears depends on the pad and its mode. The other common route is a pad that can pretend to be a keyboard, such as an 8BitDo Zero 2 in keyboard mode, which many Anki users set up. If you want a controller to send keys and move the mouse in every app, a mapper built for controllers is the shorter path.

Mapping a controller to keys instead

  1. Install InputConfig and allow Accessibility access.
  2. Pair the controller normally; it stays a controller.
  3. Add a row, press Scan, press a button, and pick the key it should send. Sticks can drive the mouse or four keys.
  4. Activate. It works in every app.

For Anki specifically, the Anki guide has a ready layout.

Download InputConfig on the Mac App StoreInputConfig is free on the Mac App Store. macOS 14 or later, no account, no tracking, open source.

Use both

They do not compete. Karabiner-Elements for the keyboard, such as Caps Lock to Escape, which InputConfig cannot do because it adds actions rather than replacing keys; InputConfig for the controller, MIDI gear, and extra mouse buttons.

Looking for a Karabiner-Elements alternative?

Most people who search for one want something simpler, or something that installs no driver. The right answer depends on the job:

  • Swap Caps Lock, Control, Option, Command or Globe: macOS does it in System Settings, Keyboard, Keyboard Shortcuts, Modifier Keys. Nothing to install.
  • Turn one key into another until the next restart: macOS's own hidutil command in Terminal. The right Command and Option keys page has commands you can paste.
  • A Hyper key on Caps Lock: the small Hyperkey app, or a Karabiner-Elements rule.
  • Macros, hotkeys and per-app rules with a visual editor: BetterTouchTool or Keyboard Maestro, both paid.
  • Remapping with layers, written as a config file: Kanata, free and open source. On a Mac it relies on the same virtual keyboard driver Karabiner-Elements uses.
  • Give spare keys, mouse buttons, a controller or a MIDI pad a job: InputConfig, the free app I make. It installs no driver. It adds a job to a key and leaves the key's own job in place, so it cannot swap two keys, but it is good at F13 to F19, held right-hand modifiers and a different job for the same key in each app.

Questions

Does Karabiner-Elements support Xbox or PS5 controllers?

No. It remaps keyboards and mice. A controller needs a controller mapper such as InputConfig.

Can I use an 8BitDo controller with Karabiner-Elements?

Only a model that can switch into a keyboard mode, such as the 8BitDo Zero 2. In its normal modes it is a game controller, which InputConfig reads directly.

How do I set up an Anki remote on a Mac with Karabiner-Elements?

Pair the remote in keyboard mode, give Karabiner-Elements Input Monitoring access, and write a rule that turns each key the remote sends into Space, 1, 2 or 4. The simpler route is to pair it in a controller mode and use a mapper instead; the Anki remote page has both.

Why does my 8BitDo not show up in Karabiner-Elements?

Karabiner-Elements is built for keyboards and mice, and its release notes say its gamepad support covers DirectInput devices only, so a pad in another mode may not appear. An 8BitDo with a keyboard mode, such as the Zero 2 or the Micro, shows up as a keyboard in that mode. To use it as a controller instead, InputConfig reads it in the modes on the 8BitDo connection page.

Is there a Karabiner-Elements alternative with no driver?

For swapping modifier keys, macOS itself: System Settings, Keyboard, Keyboard Shortcuts, Modifier Keys. For one key to another until you restart, the built-in hidutil command. For giving spare keys, mouse buttons and controllers a job, InputConfig, which installs no driver and adds to a key rather than replacing it.

Related

Download InputConfig on the Mac App StoreFree. macOS 14 or later. No account, nothing leaves your Mac. Open source on GitHub.