HeartBeat

MIDI & Link

HeartBeat is as happy sequencing a rack of hardware as it is its own devices. Every track can have its own output, every keyboard and controller connects directly, the clock is sample-accurate, and a learn mode lets you put nearly everything on screen under a knob.

MIDI learn

Tap the radio-waves button next to the transport. It's also where the in and out activity lights live; the OUT light means notes and CCs, not clock. Every control that can be mapped gets a cyan outline. Tap one, move something on your controller, and that's the mapping made. Controls that already have a binding wear a cyan dot, and a long press on an outline clears its binding.

Long-press the learn button to choose what new mappings bind to:

ModeMeaning
Visible pageEight knobs follow whatever page is showing: the TRG cells, the current knob page, the LFO rows. With a step latched they write p-locks.
Pinned trackThe controls stick to the track that's selected right now, wherever you go afterwards.

The mode only matters when you make a mapping. Everything you've mapped stays live at the same time, and one hardware control can hold one binding per mode.

Tip If you set a Control Surface in Settings → MIDI Setup, HeartBeat sends state back to it: motorised knobs and LEDs follow the app, flipping a page re-seats the visible-page bank, and a supported surface is set up for you the moment it connects. Turning a mapped knob also brings its page onto the screen.

Sequencing hardware

A MIDI track's first CC page: eight named knobs, each showing its CC number on the knob face

Getting MIDI in

Every MIDI source the system knows about connects to HeartBeat directly: USB, Bluetooth, the network, other apps' outputs. Plug in a keyboard and it plays, and records onto, the selected track, through whatever device that track is running. You don't need a router app. Connections follow plugging and unplugging, and if the app hears its own recent output echoed back it ignores it.

Where a note lands works the way it does on a hardware groovebox. In Settings → MIDI Setup, Auto Channel is the channel that always plays the selected track, either Any (the default) or one specific channel, and Auto Channel Source can narrow that to one input. In the track sheet, each track's MIDI In card gives it an Input Device (Any, or one source) and an Input Channel (Off unless you set one), so a keyboard on channel 5 can always play track 5 whatever's selected. The order is: a specific auto channel wins on its own channel; then a track whose input channel and device match takes the note; then, if Auto Channel is Any, the selected track takes it; anything left is ignored. Recording lands on whichever track received the note. The on-screen keys and pads always play the selected track.

The MIDI Setup page: Control Surface, MIDI Input with its tick boxes and auto channel, Sync In, the Sync Out grid and Latency Compensation
Tip If a router app is still sending a device to HeartBeat In while that same device is also connected directly, you'll hear every note twice. Switch one of the two off.

Clock and transport sync

Settings reference

SectionRows
AudioOutput Device (the system route picker), Master to Channels on multi-output interfaces, Buffer Size (Automatic, or 64 to 1024 frames: smaller is tighter and works the engine harder), and a Latency readout of what the session reports for the route and buffer. Tracks can also take their own outputs in the track sheet.
MIDI SetupIts own page, in five cards. Control Surface: MIDI Learn Bindings, the Control Surface picker, Pad Feel for pad controllers (Default, Light, Lightest or Heavy). MIDI Input: Other apps (HeartBeat In), a tick box per connected source, Network MIDI (RTP), Bluetooth MIDI Devices…, Auto Channel Source and Auto Channel. Sync In: Follow Start / Stop and Sync to external clock. Sync Out: the Clock and Start / Stop grid. Latency Compensation: a millisecond lead per destination.
ProjectsNew projects start with random sounds. On by default: every track of a new project loads a random preset; off, they start on the factory kit.
MIDIRecall knob values on pattern change. On by default: a MIDI track re-sends its stored knob values when the pattern (or an arrangement clip) switches. Off, only the program change goes out and the synth keeps whatever the patch brings.
LayoutSwap sides in landscape. Off by default; on, the sideways board mirrors: the display and steps on the right, the knobs and pads on the left. The header stays put. Arrangement track names on the right (on by default): the Arrange view's gutter (track names, solo, lane toggles) sits to the right of the timeline; off puts it on the left.
Ableton LinkThe Link settings sheet.
BackgroundRun in background, on by default, so the app keeps playing under the lock screen.
AboutThe version and build you're running, and Acknowledgements: the third-party code HeartBeat ships with, its licences in full, and where the factory samples come from.
The Settings page: Audio, MIDI Setup, Projects, Ableton Link and Background