AbleSet Icon


Controlling AbleSet with Your MIDI Controller

If you prefer controlling your setlist via MIDI instead of a phone or tablet, you can either use AbleSet's built-in MIDI mapping or AbleSet's Max for Live device.

MIDI Mapping Settings

MIDI Mapping Settings in AbleSet

To start mapping incoming MIDI to functions in AbleSet, go to the settings page and click on "Edit MIDI Mapping". This will open a page showing a list of all connected MIDI devices, like in the image above.

To map a MIDI button to a function of AbleSet, click "Add New Mapping" under the device you'd like to map, then press the desired button. AbleSet captures the incoming MIDI and adds a new mapping that you can customize by choosing which function the MIDI should be mapped to.

Currently, MIDI notes and CC values can be mapped to functions in AbleSet.

The AbleNet Toggle

Each MIDI input has its own AbleNet toggle that defines whether MIDI commands should be forwarded to other AbleSet instances on the network. If you don't run a redundant playback setup, you can leave this toggle turned off.

If you use a redundant setup where each computer receives the same MIDI signals from your controller, you should also leave this turned off to prevent commands from being executed twice.

If you're using a redundant setup where just one computer receives MIDI from your controller, you should turn this toggle on to make sure that commands are executed on your other computers as well.

Custom OSC

If you'd like to customize the mapping of your buttons further, you can map them to the "Custom OSC" function. This allows you to enter any list of OSC commands for AbleSet to run, delimited by a semicolon. For example, to stop playback and jump to the next song, you'd enter /global/stop; /setlist/jumpBySongs 1. A list of all supported OSC commands is available here.

If you'd like AbleSet to wait before sending the next command, you can add a //sleep statement. For example, to sleep 2.5 seconds between stopping and jumping to the next song: /global/stop; //sleep 2500; /setlist/jumpBySongs 1.

OSC commands can also be sent to external servers. This allows you, for example, to control digital mixers or light desks. To send a command to an external OSC server, simply add its IP address and port to the beginning of the command, for example: ON. You can combine those commands with AbleSet commands. For example: /global/play; ON.

Max for Live Device

AbleSet's Max for Live device

If you prefer controlling your setlist via MIDI instead of a phone or tablet, you can use AbleSet's Max for Live device.

With AbleSet 2, you can find the controller by going to AbleSet's settings and clicking on "Get AbleSet Controller". If you're using a AbleSet 1, you can download the legacy controller device here.

To use this device, just drag it on any audio or MIDI track in your Ableton session. The controller will connect to AbleSet automatically. You can then map any of the functions to your MIDI controller as you're used to.

The Play, Pause, Next Song, and Prev. Song buttons are self-explanatory, but the Play Cued Song button has a special behavior. It only plays the next song after playback has been stopped by a

STOP (or
) marker, or the current song if playback is stopped and the playhead is on the start marker of a song. This is a safety measure that prevents accidental skips to the next song while the current song is still playing. In the most minimal setup, you only need to map this button to your MIDI controller.

In addition to the control functions, the controller sends more detailed playhead information to AbleSet 2 which is used to improve the position display in AbleSet.