Questions

Arcade sticks, fight sticks and leverless controllers on a Mac

Yes, a Mac can use an arcade stick, and the mode switch decides almost everything. In its PC or DirectInput mode a stick is an ordinary USB device that macOS reads with no driver. In its Xbox or XInput mode most sticks are invisible, because macOS does not support the wired Xbox 360 protocol they speak. Once the Mac sees the stick, emulators read it directly, and for games that only take the keyboard, InputConfig, the free app I make, turns every button into the key the game expects.

Steps

  1. Unplug the stick and set it to PC or DirectInput mode (or Switch, or PS4/PS5 if it has no PC mode). Avoid Xbox or XInput mode.
  2. Plug it straight into the Mac with a data cable, using a USB-C adapter on a MacBook.
  3. Check System Settings, Game Controllers, and System Information, USB, to see how the Mac reads it.
  4. In an emulator, assign the buttons in the emulator's own controls screen.
  5. For a game that only reads the keyboard, open InputConfig, press Scan on each row, press the stick button, and choose the key.

Pick the mode first

Most sticks have a slider or a button held while you plug in. The names vary by maker; this is what each one means on a Mac.

Mode on the stickWhat the Mac doesTry it
PC, DirectInput, D-input, PS3An ordinary USB HID device, no driver. Games built on Apple's controller support usually do not list it; emulators and InputConfig read it.First
SwitchOn many sticks this is a plain HID device too. A stick that presents itself as a Switch Pro Controller over Bluetooth is listed as a game controller on macOS 13 and later.Second
PS4 or PS5Depends on the stick. Licensed sticks usually carry their maker's own USB ID, so macOS may or may not treat one as a PlayStation controller. Plug it in and look.Test it
Xbox, XInput, X-inputMost sticks speak the wired Xbox 360 protocol here, which macOS does not support and InputConfig cannot read either. Nothing sees them.Last

Change modes with the stick unplugged, then plug it straight into the Mac. The manual says which button or slider sets each mode.

Check what the Mac sees

  • System Settings, Game Controllers (in the sidebar) lists only what macOS treats as a game controller. If your stick is there, native games and streaming apps see it like any pad, and you may need nothing else.
  • System Information, USB (hold Option, open the Apple menu, choose System Information) lists every USB device. A stick listed here but not under Game Controllers is a plain HID device: fine for emulators and InputConfig, invisible to most native games.
  • InputConfig shows it under Settings, Devices, marked detected over raw HID, and the Live Visualizer lights each button as you press it. If it is missing, tick it under InputConfig, Devices in the menu bar and the app opens it by hand.

A stick missing from all three is almost always a charge-only cable or Xbox mode.

Emulators read the stick directly

OpenEmu and RetroArch read USB controllers themselves, and MAME reads controllers too. Put the stick in PC or DirectInput mode, open the emulator's controls screen, and assign each button there. That is the shortest path from your hand to the game, with nothing in between, so use it wherever it works. The Emulator / Arcade layout is for the browser emulators, keyboard-only ports and MAME menu keys that are left over.

Everything else: the stick as a keyboard

Plenty of games on a Mac, and games streamed to one, read the keyboard but not a stick in DirectInput mode. InputConfig sits in between: it reads the stick and sends the keys. The lever arrives as a D-pad, so its four directions become four keys, and a diagonal holds both of them at once, which is exactly how a fighting game reads a keyboard diagonal. Each button can send one key, two keys together (a two-button Drive Parry on one button), a chord, turbo, or a macro. The fastest way to build it is Scan: press Scan on a row, press the stick button, pick the key.

What it cannot do: make the stick look like a gamepad. InputConfig sends keyboard and mouse events, so a game that only accepts a controller needs one macOS recognizes, which is where the mode table above comes in.

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

Leverless controllers: Hit Box, Snack Box, Haute42

An all-button controller is the same thing as a stick to a Mac: the directions are buttons instead of a lever, and the mode decides whether the Mac can read it. Two things are different.

  • SOCD cleaning happens inside the controller. What left plus right, or up plus down, turns into is set in the controller's own settings. The Mac and InputConfig only ever see the result, so set it there.
  • GP2040-CE has a keyboard mode. Many leverless controllers run the open-source GP2040-CE firmware. Its documentation sets the mode by the button held while you plug in: B1 for Switch, B3 for PS3/DirectInput, R2 for Keyboard (GP2040-CE's own button names). In Keyboard mode the controller is a USB keyboard, and every Mac game that takes keys reads it with no mapper at all. You choose which key each button sends in GP2040-CE's web configurator. If your controller runs it, this is the simplest setup on a Mac, and I would use it before InputConfig.

Controllers on other firmware follow the table above: PC or DirectInput first, never Xbox mode.

8BitDo and Mayflash sticks

8BitDo Arcade Stick. 8BitDo lists Switch and Windows for it, not macOS, and it has two modes, Switch and X-input. Try Switch mode over Bluetooth first: macOS 13 and later reads Switch controllers, and if the stick appears in System Settings, Game Controllers, games see it like any pad. Over a USB cable in X-input mode, InputConfig reads many 8BitDo controllers directly, but games will not see the stick that way. Test on your own Mac before you plan around it, since 8BitDo does not promise either.

Mayflash F500. Mayflash's support page documents a macOS mode from firmware V1.28 on, set by holding Select and A for three seconds, and notes that the firmware update itself has to be done on a Windows PC. Other Mayflash sticks: their PC mode is the one to try.

Hori, Razer, Victrix and Qanba sticks

These are mostly licensed for PlayStation or Xbox. A PlayStation-licensed stick is worth a test in its PS4 or PS5 mode, and in PC mode if it has one. An Xbox-licensed stick is the hard case: its Xbox mode is the one a Mac is least likely to read, so if it has a PC or DirectInput mode, use that. When a stick shows up in System Information but in no game, InputConfig can still read it and send keys. A maker's settings app for Windows or the console is separate from all of this; nothing here needs it.

On a MacBook: cables and ports

Most sticks ship with a USB-A cable and most MacBooks only have USB-C. A plain USB-C to USB-A adapter works; plug the stick straight into it rather than through a hub, since some hubs drop HID devices. If the stick lights up but the Mac lists nothing, try another cable before anything else: many cables in drawers only charge.

Which fighting games run on a Mac

Few current ones. Street Fighter 6, Tekken 8, Mortal Kombat 1 and Guilty Gear Strive have no Mac version and reach a Mac by streaming from a Windows PC or a cloud service that carries them. A stick macOS lists as a game controller usually passes through the stream; a stick it does not list can still play through the keyboard layout on each game's page. Skullgirls 2nd Encore runs natively. Retro arcade fighters run in emulators, which read the stick themselves. Streaming adds its own delay, which is the real cost of competitive play on a Mac.

Questions

Can I use a fight stick on a Mac?

Yes. Put it in its PC or DirectInput mode and plug it in; macOS reads it with no driver. Emulators use it directly, and InputConfig maps it to keys for games that only read the keyboard. Xbox mode is the one that usually does not work.

Do I need a driver for an arcade stick on a Mac?

No, not in a HID mode such as PC, DirectInput or Switch. For a stick stuck in Xbox mode, the old third-party Xbox 360 drivers were kernel extensions, which current Macs do not load without lowering security settings. Switching the stick's mode is the better fix.

Why does my arcade stick work in OpenEmu but not in a game?

The emulator reads the stick as a raw USB device. Most native Mac games only listen to controllers macOS lists under System Settings, Game Controllers, and a stick in DirectInput mode is not one. Either find a mode macOS lists, or map the stick to the game's keyboard keys with InputConfig.

Does InputConfig add input lag to a fight stick?

A little. It reads the stick 120 times a second by default, so it adds at most about 8 milliseconds before the key is sent, or about 4 at 240 Hz, set in Settings. When a game or emulator reads the stick itself, let it; that path has no mapper in it.

Can InputConfig do SOCD cleaning for a leverless controller?

No. SOCD is resolved by the controller's firmware before the Mac sees anything, so set it in the controller. InputConfig passes on whatever the controller reports.

Can I use my Mac keyboard like a Hit Box?

Yes, and you do not need a mapper for it: games that take keyboard input read the keyboard directly. InputConfig listens to the keyboard without blocking keys, so it is the wrong tool for remapping one keyboard key to another.

Can a fight stick button run a macro?

Yes. In InputConfig any stick button can send two keys at once, turbo, or a timed macro. Tournaments do not allow macros and online play follows each game's rules; where it helps is practice, and hands that cannot press two buttons at the same instant.

Related

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