Launch Control XL LEDs

The Novation Launch Control XL is a great midi controller to use with the ipad (in low power mode) to control AUM. For me it’s annoying that the LEDs dont automatically change to reflect their values.
This mozaic midi effect needs to be setup in AUM to receive midi from the Launch Control XL AND send to the Launch Control XL.
The code ensures that all LEDs run in low power mode and also forces the Launch Control XL to select factory configuration #1 to avoid possible mapping problems.

Tested for a few hours yesterday. I think everything is working just fine. It’s not a complicated script!

Enjoy

P.S. The code is a mix of different code and ideas from roland, derwent, _ki, mcD. Thanks

Author
211 PM
  • Platform:
  • Category: Utility
  • Revision: 1.0
  • License: Do What The F*ck You Want To Public License
  • Views: 721
  • Modified: 6 months ago
Chat about this patch on Discord! Download (22)
Appreciate 1
3 comments on “Launch Control XL LEDs
  • deadphish on said:

    Does it only work with AUM for the light’s? I was trying to use it with Loopy Pro as my DAW. I just wanted the bottom pads to light up as they are used to toggle FX on and off.

  • richtowns on said:

    I dont know Loopy Pro that well but if you can route the launch control to a mozaic instance in LP and loopy pro can send sysex back to the launch pad then yes.

    I tried to get it to work in drambo but unfortunately dranbo doesnt sent sysex messages so I had to run the program in a separate program. I used midifire but there are a few different ones you can use.

    Ill post the mod to only affect the bottom leds below

  • richtowns on said:

    @OnLoad

    SetShortName {LC_LEDS}

    sysButton[] = [ 0x00, 0x20, 0x29, 0x02, 0x11, 0x77, 0x08, 0x00, 0x00 ]

    SendSysex sysButton, 7 // force factory template mode

    sysButton[] = [ 0x00, 0x20, 0x29, 0x02, 0x11, 0x78, 0x08, 0x00, 0x00 ]

    states[] = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]

    // notes are default button midi note for factory #1

    notes[] = [ 41, 42, 43, 44, 57, 58, 59, 60, 73, 74, 75, 76, 89, 90, 91, 92 ]

    // ccs are default knob midi cc for factory #1

    ccs[] = [13, 14, 15, 16, 17, 18, 19, 20, 29, 30, 31, 32, 33, 34, 35, 36, 49, 50, 51, 52, 53, 54, 55, 56]

    // turn off all leds

    for i = 0 to 39 //24 knobsand 16 buttons
    sysButton[7] = i
    sysButton[8] = 12
    SendSysex sysButton, 9 // uncomment resets at startup
    endfor

    @End

    @OnMidiNoteOn

    for i = 8 to 15

    if MIDIByte2 = notes[i]
    sysButton[7] = 24 + i

    if states[i] = 1
    states[i] = 0
    sysButton[8] = 28

    if i > 7 // botton row of pads
    sysButton[8] = 13
    endif

    else
    states[i] = 1
    sysButton[8] = 12
    endif

    SendSysex sysButton, 9
    // log sysButton[7], { }, sysButton[8]
    endif

    endfor

    @End

    @OnMidiCC

    for i = 0 to 24

    if MIDIByte2 = ccs[i]
    sysButton[7] = i
    if MIDIByte3 > 90
    sysButton[8] = 13
    elseif MIDIByte3 > 60
    sysButton[8] = 28
    elseif MIDIByte3 > 30
    sysButton[8] = 29
    else
    sysButton[8] = 12
    endif
    SendSysex sysButton, 9
    // log i, { }, MIDIByte3
    endif

    endfor

    @End

  • Leave a Reply