Loopy Pro: Create music, your way.
What is Loopy Pro? — Loopy Pro is a powerful, flexible, and intuitive live looper, sampler, clip launcher and DAW for iPhone and iPad. At its core, it allows you to record and layer sounds in real-time to create complex musical arrangements. But it doesn’t stop there—Loopy Pro offers advanced tools to customize your workflow, build dynamic performance setups, and create a seamless connection between instruments, effects, and external gear.
Use it for live looping, sequencing, arranging, mixing, and much more. Whether you're a live performer, a producer, or just experimenting with sound, Loopy Pro helps you take control of your creative process.
Download on the App StoreLoopy Pro is your all-in-one musical toolkit. Try it for free today.
Launchpad Programming
This is continuing a discussion about controlling Novation Launchpads via programming mode started here:
https://forum.audiob.us/discussion/comment/1071244/#Comment_1071244
Comments
This started as a discussion about how to set up Launchpad Faders in session mode and how to activate them. See the original post for details.
@Artvarg : the fader sysex that you were sending just sends the fader setup information: the colors and CC mapping. It doesn't actually switch to the fader layout. And there is no way to switch to the fader layout on the Launchpad itself. To switch to the faders you need to send "switch layout" sysex.
On a Launchpad X, the switch layout sysex bytes to send from Mozaic are
0x00, 0x20, 0x29, 0x02, 0x0C, 0x00,
The layout index byte for the fader layout is 0x0D
Custom layout 1 is 0x04
DAW layout is 0x00
Note layout is 0x01
See the selecting layout section of the programmer's reference.
Keep in mind that sending the Daw on/off codes, resets the current state. So, if using within something like Loopy, don't send that message. You can safely send the fader setup and layout change messages without messing anything up
The exact sysex for you will be different -- but I think you only need to change one of the header bytes.
All Launchpad X commands start: 0x00, 0x20, 0x29, 0x02, 0x0C,
From what I see in your code Launchpad Pro mk3 commands start with 0x00, 0x20, 0x29, 0x02, 0x0E,
What do you need to know about setting up faders?
There they are responding to incoming midi:
Unlimited faders (92 faders visible here)
All of the above in session (not programmers) mode....so they are all using sysex strings.
@AlmostAnonymous : take a look at the posts that I linked to for context. The discussion is about what sysex what needs to send.
@espiegel123 Thanks a lot for opening a new thread and all the input. I‘ll give it a try once the not-so-little-one is asleep.
@AlmostAnonymous I‘m trying to access the faders of the LPPMK3 by sending sysex via Mozaic but couldn’t get any reaction from the Launchpad.
For the time being, don't read data coming from the DAW port into Mozaic. It looks like Loopy is filtering out the sysex -- except for the closing F7 -- which kills Mozaic. Sending from Mozaic to the DAW port is working fine.
@Artvarg
Some basics:
Everything I describe here is in Session Mode not Programmers Mode.
yes, you have send the data size every time for sysex:
SendSysex _SomeArray_, _NumberOfEntiersInArray_
like
(SendSysex DrawFader, 14)
Your don't need the 1st and the last sysex messages. You can leave off the F0 and F7 (240 and 247)
I use normal numbers, its easier in my brain to edit CC 72 the remember all the 0x3F
You can only draw faders on the Volume, Sends, Device, and Pan pages. In the 2nd vid above, even though I'm using the scene launch buttons, the faders are actually drawn on the volume page, I just illuminate the different buttons instead.
Example Data string for a Volume Fader in leftmost position on the Volumes page:
That will setup a green vertical fader in the left most position controlling CC1
Format of String:
[0, 32, 41, 2, 14, 1, **BANK** (vol, pan, sends, device / 0-3 values), **FADER ORIENTATION** (vert or horz / 0-1 Values), **FADER POSITION** (position 1-8 / 0-7 Values), **FADER TYPE** (uni or bi polar / 0-1 Values), **CC NUMBE**R (0-127), **COLOR** (0-127)}
Sysex Strings for 8 Faders on the volume page, cc's 1-8, alternating colors of green:
Send each one with
SendSysex SYFADERSETUPx, 12
I'm pretty terrible at organizing my thoughts on paper. I assume questions are coming
Btw, his sysex was fine. The only thing that he didn't know is that you have to send a sysex message to the Launchpad to display the fader layout -- as I explained in my earlier post.
another thing to note....you'll wanna keep track of the CC values in an array.
you're gonna need to recall them when you redraw faders from switching between pages.
faders also only respond on midi channel 5, so you'll need to translate from other channels if needed.
On the Launchpad X, the fader values persist when switching to another page and back is the LP Pro different in this way? I think the LPX also only has one fader page -- unless there is something in the programmer's guide I missed.
Awesome, I managed to set up a fader. 🥳
The confusing part was, that the button for the fader page doesn‘t activate. So I have to select the layout via sysex like @espiegel123 pointed out.
Now I‘m off to getting the fader button to switch the layout. Is there any shortcut to setting up the button, @AlmostAnonymous? I was assuming that this happens automatically.
What I have done is set up a script that listens to the LP to see if the Session Mode button is pressed and every other time it is pressed, I send out the sysex to show the Faders page.
Maybe on the LP Pro, there is something else that works. I haven't found any button on the LPX that will switch to Fader layout on its own. LP Pro might be different.
The volume button on the LP sends CC4. So far mozaic crashes inside loopy pro if I let it react to an incoming CC message. It works fine in AUM though. I call it quits for today.
Thanks a lot @espiegel123 and @AlmostAnonymous you really helped me get one step closer to the ultimate Launchpad setup. 🙏
Here is the deal with the Mozaic crash. Loopy Pro is stripping out all but the last byte of any sysex messages and that byte (F7) is crashing Mozaic.
I found a workaround. I have a 3 line streambyter script that strips that byte. I route the midi from the Launchpad through streambyter to Mozaic. I can post it later.
@Artvarg this streambyter script filters out the lone F7 bytes that are crashing Mozaic
Here is a picture of my routing in Loopy Pro:
So Mozaic sends to LP Daw Port. Streambyter is fed by DAW Out port and passes the filtered MIDI to Mozaic.
@Artvarg
These are my @onload variables for calling every page of the LPP. I am unsure if this is what you were asking in your previous post about setting up the button.
SYFADER are the volume, pan, sends, and device pages.
SYCUSTOM are the custom pages you build with novation compnents.
SYSTEP are the sequencer's pages
These are also from an old script. You need to remove the 240's and 247's, otherwise mozaic sends them twice and is possible to cause conflicts.
Thanks for the script I‘ll be trying it tonight. Though I‘m still a little bit confused. From what I gathered, Mozaic only listens to sysex messages if explicitly told to. In my case Mozaic is only reacting to MIDI CC and not listening to sysex messages. So why is it still crashing?
Cool, this might be helpful.
I‘m talking about the bottom row of buttons on the Launchpad. One is labeled „volumes“, which I thought would switch to the faders page once it’s set up. But it remains inactive.
@Artvarg : re Mozaic, the problem is that there is a Loopy bug that strips off the sysex header. If you listen to MIDI, Mozaic needs to read the messages to see what type of MIDI message it is. The message that it sees is not sysex -- or anything else legal. So, that is why for the time being you need the streambyter script -- it blocks the illegitimate MIDI that crashes mozaic.
Alright, that makes sense.
Sorry I've been so slow to respond. Been crazy lately.
In session mode, the buttons just send CCs. The volume button sends CC4.
You need to tell mozaic to send the sysex to show the volume page when it receives CC4.
So you'll need to route the Launchpad to the script and the script to the Launchpad (over the DAW port)
The Launchpad should never talk to anything unless it's through the script.
Apps should never talk to the Launchpad unless it's going through the script.
EVERYTHING should go through the script.
(UIs are fun in Mozaic.....)
Do you know this open source alternative firmware: https://github.com/dvhdr/launchpad-pro
I know it's old and most probably not applicable to a modern device but maybe a source of inspiration
I‘ve actually been rather surprised at the high frequency of replies in this thread. 😅
Especially because I only have time to try all the stuff in the evenings.
That’s exactly what I tried yesterday when Mozaic crashed inside loopy pro.
Hmmm… the longer I think about this, the more confusing it gets for me. What about the host app? Loopy Pro does a very solid job of lighting the pads and other communication with the Launchpad. Do you want to tell me I should put all this stuff in the script? Is that even possible for Loopy? 😵💫
For other apps I can totally see the point.
I am having no problem in Loopy when set up as I showed. Loopy is is handling it’s normal launchpad session stuff and my Mozaic script listens for a cc that I use to show the faders. I only send fader setup info and the sysex to show the fader layout.
Don’t send the session mode off/on stuff or it will break Loopy’s control. You can safely tell it to switch the displayed layout.
@espiegel123 or @Michael, isn't loopy using programmers mode, not session mode?
I don’t have an LP Pro. My LP X says returns live mode when it is in-use by Loopy and I query it.
Maybe it's worth thinking about changing the thread title to "Launchpad X programming"?
Most Launchpads are incompatible with the X.
This was specifically created for the ProMK3. My end game was to get into that, but there were better options like Mozaic or javascript (which I don't know).
It would (at least I hope so for Michael's sanity) be the the same mode on a mini, X, or pro.
The LaunchPad Pro and LaunchPad X (and probably mini mk3) are very similar in the programming. The LP Pro has some capabilities that the X doesn't have -- but in terms of this question -- they seem relevant to each other.