Skip to main content

Bind a button to a command

Press ⌘K and highlight the command, for example Play / Stop. Press ⌘L, then the button on your controller. The row now carries a MIDI badge such as CC 20 ch1.

Bind a knob to a parameter

Click or drag the parameter in Gridshift, such as a fader in the Inspector’s Mix section or a plugin control. Run Learn Last Touched Parameter (⌥⌘L) and move the knob, fader or pitch wheel.

Remove a binding

Highlight the command and press ⌘L again; the footer reads Remove MIDI. For everything else, run Show All Bindings from the Command Palette, where ↩ removes the highlighted one.

Good to know

  • A command binding runs a palette command from a button: a Note On, or a CC with a value above 0. Use it for anything you would press a key for: Play / Stop, record, loop, undo, track navigation.
  • A parameter binding moves a mixer or plugin parameter from a knob, fader or pitch wheel: a CC or Pitch Bend. Use it for what you reach for while the song plays: a track’s volume, a synth’s filter cutoff, a send. Turned during recording, it writes automation like dragging the control does.
  • Command bindings are global; parameter bindings belong to the project. Command bindings live in your library, apply in every project and follow you to your other Macs through iCloud. Parameter bindings are saved in the project file.
  • Endless rotary encoders must be in absolute mode before learning. An encoder left in relative mode makes the parameter jump between its minimum and maximum as it wraps, the same limitation as Ableton’s user MIDI Learn.
  • To map a whole controller in one pass as a reusable per-device profile, use Controller Profiles. That page also covers which wins when both bind the same control, and what neither supports.
  • You teach each control once, from the Command Palette. No vendor scripts.
  • The footer shows ⌘L MIDI Learn for the highlighted command. During learn the palette shows Learn MIDI for Play / Stop and asks you to press a button. The badge sits next to the command’s keyboard shortcut.
  • A bound button’s press is absorbed: it runs the command and does not also play the focused instrument.
  • A button bound to a command that opens a list, such as Add Effect…, opens that list in the palette. The rows inside a list cannot be bound themselves.
  • Learn waits 10 seconds, then gives up. Esc or Cancel stops it sooner. This holds for parameter learn too.
  • A released button never binds: a Note Off or a CC of 0 is ignored.
  • A parameter can be a fader or knob in the Inspector’s Mix section, a send, or a control in a plugin’s own window.
  • From the palette, parameter learn shows what it waits for, for example Learn MIDI for Volume. ⌥⌘L arms the same learn without the palette; nothing appears on screen, so move the knob right away.
  • The first CC or Pitch Bend that arrives is bound; notes are ignored while it waits. With no parameter touched since launch, Learn Last Touched Parameter does nothing.
  • The knob tracks the parameter absolutely (Ableton’s “None” takeover mode): the first value snaps the parameter to the knob’s position, then it follows 1:1.
  • Incoming values are scaled to the parameter’s range and smoothed over 20 ms, so the 7-bit steps of a CC are not audible on cutoff, volume or dry/wet.
  • A parameter binding is removed when the track, send or ducking it drives is deleted.
  • Hold a Shift button to learn a second assignment. If your controller profile has one, the binding is filed under Shift + that control, and the control keeps its plain binding as well.
Type binding in the Command Palette to find these.
Last modified on October 22, 2026