open-audiovisual
Search GitHub

Novation

Novation Launchpad Mini MK3

Novation Launchpad Mini MK3 is a MIDI hardware controller by Novation: 64 pads and 16 buttons.

It sends Note and CC on channel 1. The profile cites 3 sources. 8 of its controls are marked unverified: the number is our best reading, and Learn rebinds it in one move.

  • Manufacturer docs
  • Artist's TouchDesigner tool
  • LED feedback
  • 8 unverified
Kind
hardware device
Maker
Novation
Controls
80 controls
Messages
Note · CC
MIDI channels
1
LED feedback
yes, lights are driven by MIDI
Signals
midi/lpmini/…
Port name matches
/lpminimk3/i /launchpad\s*mini/i
LAUNCHPAD MINI

Play Novation Launchpad Mini MK3 on screen Full screen ↗ Raw JSON ↗ All controllers

Drag knobs and faders · tap pads and keys · or plug the real one in and press Connect. Nothing is sent anywhere unless you add a MIDI out.

MIDI implementation

Every control of Novation Launchpad Mini MK3 and the message it sends

Generated from the profile file, so it is the same table the on-screen controller plays. Channels are 1–16; numbers are real MIDI numbers.

MIDI implementation of Novation Launchpad Mini MK3
ControlTypeMessageChNumberSignalLED feedbackVerified
pad1 pad Note · velocity 1 36 · C2 midi/lpmini/pad1 note 36 · on 13 / off 15 yes
pad2 pad Note · velocity 1 37 · C#2 midi/lpmini/pad2 note 37 · on 13 / off 15 yes
pad3 pad Note · velocity 1 38 · D2 midi/lpmini/pad3 note 38 · on 13 / off 15 yes
pad4 pad Note · velocity 1 39 · D#2 midi/lpmini/pad4 note 39 · on 13 / off 15 yes
pad5 pad Note · velocity 1 40 · E2 midi/lpmini/pad5 note 40 · on 13 / off 15 yes
pad6 pad Note · velocity 1 41 · F2 midi/lpmini/pad6 note 41 · on 13 / off 15 yes
pad7 pad Note · velocity 1 42 · F#2 midi/lpmini/pad7 note 42 · on 13 / off 15 yes
pad8 pad Note · velocity 1 43 · G2 midi/lpmini/pad8 note 43 · on 13 / off 15 yes
pad9 pad Note · velocity 1 44 · G#2 midi/lpmini/pad9 note 44 · on 13 / off 15 yes
pad10 pad Note · velocity 1 45 · A2 midi/lpmini/pad10 note 45 · on 13 / off 15 yes
pad11 pad Note · velocity 1 46 · A#2 midi/lpmini/pad11 note 46 · on 13 / off 15 yes
pad12 pad Note · velocity 1 47 · B2 midi/lpmini/pad12 note 47 · on 13 / off 15 yes
pad13 pad Note · velocity 1 48 · C3 midi/lpmini/pad13 note 48 · on 13 / off 15 yes
pad14 pad Note · velocity 1 49 · C#3 midi/lpmini/pad14 note 49 · on 13 / off 15 yes
pad15 pad Note · velocity 1 50 · D3 midi/lpmini/pad15 note 50 · on 13 / off 15 yes
pad16 pad Note · velocity 1 51 · D#3 midi/lpmini/pad16 note 51 · on 13 / off 15 yes
pad17 pad Note · velocity 1 52 · E3 midi/lpmini/pad17 note 52 · on 5 / off 7 yes
pad18 pad Note · velocity 1 53 · F3 midi/lpmini/pad18 note 53 · on 5 / off 7 yes
pad19 pad Note · velocity 1 54 · F#3 midi/lpmini/pad19 note 54 · on 5 / off 7 yes
pad20 pad Note · velocity 1 55 · G3 midi/lpmini/pad20 note 55 · on 5 / off 7 yes
pad21 pad Note · velocity 1 56 · G#3 midi/lpmini/pad21 note 56 · on 5 / off 7 yes
pad22 pad Note · velocity 1 57 · A3 midi/lpmini/pad22 note 57 · on 5 / off 7 yes
pad23 pad Note · velocity 1 58 · A#3 midi/lpmini/pad23 note 58 · on 5 / off 7 yes
pad24 pad Note · velocity 1 59 · B3 midi/lpmini/pad24 note 59 · on 5 / off 7 yes
pad25 pad Note · velocity 1 60 · C4 midi/lpmini/pad25 note 60 · on 5 / off 7 yes
pad26 pad Note · velocity 1 61 · C#4 midi/lpmini/pad26 note 61 · on 5 / off 7 yes
pad27 pad Note · velocity 1 62 · D4 midi/lpmini/pad27 note 62 · on 5 / off 7 yes
pad28 pad Note · velocity 1 63 · D#4 midi/lpmini/pad28 note 63 · on 5 / off 7 yes
pad29 pad Note · velocity 1 64 · E4 midi/lpmini/pad29 note 64 · on 5 / off 7 yes
pad30 pad Note · velocity 1 65 · F4 midi/lpmini/pad30 note 65 · on 5 / off 7 yes
pad31 pad Note · velocity 1 66 · F#4 midi/lpmini/pad31 note 66 · on 5 / off 7 yes
pad32 pad Note · velocity 1 67 · G4 midi/lpmini/pad32 note 67 · on 5 / off 7 yes
pad33 pad Note · velocity 1 68 · G#4 midi/lpmini/pad33 note 68 · on 49 / off 51 yes
pad34 pad Note · velocity 1 69 · A4 midi/lpmini/pad34 note 69 · on 49 / off 51 yes
pad35 pad Note · velocity 1 70 · A#4 midi/lpmini/pad35 note 70 · on 49 / off 51 yes
pad36 pad Note · velocity 1 71 · B4 midi/lpmini/pad36 note 71 · on 49 / off 51 yes
pad37 pad Note · velocity 1 72 · C5 midi/lpmini/pad37 note 72 · on 49 / off 51 yes
pad38 pad Note · velocity 1 73 · C#5 midi/lpmini/pad38 note 73 · on 49 / off 51 yes
pad39 pad Note · velocity 1 74 · D5 midi/lpmini/pad39 note 74 · on 49 / off 51 yes
pad40 pad Note · velocity 1 75 · D#5 midi/lpmini/pad40 note 75 · on 49 / off 51 yes
pad41 pad Note · velocity 1 76 · E5 midi/lpmini/pad41 note 76 · on 49 / off 51 yes
pad42 pad Note · velocity 1 77 · F5 midi/lpmini/pad42 note 77 · on 49 / off 51 yes
pad43 pad Note · velocity 1 78 · F#5 midi/lpmini/pad43 note 78 · on 49 / off 51 yes
pad44 pad Note · velocity 1 79 · G5 midi/lpmini/pad44 note 79 · on 49 / off 51 yes
pad45 pad Note · velocity 1 80 · G#5 midi/lpmini/pad45 note 80 · on 49 / off 51 yes
pad46 pad Note · velocity 1 81 · A5 midi/lpmini/pad46 note 81 · on 49 / off 51 yes
pad47 pad Note · velocity 1 82 · A#5 midi/lpmini/pad47 note 82 · on 49 / off 51 yes
pad48 pad Note · velocity 1 83 · B5 midi/lpmini/pad48 note 83 · on 49 / off 51 yes
pad49 pad Note · velocity 1 84 · C6 midi/lpmini/pad49 note 84 · on 21 / off 23 yes
pad50 pad Note · velocity 1 85 · C#6 midi/lpmini/pad50 note 85 · on 21 / off 23 yes
pad51 pad Note · velocity 1 86 · D6 midi/lpmini/pad51 note 86 · on 21 / off 23 yes
pad52 pad Note · velocity 1 87 · D#6 midi/lpmini/pad52 note 87 · on 21 / off 23 yes
pad53 pad Note · velocity 1 88 · E6 midi/lpmini/pad53 note 88 · on 21 / off 23 yes
pad54 pad Note · velocity 1 89 · F6 midi/lpmini/pad54 note 89 · on 21 / off 23 yes
pad55 pad Note · velocity 1 90 · F#6 midi/lpmini/pad55 note 90 · on 21 / off 23 yes
pad56 pad Note · velocity 1 91 · G6 midi/lpmini/pad56 note 91 · on 21 / off 23 yes
pad57 pad Note · velocity 1 92 · G#6 midi/lpmini/pad57 note 92 · on 21 / off 23 yes
pad58 pad Note · velocity 1 93 · A6 midi/lpmini/pad58 note 93 · on 21 / off 23 yes
pad59 pad Note · velocity 1 94 · A#6 midi/lpmini/pad59 note 94 · on 21 / off 23 yes
pad60 pad Note · velocity 1 95 · B6 midi/lpmini/pad60 note 95 · on 21 / off 23 yes
pad61 pad Note · velocity 1 96 · C7 midi/lpmini/pad61 note 96 · on 21 / off 23 yes
pad62 pad Note · velocity 1 97 · C#7 midi/lpmini/pad62 note 97 · on 21 / off 23 yes
pad63 pad Note · velocity 1 98 · D7 midi/lpmini/pad63 note 98 · on 21 / off 23 yes
pad64 pad Note · velocity 1 99 · D#7 midi/lpmini/pad64 note 99 · on 21 / off 23 yes
▲ top1 button CC · momentary 1 91 midi/lpmini/top1 CC 91 · on 3 / off 0 yes
▼ top2 button CC · momentary 1 92 midi/lpmini/top2 CC 92 · on 3 / off 0 yes
◀ top3 button CC · momentary 1 93 midi/lpmini/top3 CC 93 · on 3 / off 0 yes
▶ top4 button CC · momentary 1 94 midi/lpmini/top4 CC 94 · on 3 / off 0 yes
Session top5 button CC · momentary 1 95 midi/lpmini/top5 CC 95 · on 3 / off 0 yes
Drums top6 button CC · momentary 1 96 midi/lpmini/top6 CC 96 · on 3 / off 0 yes
Keys top7 button CC · momentary 1 97 midi/lpmini/top7 CC 97 · on 3 / off 0 yes
User top8 button CC · momentary 1 98 midi/lpmini/top8 CC 98 · on 3 / off 0 yes
▸ side1 button CC · momentary 1 89 midi/lpmini/side1 CC 89 · on 3 / off 0 unverified
▸ side2 button CC · momentary 1 79 midi/lpmini/side2 CC 79 · on 3 / off 0 unverified
▸ side3 button CC · momentary 1 69 midi/lpmini/side3 CC 69 · on 3 / off 0 unverified
▸ side4 button CC · momentary 1 59 midi/lpmini/side4 CC 59 · on 3 / off 0 unverified
▸ side5 button CC · momentary 1 49 midi/lpmini/side5 CC 49 · on 3 / off 0 unverified
▸ side6 button CC · momentary 1 39 midi/lpmini/side6 CC 39 · on 3 / off 0 unverified
▸ side7 button CC · momentary 1 29 midi/lpmini/side7 CC 29 · on 3 / off 0 unverified
■ side8 button CC · momentary 1 19 midi/lpmini/side8 CC 19 · on 3 / off 0 unverified

LED feedback is modeled for 80 of its controls: the LED column says which message lights each one.

Sources

  • manufacturer Launchpad Mini [MK3] Programmer's Reference Manual (Novation)Drum Rack layout: lower-left 36–51, upper-left 52–67, lower-right 68–83, upper-right 84–99, rows bottom→top, left→right; top row CC 91–98; right column CC 89, 79 … 19; LED: note-on ch1 static (velocity = palette index), ch2 flash, ch3 pulse; palette 0 off, 3 white, 5 red, 13 yellow, 21 green, 45 blue, 49 purple; ports LPMiniMK3 MIDI / DAW
  • manufacturer Launchpad Mini [MK3] User Guide (Novation)factory Custom 1 = Drum Rack, Custom 2 = Keys, Custom 3 = User (lighting)
  • artist's tool LaunchPadMini_251209.tox (the artist's TouchDesigner tool)grid on channel 1; a top-row button recorded as CC 95

Where this profile comes from

Che-Yu Wu's TouchDesigner tool: MIDI In ch1 notes 36–99 in four groups of 16 (select1–4) = the four 4×4 drum racks; positions xy −4..−1 / 1..4 (skipping 0) or balanced −3.5..3.5; a stepped colour ramp gives each rack one colour (yellow, salmon red, lavender, green); idle pads drawn at ~16 % alpha, hit pads full colour with bloom; 'last event' (index + active) as the action output. TouchDesigner's MIDI In CHOP names channels 1-based (ch1ctrl75 = CC 74, ch10n37 = note 36); the numbers here are real MIDI numbers. LaunchPadMini_251209.tox

Notes

Use the device in Custom mode 1 (Drums). Entering Programmer mode needs SysEx (F0 00 20 29 02 0D 0E 01 F7), which stays off by default — Programmer-mode notes 11–88 are a different layout. What the right-column buttons send in Custom mode is undocumented (marked unverified; 學習 rebinds). LED colours are palette indices: the rack colours mirror the TD tool's ramp.

Port names it recognises

matches
/lpminimk3/i /launchpad\s*mini/i
prefers
/midi/i
avoids
/daw/i

Signals

Every control publishes midi/lpmini/<control> (0..1), plus /raw; pads add /hit, encoders /delta, keys /on /off and n<note>; the last control touched is midi/lpmini/last.

Use it

Use Novation Launchpad Mini MK3 in your own work

  1. Embed it with one line

    No import map, no build step. Change layout, add hardware="ask" for a Connect button.

    html
    <script type="module" src="https://openaudiovisual.com/packages/midi/element.js"></script>
    <oav-controller profile="novation-launchpad-mini-mk3" readout></oav-controller>
  2. Or as an iframe

    For places that only take an iframe. Every event arrives as a postMessage.

    html
    <iframe src="https://openaudiovisual.com/embed/controller/?profile=novation-launchpad-mini-mk3&readout"
            width="720" height="742" style="border:0;max-width:100%" allow="midi"
            title="Novation Launchpad Mini MK3"></iframe>
    <script>
      // every control the visitor plays arrives here
      addEventListener('message', (e) => {
        if (e.data?.source !== 'openav' || e.data.type !== 'control') return;
        console.log(e.data.detail.signal, e.data.detail.value);
      });
    </script>
  3. Send it to Ableton, TouchDesigner or Resolume

    What you play on screen leaves as real MIDI on the IAC bus (macOS) or a loopMIDI port (Windows). The steps are on the catalog page.

    html
    <!-- what you play on this controller → the IAC bus (macOS) → Ableton, TouchDesigner, Resolume -->
    <script type="module" src="https://openaudiovisual.com/packages/midi/element.js"></script>
    <oav-controller profile="novation-launchpad-mini-mk3" midi-out="IAC" readout></oav-controller>
    <!-- Windows: midi-out="loopMIDI" · let the visitor pick a port: midi-out="ask" -->

    macOS: Audio MIDI Setup → MIDI Studio → IAC Driver → “Device is online”. Windows 11: the built-in Windows MIDI Services have a loopback (not tested by us); older Windows: install loopMIDI, add a port and use midi-out="loopMIDI".

In p5.js, with one line

The one-line injection names knobs, faders and pads by their order in this profile, the order of the table above. Add ?profile=novation-launchpad-mini-mk3 to make the on-screen controller this one; a real Novation Launchpad Mini MK3 is recognised by its port name.

javascript
document.head.prepend(Object.assign(document.createElement('script'), { src: 'https://openaudiovisual.com/p5/oav-p5.js?profile=novation-launchpad-mini-mk3' }));
In your sketchControlMessage
pad1pad1Note 36 · C2 · Ch 1
pad2pad2Note 37 · C#2 · Ch 1
pad3pad3Note 38 · D2 · Ch 1
pad4pad4Note 39 · D#2 · Ch 1
pad5pad5Note 40 · E2 · Ch 1
pad6pad6Note 41 · F2 · Ch 1
pad7pad7Note 42 · F#2 · Ch 1
pad8pad8Note 43 · G2 · Ch 1
pad9pad9Note 44 · G#2 · Ch 1
pad10pad10Note 45 · A2 · Ch 1
pad11pad11Note 46 · A#2 · Ch 1
pad12pad12Note 47 · B2 · Ch 1
pad13pad13Note 48 · C3 · Ch 1
pad14pad14Note 49 · C#3 · Ch 1
pad15pad15Note 50 · D3 · Ch 1
pad16pad16Note 51 · D#3 · Ch 1
… and 48 more, up to pad(64), in the same order
p5.js sketch
function draw() {
  background(20);
}

function padPressed(n, velocity) {      // n = 1…64, as in the table
  circle(random(width), random(height), velocity * 100);
}

Encoders, buttons, wheels and strips are not numbered: read them as midi.cc[number] in the table above, or react in controlChange(cc, value, ch).

The whole p5.js page →

Missing

Is your controller not here?

Open an issue with the brand and model, whether you have the unit and a link to the manual. Or write the profile yourself: it is one JSON file.

GitHub

Is something in this data wrong?

Every number on this page comes from one JSON file. If it disagrees with your unit or the manual, tell us which firmware you checked and we fix the file.