Okey so i bought a beatstep pro, and i want to use to control all of my synths yeah!
the beatstep can send relative cc and its easy to swith midi channel.
so what i want to do is if i send a value of 17 on CC3 i want to output value 1 on CC3. Now next time i send a value of 17 on CC3 i want to output a value of 2 etc etc then if i send a value if 15 on CC3 i want to decrease the value of the sent CC. Thus making it absolute, and i want to do this with all 16 controllers named from CC1 to CC16.... the. I figure i can use several instaces in midifire to go along with each channel since iam planning on switching channels when switching synth, are you guys with me ? I hope you are, i tried doing this with midiflow without luck and i just know its possible in streambyter (midifire) but i have no idea on how to do it
the knobs sends value 15 or 17 thus using them as increase/decrease
OK, we keep a track of each CC's value (starting at 0) and assume 17 = inc and 15 = dec. This code will turn all 128 CC's into that behaviour.
Only feed this one channel at a time, so if you want to run multiple channels, run multiple modules, one for each channel.
# init L array to 0 # we use this to keep # track of current CC IF LOAD ASS I0 = 0 IF I0 < 80 +L ASS LI0 = 0 MAT I0 = I0 + 1 END END
# convert relative to abs # only use values 15 and 17 # and only if a CC IF MT == B0 # decrement (value == 15) IF M2 == 0F IF LM1 > 0 MAT LM1 = LM1 - 1 END END # increment (value == 17) IF M2 == 11 IF LM1 < 7F MAT LM1 = LM1 + 1 END END
# issue the abs CC SND M0 M1 LM1 END
# block all incoming events XX = XX +B
Let me know how you get on. I typed this in verbatim; not sure if there are syntax or logic errors ;-)