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.
Comments
I am not sure what capabilities the mini mk 3 has. If you don’t already have the programmer’s reference, find and download it. I can upload the script I did for the LPX. It might take me a day or so to get to it.
Okay that would be a great starting point. I have the programmers reference for the Mini. Thank you
This zip archive has the barebones loopy project and the mozaic script as a separate file if needed. I tried to write the code to be pretty straightforward...it has been awhile since I put it together. I can't remember if there were any bugs in the script...which is really just a proof-of-concept that this can be done.
If you have any questions, let me know.
@DblU the programming is 99% the same for all 3 models (minimk3, X, promk3).
Really all you should need to change in espiegel’s script is the string to kick the mini in and out of session mode.
This forum is like puzzle, when you collect enough, next level come up.
I have mini mk3, changed in mosaic code string
lpxHeader = [0x00, 0x20, 0x29, 0x2, 0x0D] - last byte 0x0D is for mini mk3, and now launchpad show second page when I press session button. That’s magic! I don’t know yet how to add faders here, but it’s look promising! Thank you, I will read more.
See the routine "setFaderSet1"
That is where it sets up the faders. Each fader has a color, polarity and cc setting.
Since this was for my own experimentation and not intended for sharing, it is isn't commented but should be straightforward. If you have any questions, let me know.
The LPx used to have four fader sets, but I think it know has 8.
Thank you for the script!
@szczyp was faster!
I figured out how to set it up.
Just change the header as you mentioned and then press Fader Set 1 in the Mozaic GUI.
There they are
One thing that comes up is, that, when I play around with the faders, the switch from FADER to SESSION mode only works it the Session button is pressed twice.
looking at the Log it seems that somehow somewhere there is picked up a Midi CC 95, which causes the issue. Need to check it further!
Might there be a way to set up more fader banks?
Thanks a lot!!!
Yes, you can set up more fader banks, there are a lot of ways you could do it. The simplest would be to duplicate "setFaderSet1" as many times as you need. You might want to use the existing arrays and use indexes for the other arrays so that each set's slots start at
setNumber * numberofFaderPerSet
Excellent thank you !
„Fader banks” are virtually created pages which exist in mosaic code script, exectuted by session button (or sysex string) right?
And they are independent from - in case of mini mk3: drums, keys and user button/pages?
@szczyp : the launchpad's have internal memory for faders banks in daw mode. The number of banks depends on the device. Once you have sent the banks to the LP, you can switch between them by sending the appropriate message. They are unrelated to the Drums/Keys/User pages.
(the LPX doesn't have the Drums/Keys mode).
My Mozaic script was really just written for me to understand how the different commands you can send to the LP work and what they do. So, my script, only sets up one fader bank. The way it is supposed to work is that once you have sent the fader bank to the LP, the session mode button will toggle between the normal session mode layout and the fader page -- and the color of the Session button changes to indicate which is which.
There might be bugs in my logic that sometimes cause it to end up in the wrong 'mode' when switching between the sessions modes and the other pages and back.
If I remember rightm MIDI CC 95 is sent when the session mode button is pressed. See the onMidiCC handler. There could be a bug there in terms of restoring the right state.
Yes I also think it has smth to do with restoring the right state. I will have a look into it hopefully some time soon.
What I noticed is, that the CC95 more or less randomly showed up (in the Log) while playing with the faders. Then, I have to press the Session button twice to so back to the Session view.
At least I learned something new and better to have such additional faderbanks. 👍👊🤝
That cc shouldn't be showing up randomly. It should correspond to specific button presses.
Are these coming from the LP or going to the LP?
If you look at my 2nd vid on the 1st page of this thread, you can see me using multiple fader banks in session mode. These banks aren’t actually on different pages. They are just redrawn on the main session mode with logged ccs.
Initial setup repeated for multiple pages
Fader recall
The above is not limited to faders, it’s anything in the session mode. It’s particularly important on the X and mini because you only have 1 page of session mode to use (the pro has 4).
On the x, there are 4 or 8 fader banks and you can switch between them in a session without needing to recall/restore the values when switching between them. You can just send each bank's initial setup and then the command to display whichever bank you want.
What I just wrote is incorrect.
@espigel123, there’s only 1 page for session mode. I’m not referring to pages you set up with components. The pro has the session mode page, plus the 4 pages of volume, pans, sends, and device. These pages get remembered when switching between, but I’m well over 30 pages.
Edit: I really don’t use those component pages because they don’t react to incoming midi (unless this has changed recently). If I just keep redrawing in session mode, if I move a synth knob or whatever…the LP will update its fader position. I also get restores when switching projects
Nor am I.
Oops....I just noticed that I misread my notes. You're right, There is only one fader bank on the LPX.
@espiegel123 I really need to finish the script fully and post it to patch storage. I feel like I betrayed you, Ki, and wim for helping me out with getting my feet in the Mozaic pool, but not sharing it on PS. Even if no one uses it, I’m sure there’s stuff in there people can learn from.
(mostly how not to write excessively long midwit code)
Eek! I what i wrote isn't quite write. As AlmostAnonymous corrected, the LPX and mini only have one fader bank. You could fake it by storing multiple configurations on mozaic and swapping them out.
Swapping them out is correct. That’s all I’m doing on a single page. Redrawing faders and buttons, and restoring CCs.
(i wish working with arturias beatstep/beatstep pro was this easy)
This is what I do on my Launchkey script on Patchstorage.
I really find I like coding GUIs for hardware. I really should try and take it to the next level, but I don’t know any other languages. I left off programming at around:
10 Print “hello world”
20 Goto 10
30 End
(i can’t stress enough how important that last line is……..facepalm.jpg)
Thank you for this additional info!
Thanks to this I downloaded programmer manual and I’m reading it, but can I have a direct question? Maybe you know, and will be even more excited to learn:
Can we drow buttons together with faders on fader-bank page?
Can be buttons from the right side (to launch each row aka “scene”) used to something other when fader-bank-page is drown?
(Currently when I enable fader-bank, buttons from the right still changes scenes, which is ok, but maybe there is a possibility to control their usage also?)
Both questions are from this: mk3 mini have no buttons on the bottom to use. On fader-bank page I need to utylize some buttons, and I’m think loudly what is the easiest way.
And last, not related with launchpad:
I would love to see in Mosaic access to core midi in auv3 instantion, as loopypro offer. It would give this app whole new usage imo. Or there is, and I didn’t find yet?
Maybe the upper left (navigation) buttons can be used for this …
If I remember correctly, technically no. I believe you can still color the pads individually, but fader pages send cc’s, not note numbers. So I guess you can put an invisible fader there, color the pads like buttons, and translate the CC to note number or whatever later. you could make it so pressing the session button toggles between a button layout and fader layout (more below next question)
All the buttons are available to you. You just can’t overwrite the default actions of the session, keys, drum, custom buttons. It will always switch to those modes. I use the buttons down the right as track/channel selectors in AUM. I’ll also use that same track key with modifier keys (like shift) to switch to layouts of an instrument on that track. It’s up to your imagination really.
Only 1 thing/software should be controlling the Launchpad. If you’re gonna script it with Mozaic, you’re gonna have to disable the integration of Loopy Pro, LK, Atom2, etc.
CC are ok! But how to avoid “fluid” value jumping from one position to another with faders?
It is nice feature but sometimes I would like to have direct 8 possible states of fader, not 3 values that are sent when I move fader? I hope this is understandable, as my English is far from you know…. ‘Perfect” 😂
So for disabling integration there is “session of” gui-button-trigger in the mosaic code right?
Thank you for the clarification!
@szczyp that why it’s difficult to do button on the faders pages. You need to tell Mozaic only to trigger its action on a perticular cc value. And there’s 4 values per button.
So if you had a button on pad 4 of the fader, you’d tell Mozaic to only take action at cc value 64. Not at 0-63.
This also presents a odd situation because you have to map them out. If you had something on pad3, and you pressed pad 4, pad 3 would be triggered on the way to pad 4. (Unless you code this out as well).
So it gets hairy quick with buttons on fader pages. I recommend switching to a button layout or using the arrow keys and scene selec buttons.
Not sure what you’re asking about the disable integration. If you’re gonna use a Mozaic script, you need to tell loopy, or any other apps, to ignore the controller and not light it up.
Thanks again for the clarification!
Right! And that’s 12 buttons 1. is would be more than enough!
Although I cannot understand, and I hestikate to ask for support ,as this growed to massive.
But if no problem:
In @espiegel123 ‚s code, the gui is like that:
If I good understand session on and off toggle DAW mode , so automap .
But fader-bank also is on DAW mode but on different layout.
So disabling DAW mode (session off) disables fader-bank!
And second behaviour that I observed: turbiny fader-bank layout didnt disable sending launchers-scene-buttons-from-the-right from sending their typical messages, so host loopy pro for example still launch scenes, even If I recalled faderbank.
And only because loopy pro not utylise navigation buttons (up down left right) they are at this moment available (but in future we dont know, maybe loopy pro will be updated to use, or in host like atom, they are alerady used by scrip in sequencer).
Im right or it is mistake from my side?
Question: fader set1 on gui maked initialise of fader bank - If I good understand (i hope not!)
Fader layout just show it on martice of hardware buttons, toggle DAW mode to fader bank.
Why not to merge this both buttons to one If after initialising, mosaic script still keep all values in memory?
I mean, If I can press as many times as I want fader set 1 and it will not reset values, why to separate this command from fader layout?
Now only last question…. How to avoid routing to launchpad externally from mosaic? I wish there will be internal core midi ports like in loopy or atom… e-mail sent to @brambos