Arcade Fightsticks as MIDI CC Controllers for DJing
Arcade fightsticks and modular button pads can serve as expressive, ultra-durable controllers for DJ software like Traktor, Serato, and Rekordbox. Because these devices typically output standard gamepad or Human Interface Device (HID) data rather than musical protocols, translating their inputs into MIDI Continuous Controller (CC) messages requires either software-based mapping utilities or hardware-level firmware reprogramming. This guide explains the technical pathways used to convert digital arcade switches and analog joystick axes into MIDI CC values that DJ platforms can instantly recognize.
The Signal Conversion Process
Standard fightsticks use microswitches for their buttons and directional stick. When pressed, these switches complete a circuit and send digital high/low (on/off) signals to an internal encoder board. In modern fightsticks, this encoder outputs standard XInput or DirectInput (HID) signals intended for gaming consoles and PCs.
To use these inputs for DJ software parameters, the signal must be bridged into standard MIDI messages:
- Software Bridging (Virtual MIDI): The most accessible method involves utility software such as Bome MIDI Translator, Joy2MIDI, or Fergo JoystickMIDI. The application intercepts gamepad inputs and assigns them to user-defined MIDI channels and CC numbers. These messages are then routed through an internal virtual MIDI bus (such as loopMIDI on Windows or IAC Driver on macOS), which DJ software detects as a standard hardware MIDI controller.
- Hardware and Firmware Emulation: Advanced users often swap out stock fightstick control boards with microcontrollers capable of native USB-MIDI communication, such as the Raspberry Pi Pico, Teensy, or Arduino Pro Micro (ATmega32U4). Utilizing standard USB-MIDI libraries, these boards bypass gaming protocols entirely, communicating with the computer as class-compliant MIDI devices without requiring external translation software.
Translating Digital Switches to Continuous Controllers (CC)
While DJ software typically uses MIDI Note On/Off messages for basic triggers like Hot Cues, MIDI CC is essential for controlling variable parameters such as dry/wet effects, high-pass and low-pass filters, and volume levels. Fightsticks handle CC generation in two distinct ways:
- Binary State CC Messages: Because standard arcade
pushbuttons are digital, they can be programmed to send instantaneous CC
values. A button press can transmit a maximum value of
127, and the release transmits0. This is frequently used for instantaneous audio effects, beat-repeats, or momentary "censor" cuts. Alternatively, software translators can toggle states with each press, stepping a CC value up or down incrementally. - Analog Axis to CC Translation: Fightsticks
featuring analog thumbsticks, modular rotary knobs, or optical joysticks
output a continuous range of resistance values. Microcontrollers or
software bridges read this analog voltage and scale the input directly
to the standard MIDI range of
0to127. This provides smooth, continuous sweeps ideal for DJ faders, EQ sweeps, and master crossfades.
Mapping Within DJ Software
Once the translation layer is active, mapping the fightstick operates identically to configuring an off-the-shelf DJ controller:
- Activate the device (or its virtual MIDI port) inside the DJ application's MIDI preferences.
- Enable the software's MIDI Learn or Mapping mode.
- Select the target function—such as an FX knob, stem mute, or pitch bend—and actuate the corresponding arcade button or joystick axis to bind the MIDI CC channel and number automatically.