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 Store

Loopy Pro is your all-in-one musical toolkit. Try it for free today.

"Playing" CCs with pads

2»

Comments

  • I managed to fix a few errors but here is my code, and the errors.

    Looks like a simple syntax error but I don’t know enough to correct it. Any advice would be appreciated. Thanks.


  • edited April 2022

    @Poppadocrock
    You need to get the indentation correct I believe. Compare to the original screenshot for clues.
    Look at the padCCVal indents and that last for loop.

  • _ki_ki
    edited April 2022

    @Poppadocrock There is a syntax error in the first for loop. Remove the space between padCCnum and [padNum]. I don‘t know if this will fix the error messages, but it‘s a start :)

    .

    If this doesn’t fix all errors, could you please paste the mozaic code text so that i can fix them. To get a forum code block that keeps the formatting

    • press the ¶ Icon and select Code three times
    • This gives you 6 backticks with the cursor after the the third one
    • Press return to split into 3 and 3 backticks in two lines
    • Paste mozaic code inside
  • @Poppadocrock said:
    I managed to fix a few errors but here is my code, and the errors.

    Looks like a simple syntax error but I don’t know enough to correct it. Any advice would be appreciated. Thanks.


    Message me the code text and I’ll check it out. I wonder if the space before left bracket in the first for loop is throwing off the parser.

  • @Poppadocrock said:
    Yes it does.
    I got a bunch of syntax errors. I tried to copy every letter and space to make it identical, See pic. Any recommendations, I’ve only ever coded a midi echo.

    Ha! I'm glad you're trying this out before me; that's exactly the kind of thing that scares me off from trying these scripting experiments.

  • @Poppadocrock : before sending me the text, see if removing the space between padCCNum and the [ solves the problem

  • @Moderndaycompiler said:
    @Poppadocrock
    You need to get the indentation correct I believe. Compare to the original screenshot for clues.
    Look at the padCCVal indents and that last for loop.

    @_ki said:
    @Poppadocrock There is a syntax error in the first for loop. Remove the space between padCCnum and [padNum]. I don‘t know if this will fix the error messages, but it‘s a start :)

    .

    If this doesn’t fix all errors, could you please paste the mozaic code text so that i can fix them. To get a forum code block that keeps the formatting

    • press the ¶ Icon and select Code three times
    • This gives you 6 backticks with the cursor after the the third one
    • Press return to split into 3 and 3 backticks in two lines
    • Paste mozaic code inside

    @espiegel123 said:

    @Poppadocrock said:
    I managed to fix a few errors but here is my code, and the errors.

    Looks like a simple syntax error but I don’t know enough to correct it. Any advice would be appreciated. Thanks.


    Message me the code text and I’ll check it out. I wonder if the space before left bracket in the first for loop is throwing off the parser.

    Thanks all, Sorry was away for device give me a second here… I wanna fix that spacing and see what I get.

  • Fixed some of the spacing and it loaded up perfect. Thanks all.


  • With @espiegel123 permission I’ll put on Patchstorage.

  • edited April 2022

    @espiegel123 said:

    @Poppadocrock said:

    @espiegel123 said:

    @Poppadocrock said:

    @espiegel123 said:
    here is a mozaic script that does what OP asked for. it could easily be modified so that each pad could specify its channel and the cc number. as is, it uses the pad number for the cc number.

    a lot of enhancements could be added with little effort.


    That’s dope any chance you could paste the text here or upload to Patchstorage when you get a chance. Thanks.

    Tbh, I feel like this script is short enough for anyone to type up in a few minutes and that anyone who needs the code to get started will probably learn more from typing it in than from copy/pasting.

    Right on. It is but I’m feeling lazy, lol. I’ll screenshot and type up. Cheers for putting it together.

    Quick question, so each pad has the cc number assigned, 0-15, and the value, I’m guessing you just go in and change both the cc# and the value for each as needed, correct?

    The way that I set this up the CC numbers are set up in the first 'for' loop and are the same as the pad number. I did it that way just to show how a loop could be used to automatically fill them in. If one wants to set up arbitrary assignments, comment out that loop and instead have a series of assignments like the ones used to assign the cc values.

    For example:
    padCCNum[0] = 20
    padCCNum[1] =35

    this would make pad 0 send CC 20 and pad 1 send CC35, etc.

    Mozaic counts from 0, so pad 0 is the first pad.

    Hopefully that makes sense.

    Most of this does, but when you say comment out that loop, using my photo above, do you mean remove the row of - padCCVal[0] = 10, etc… and replace it with a similar row labeled - padCcNum[0] = 20 and so on. And if so where would the cc values go. Bear with me, lol.

  • @Stochastically said:

    @Poppadocrock said:
    Yes it does.
    I got a bunch of syntax errors. I tried to copy every letter and space to make it identical, See pic. Any recommendations, I’ve only ever coded a midi echo.

    Ha! I'm glad you're trying this out before me; that's exactly the kind of thing that scares me off from trying these scripting experiments.

    Lol, no worries, I wanted to try it. It was somewhat easy, just copied it really. There is a thread that has several beginner scripts, I forget what it’s called, but it takes you step by step how to do them. It’s like a free mini course really. I did the first two I think and I’ve always wanted to try some more. There’s so many good ones on Patchstorage too. The first one is a simple midi echo that can easily be alyptered into by changing the amount, velocity, and semitones of each echo after root note is played. Just In case your curious. Lol.

  • Awwww man, just thought this… is there a way to use one of the knobs, or maybe 2 (one for each row) to set a transition value. Basically I’m thinking like a CC fade in/out to adjust how fast or slow it takes to get to its set value, once that pad is pressed. It could allow you to play with the timing for how fast or slow the value is reached. how many milliseconds/seconds it takes? Maybe 0ms-4sec. Thoughts. Thanks.

    Heck I want to use all 4 knobs if possible, maybe one could be a random feature where you set an amount that the set value could vary. Ie. Set at 64, but random set at 10, each press is random value between 54 and 74. each press have it randomly pick a value within that range… this sounds cool but also slightly out of my depth… lol.

  • @Poppadocrock said:

    The way that I set this up the CC numbers are set up in the first 'for' loop and are the same as the pad number. I did it that way just to show how a loop could be used to automatically fill them in. If one wants to set up arbitrary assignments, comment out that loop and instead have a series of assignments like the ones used to assign the cc values.

    For example:
    padCCNum[0] = 20
    padCCNum[1] =35

    this would make pad 0 send CC 20 and pad 1 send CC35, etc.

    Mozaic counts from 0, so pad 0 is the first pad.

    Hopefully that makes sense.

    Most of this does, but when you say comment out that loop, using my photo above, do you mean remove the row of - padCCVal[0] = 10 and replace it with - padCcNum[0] = 20 and if so where would the cc values go. Bear with me, lol.

    If you remove that first loop which assigns the CC numbers to essentially 0, 1 ….. 15 you can explicitly assign them as you see fit. Eg. Here pad 0 is cc 10 for pan and the value sets it to the middle.
    padCCNum[0] = 10
    padCCVal[0] = 64

    Now rinse and repeat for the remaining pads (1-15) by doing it in pairs like above with CC controllers you are interested in.

  • @Poppadocrock : I’ll post answers to your questions a little later today.

    Someone up-thread mentioned indentation. Indentation is cosmetic. It makes code easier to read and spot missing brackets snd “end” statements but doesn’t have an effect on the parser.

    Spaces where there shouldn’t be any (like before a “[“) can throw off the parser and might cause errors on lines after the one with the extra space character.

    More later…

  • edited April 2022

    @Poppadocrock said:

    @espiegel123 said:

    @Poppadocrock said:

    @espiegel123 said:

    @Poppadocrock said:

    @espiegel123 said:
    here is a mozaic script that does what OP asked for. it could easily be modified so that each pad could specify its channel and the cc number. as is, it uses the pad number for the cc number.

    a lot of enhancements could be added with little effort.


    That’s dope any chance you could paste the text here or upload to Patchstorage when you get a chance. Thanks.

    Tbh, I feel like this script is short enough for anyone to type up in a few minutes and that anyone who needs the code to get started will probably learn more from typing it in than from copy/pasting.

    Right on. It is but I’m feeling lazy, lol. I’ll screenshot and type up. Cheers for putting it together.

    Quick question, so each pad has the cc number assigned, 0-15, and the value, I’m guessing you just go in and change both the cc# and the value for each as needed, correct?

    The way that I set this up the CC numbers are set up in the first 'for' loop and are the same as the pad number. I did it that way just to show how a loop could be used to automatically fill them in. If one wants to set up arbitrary assignments, comment out that loop and instead have a series of assignments like the ones used to assign the cc values.

    For example:
    padCCNum[0] = 20
    padCCNum[1] =35

    this would make pad 0 send CC 20 and pad 1 send CC35, etc.

    Mozaic counts from 0, so pad 0 is the first pad.

    Hopefully that makes sense.

    Most of this does, but when you say comment out that loop, using my photo above, do you mean remove the row of - padCCVal[0] = 10, etc… and replace it with a similar row labeled - padCcNum[0] = 20 and so on. And if so where would the cc values go. Bear with me, lol.

    By comment out, I mean put // at the beginning of all the lines of the for loop. This screen shot hopefully explains what I meant. If not, please let me know:

    As @Moderndaycompiler says, you could arrange the lines differently so that the CC number and value are assigned on adjacent lines. I did it this way to simplify using a loop or not.

  • Just a comment; you can add code blocks here by enclosing them in triple backquotes (```), which makes them easier to copy and paste. For example:

    // This for loop sets each pad to use the CC Number that is the same
    // as the pad number
    for padNum = 0 to 15
        padCCNum[padnum] = padNum
    endfor
    
  • @Poppadocrock said:
    Awwww man, just thought this… is there a way to use one of the knobs, or maybe 2 (one for each row) to set a transition value. Basically I’m thinking like a CC fade in/out to adjust how fast or slow it takes to get to its set value, once that pad is pressed. It could allow you to play with the timing for how fast or slow the value is reached. how many milliseconds/seconds it takes? Maybe 0ms-4sec. Thoughts. Thanks.

    Heck I want to use all 4 knobs if possible, maybe one could be a random feature where you set an amount that the set value could vary. Ie. Set at 64, but random set at 10, each press is random value between 54 and 74. each press have it randomly pick a value within that range… this sounds cool but also slightly out of my depth… lol.

    That is all doable but will take longer than the occasional few minutes I've got free. It would be a great exercise for you or someone to get a little deeper into Mozaic.

    If someone wants to do it, here are some hints:

    • the first step is to get simple ramping working with pre-set values (adding knob control is easy but doing too much at a time is a trap when you aren't comfortable coding)
    • the way I would do ramping is to use Mozaic's timer. If you have a variable for the time for the ramping, you will need to calculate the time between the events.
    • if every pad has a different ramp time, you will need to have a fancier timer loop than if you don't.

    Keep in mind that MIDI is not fine-grained. It only uses integers from 0 to 127. So, if you ramp from 20 to 70, for example, there will be 'steps' if you ramp over a long period of time.

    Someone may already of written a Mozaic script that transitions between states over a user-settable time. You might be able to get some ideas from that.

  • @Poppadocrock A typical case of "OK it works 100%, now I want more" 😄

    These random and fade up / fade down tricks would not only be easier to build in Drambo but also easier to edit.
    A few tips to get you started...

    Triggered CC value ramp up and ramp down with adjustable timing:

    Random CC value between 50 and 70:

  • Thanks to everyone who pitched in with help here.

    Cheers @espiegel123 I’m gonna take another crack at it later.

    Yea, that’s definitely what happened @rs2000

Sign In or Register to comment.