KeyLab 61/88 mk3 screen SysEx, LEDs and CC — reverse-engineered with Claude

Hello

Over the past few months I’ve been building a live rig around a KeyLab 88 mk3: my own setlist on the screen, preset lists on the jog wheel, LED feedback on pads and buttons, all driven from Max for Live. Since none of this is documented anywhere, I ended up mapping the protocol myself. These are my notes.

What’s in there:

  • The two screen families (00 02 04 for DAW mode, 00 01 04 for Arturia mode) and how they differ
  • A 7-line full-width list widget that isn’t in Arturia’s own script, with the packet formats for title, items and cursor
  • Footer button packets in Arturia’s own field structure, including the on/off values
  • Complete CC maps for DAW mode and Arturia mode: screen buttons, transport row, jog wheel, faders and encoders, plus the separate touch CCs
  • LED ids for the transport row and the pads
  • The User-mode configuration family, where pad colours are stored
  • Practical things that aren’t in any table: what freezes the device, why packets get dropped, why fader readouts sometimes don’t appear at all

Every claim is marked with how solid it is: measured on hardware, read out of working code, or inferred. A short list of dead ends is included so nobody repeats them.

This is for the 61 and 88 mk3, not the Essential mk3
And this is unofficial: nothing here comes from Arturia, and nothing is endorsed by them.

Dropbox link

This is not the live rig, but a .md file. With that, and Ableton/M4L, and Claude, you can design a rig yourself.

Corrections and additions welcome.

Kind regards Brian