open-audiovisual
Search GitHub

Novation

Novation Launch Control XL 3

Novation Launch Control XL 3 is a MIDI hardware controller by Novation: 24 encoders, 8 faders and 16 buttons.

It sends CC on channel 16. The profile cites 7 sources. No control is flagged unverified.

  • Manufacturer docs
  • Community notes
Kind
hardware device
Maker
Novation
Controls
48 controls
Messages
CC
MIDI channels
16
LED feedback
none sent
Signals
midi/lcxl3/…
Port name matches
/lcxl\s*3/i
LAUNCH CONTROL XL 3Mode 16▲▼◀▶● Rec▶ PlayShiftModeSolo / ArmMute / Sel1234567891011121314151617181920212223241234567812345678910111213141516

Play Novation Launch Control XL 3 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 Launch Control XL 3 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 Launch Control XL 3
ControlTypeMessageChNumberSignalLED feedbackVerified
1 e1 encoder CC · absolute 16 13 midi/lcxl3/e1 — yes
2 e2 encoder CC · absolute 16 14 midi/lcxl3/e2 — yes
3 e3 encoder CC · absolute 16 15 midi/lcxl3/e3 — yes
4 e4 encoder CC · absolute 16 16 midi/lcxl3/e4 — yes
5 e5 encoder CC · absolute 16 17 midi/lcxl3/e5 — yes
6 e6 encoder CC · absolute 16 18 midi/lcxl3/e6 — yes
7 e7 encoder CC · absolute 16 19 midi/lcxl3/e7 — yes
8 e8 encoder CC · absolute 16 20 midi/lcxl3/e8 — yes
9 e9 encoder CC · absolute 16 21 midi/lcxl3/e9 — yes
10 e10 encoder CC · absolute 16 22 midi/lcxl3/e10 — yes
11 e11 encoder CC · absolute 16 23 midi/lcxl3/e11 — yes
12 e12 encoder CC · absolute 16 24 midi/lcxl3/e12 — yes
13 e13 encoder CC · absolute 16 25 midi/lcxl3/e13 — yes
14 e14 encoder CC · absolute 16 26 midi/lcxl3/e14 — yes
15 e15 encoder CC · absolute 16 27 midi/lcxl3/e15 — yes
16 e16 encoder CC · absolute 16 28 midi/lcxl3/e16 — yes
17 e17 encoder CC · absolute 16 29 midi/lcxl3/e17 — yes
18 e18 encoder CC · absolute 16 30 midi/lcxl3/e18 — yes
19 e19 encoder CC · absolute 16 31 midi/lcxl3/e19 — yes
20 e20 encoder CC · absolute 16 32 midi/lcxl3/e20 — yes
21 e21 encoder CC · absolute 16 33 midi/lcxl3/e21 — yes
22 e22 encoder CC · absolute 16 34 midi/lcxl3/e22 — yes
23 e23 encoder CC · absolute 16 35 midi/lcxl3/e23 — yes
24 e24 encoder CC · absolute 16 36 midi/lcxl3/e24 — yes
1 f1 fader CC 16 5 midi/lcxl3/f1 — yes
2 f2 fader CC 16 6 midi/lcxl3/f2 — yes
3 f3 fader CC 16 7 midi/lcxl3/f3 — yes
4 f4 fader CC 16 8 midi/lcxl3/f4 — yes
5 f5 fader CC 16 9 midi/lcxl3/f5 — yes
6 f6 fader CC 16 10 midi/lcxl3/f6 — yes
7 f7 fader CC 16 11 midi/lcxl3/f7 — yes
8 f8 fader CC 16 12 midi/lcxl3/f8 — yes
1 b1 button CC · momentary 16 37 midi/lcxl3/b1 — yes
2 b2 button CC · momentary 16 38 midi/lcxl3/b2 — yes
3 b3 button CC · momentary 16 39 midi/lcxl3/b3 — yes
4 b4 button CC · momentary 16 40 midi/lcxl3/b4 — yes
5 b5 button CC · momentary 16 41 midi/lcxl3/b5 — yes
6 b6 button CC · momentary 16 42 midi/lcxl3/b6 — yes
7 b7 button CC · momentary 16 43 midi/lcxl3/b7 — yes
8 b8 button CC · momentary 16 44 midi/lcxl3/b8 — yes
9 b9 button CC · momentary 16 45 midi/lcxl3/b9 — yes
10 b10 button CC · momentary 16 46 midi/lcxl3/b10 — yes
11 b11 button CC · momentary 16 47 midi/lcxl3/b11 — yes
12 b12 button CC · momentary 16 48 midi/lcxl3/b12 — yes
13 b13 button CC · momentary 16 49 midi/lcxl3/b13 — yes
14 b14 button CC · momentary 16 50 midi/lcxl3/b14 — yes
15 b15 button CC · momentary 16 51 midi/lcxl3/b15 — yes
16 b16 button CC · momentary 16 52 midi/lcxl3/b16 — yes

LED feedback is not modeled for this one yet, so OAV does not light its LEDs. Every control still plays and sends its message.

Sources

Notes

Mode 16, the fixed default mode, on MIDI channel 16 — the one mode every unit has the same. Select it: press Mode, then button 16 (bottom-right), press Mode again. Custom modes 1–15 hold whatever was sent from Components and are not modelled. The encoders are endless but send absolute 0–127 by default (the unit keeps the value). Novation does not print the button press / release values for Mode 16; they are treated as momentary CC buttons. Page, Track, Record, Play, Solo/Arm and Mute/Select send nothing in standalone mode; Shift and Mode open menus. No LED feedback: in standalone the colours come from the mode itself (the colour messages in the reference are DAW-mode only). Distinct from the MK2 (port "Launch Control XL", factory template channels 9–16).

Port names it recognises

matches
/lcxl\s*3/i
prefers
/midi/i
avoids
/daw/i /midiin2/i /port\s*2/i /to\s*din/i

Signals

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

Use it

Use Novation Launch Control XL 3 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-launch-control-xl-3" 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-launch-control-xl-3&readout"
            width="720" height="710" style="border:0;max-width:100%" allow="midi"
            title="Novation Launch Control XL 3"></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-launch-control-xl-3" 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-launch-control-xl-3 to make the on-screen controller this one; a real Novation Launch Control XL 3 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-launch-control-xl-3' }));
In your sketchControlMessage
fader11 f1CC 5 · Ch 16
fader22 f2CC 6 · Ch 16
fader33 f3CC 7 · Ch 16
fader44 f4CC 8 · Ch 16
fader55 f5CC 9 · Ch 16
fader66 f6CC 10 · Ch 16
fader77 f7CC 11 · Ch 16
fader88 f8CC 12 · Ch 16
p5.js sketch
function draw() {
  background(fader1 * 255);   // 1 · CC 5
  circle(width / 2, height / 2, 50 + fader2 * 300);   // 2 · CC 6
}

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.