General

Multi scale module

Started by L8Bit on .

Sign in or create an account to join the conversation.

5 posts

Topic starter
Hi guys. My name is Josh, I just bought myself an iPad pretty much just to use lemur on Ableton Live with livecontrol 2 and had an idea for a module.

My idea is similar to the page on livecontrol where you can choose the root note and scale then it only shows the correct notes in that key. except that you have multiple scales all on one page. I'm thinking of 4 which can be individually set with 2 octaves for each set.

Now I can place all the parts in the relevant place one screen no problems, but the programming side I'm a little new to.

I'm thinking that when you hit the root note it would set the first note in the row to that root note. then the scale would then change all others in relation to the state of the root note. Also possibly an octave+ and octave- option would be ideal to add too.

If anyone could give me some pointers or advised how long this would take to learn/create that would be amazing. I've popped a quick mock up as an attachment.

Cheers,

Josh

Multi scale design.jpg
So I've created a template of all the pads and menu boxes and where they fit best. I have attached this.

Can anyone give me pointers of how to go about scripting this as i have no knowledge at all of scripting.

I want it to essentially be a copy of the "play" page on live control 2. but multiplied 5 times so 5 different scales on one page.

Any help would be greatly appreciated. Many thanks :)

Josh

Multi scale keys.jzml
Hey Josh,

building a keyboard which dynamically changes the pitches is a bit work... (maybe therefore till now nobody answered like "ok, I made that quickly for you") But it for sure can all be done! At least you have to define a pitch vector that you send through a Custom Midi (note on AND a second for note off). I once made a dynamic keyboard, maybe diggin your nose deep into the scripting can help you: http://liine.net/en/community/user-library/view/85/

All the best
mat
...hey, I found some time and made Key 1 functions of your module working for octave, key and scale....
also added Keyvelocity, but no Midichannel selection yet (it sends on 1, Miditarget 0)
Think you can copy the functionality to the others 4 Keyboards and learn how it is scripted by that way.

The pitch is like: Key1.selection+(Oct1.selection*12)+{scale, scale+12}
"Key1.selection" is drop down menu C.....
"(Oct1.selection*12)" is another drop down
{scale, scale+12} reflects 2 times scale, which is defined in a script
if (Menu6.selection==0) scale={0, 2, 4, 5, 7, 9, 11};
if (Menu6.selection==1) scale={0, 2, 3, 5, 7, 9, 11};
if (Menu6.selection==2) scale={0, 1, 3, 4, 6, 8, 9};
if (Menu6.selection==3) scale={0, 3, 5, 7, 10};
It works well so far... but it does not fit number of pads to tones within scale.
hm....some "setattribute" script might do that, but no time for this now.

Hope this gives you a good start for creating your module :)
keep progress posted

g*mat

MultiScaleKeys_beta.jzlib