Topic: Configuring Launchpad LED's with QLab 4


I'm currently using the Launchpad Pro in conjunction with QLab 4 (by Figure 53) and it's cue cart feature. The function is to use the Launchpad as a Midi controller to send a MIDI Note On signal to the program in order to trigger a sound effect. This is all done through Programmer mode, but could potentially work in the other modes too.

Now the MIDI triggering and sound effects work fine however I'm trying to program the lights so that visually I can organize the board and identify which button is what sound effect. I see a lot of tutorials to program light shows through Ableton Live however I'm not looking to design something for an audience. I just want to be able to configure the lights to glow green to indicate i have my "lighting" sound effects on them, and when I hit the button it'll turn red to indicate that a signal was sent to the program, then turn green again.

Now I've seen some posts that suggest using which works and lets me light up the buttons. However the main issue is that it only works when I have the window open on their site. I also saw the github file for Lightpad the MacOS beta app to configure lights however editing colors is kind of a pain but also the main purpose seems to be for lightshow programming.

Are there any suggestions for programming the lights?

Thumbs up Thumbs down

Re: Configuring Launchpad LED's with QLab 4

to be honest , if you rlly want your lights , youll have to work with abelton ...

it is in my opinion the easiest why to make what you want , but i font know QLab 4 so .... idk

i could tell you how to do your effects if you manage to use abelton

|_ /\ |_| |\| [ |-| |) /\ |) for life <3

Re: Configuring Launchpad LED's with QLab 4

Take a look below. My 8x8 cart uses cue numbers 1-64. This script is triggered from MIDI 19, the lower right arrow button on the LP Pro. Anytime I change a color, I hit the arrow button and all the colors sync. Flashing while playing worked but bogged down the machine from the AppleScript loop and I am moving that functionality to a separate OSC-MIDI program. Cue 999 is a MIDI cue. In colorToHex you map the Launchpad’s colors to QLab’s.

set midiTx to "999"
set sourceCue to 1
set targetCue to 81

on convertNumberToBase(aNumber, base)
    if base < 2 or base > 16 then error "convertNumberToBase()" & return & "Base of " & base & " is invalid!"
    if aNumber = 0 then return "00"
    set s to ""
    repeat until aNumber is 0
        tell aNumber mod base div 1 to if base is greater than 10 and it > 9 then
            set s to character (it - 9) of "ABCDEF" & s
            set s to (it as string) & s
        end if
        set aNumber to aNumber div base
    end repeat
    set charCount to count (s)
    if charCount = 1 then set s to "0" & s
    return s
end convertNumberToBase

on colorToHex(color)
    if color = "none" then return my convertNumberToBase(0, 16)
    if color = "red" then return my convertNumberToBase(5, 16)
    if color = "orange" then return my convertNumberToBase(9, 16)
    if color = "green" then return my convertNumberToBase(18, 16)
    if color = "blue" then return my convertNumberToBase(34, 16)
    if color = "purple" then return my convertNumberToBase(49, 16)
end colorToHex

on sysexColorChange(targetNote, sourceColor)
    set targetNoteHex to my convertNumberToBase(targetNote, 16)
    set targetColorHex to my colorToHex(sourceColor)
    set msg to "90 " & targetNoteHex & " " & targetColorHex
    return msg
end sysexColorChange

tell application id "com.figure53.QLab.4" to tell front workspace
    repeat 8 times
        repeat 8 times
            set sourceQNumber to sourceCue as string
            set sourceColor to q color of cue sourceQNumber
            set colorMsg to my sysexColorChange(targetCue, sourceColor)
            set message type of cue midiTx to sysex
            set channel of cue midiTx to 2
            set sysex message of cue midiTx to colorMsg
            start cue midiTx
            set sourceCue to sourceCue + 1
            set targetCue to targetCue + 1
        end repeat
        set targetCue to targetCue - 18
    end repeat
end tell

Thumbs up Thumbs down