Controllers

In which I try to make the case that PlayStation controllers are superior in nearly every way.

MIDIpad names controls by what they do - the left stick Left stick, the right trigger R2 - since each controller family labels its buttons differently and I'd only end up writing four names for the same thing. The selector at the top of the manual switches every glyph and note on these pages over to your pad.

MIDIpad is primarily built for PlayStation controllers, the DualShock 4 and DualSense specifically. The Chords instrument relies on the touchpad and motion sensors for strumming, timbre and shaking, and these are the only pads that have both. I've worked hard to bring as much of the instruments as possible to other pads - the strum stick lets every pad play the strings - but there are some limitations, which are listed below.

The Controller Overlay: the connected pad drawn live, a stick held

Supported controllers

ControllerConnectionTouchpadMotionNotes
Sony DualShock 4USB or BluetoothYesYesMIDIpad is completely built around one of these, from the initial idea upwards, it's the only one that's guaranteed to work in all ways as intended.
Sony DualSenseUSB or BluetoothYesYesOne of these days I will get one of these and refine to what it's capable of, but for the moment I know that it works well.
Xbox controllersBluetoothNoNoFor some reason, Bluetooth connection works fine, but Microsoft made it do weird things when it's plugged in to non-Windows devices, so Bluetooth works, USB connection is completely haywire.
Nintendo Switch Pro ControllerBluetoothNoYesThe triggers on these things don't recognise speed or depth, so they're on-off mechanisms - please get in touch with ideas if there's anything you feel I can do to improve the experience here, these are the least tested pads.
Other gamepadsUSB or BluetoothNoNoI've tested it on an 8BitDo SN30 Pro and it works quite well, and I've tested it with a Razer Kaiju Ultimate and it was an absolute no-go. I reckon most things with two analog sticks that declares itself to macOS as a DualShock 4, which is most of them, should be at least somewhat usable - again let me know if anything weird happens.

Third-party pads

Most third-party pads present to macOS as a Sony controller, which can make things a little confusing. For instance, the 8BitDo SN30 Pro in macOS mode will be read as a DualShock 4, but it doesn't have a touchpad or motion sensors. It'll still work, but you won't be able to use the features that need them.

A pad that doesn't identify itself as a controller MIDIpad knows gets no trigger readings, so nothing on L2 or R2 works on it.

If a controller misbehaves, Help → Send Feedback… attaches the diagnostics needed for me to investigate and help fix it.

What the touchpad adds

There are two ways to play the Chords strings by hand: on the touchpad, or on the right stick, which every pad has.

Without a touchpad, everything else still works: the chord wheel, the Dominant and Parallel wheels, the suspensions and sevenths, the strum stick, the block chords, softening and muting on the left trigger, Stretch, and the shake if you've got motion sensors. Drums plays on any pad with two analog sticks and analog triggers. On a Sony pad the touchpad is a crossfader, on CC 16 unless you change it - see Drum notes and channels.

Connection behaviour

MIDIpad reads controllers at the system (HID) level, so it keeps working while your DAW is the active app. Controllers are detected as they're connected and disconnected. If you unplug one, its notes fade out as normal (with String sustain at ∞, after 20 seconds), and if you plug it back in, it's detected straight away. If another app that uses gamepads is open at the same time, things might glitch. See Connect a controller.

With one player, MIDIpad plays one controller at a time. You can have a second one connected, but it won't do anything until you turn on Multiplayer, which puts a second player on Drums.