Rotary encoder to change channel in native mode

tems

2007-11-28 01:04:38

http://beatwise.proboards80.com/index.c ... 004&page=1

Hi,

With the help of Stray over on the beatwise forum, i've been using MT to control the native mode of my Korg PadKontrol, and have had some success, but i'm still struggling with few things and was wondering if anyone could help in any way. I've read other posts on the forum, and i think it's similar to this post

http://www.bome.com/forums/viewtopic.php?t=2079

when i turn the encoder knob, as well as moving through my presets in MT, i also want to be able to change to a new pseudo scene on a different channel in native mode. I'm guessing that you can change the channel in the sysex string somewhere, but am fairly new to all this and still a bit confused by it.

Any ideas would be greatly appreciated. I hope at least some of what i said makes sense!

Cheers

Tom

florian

2007-11-29 22:49:12

Hi Tom,

indeed, this is quite abstract for me -- I don't have the PadKontrol. You can easily change multiple things at once with MT, i.e. change the preset and also send a sys ex message in response to one incoming trigger. But I can't help you WHAT to send to the PadKontrol...

Regards,
Florian

tems

2007-11-29 22:50:18

OK, so i've got a little further with this now, and have a better understanding about it. There's still something i cant figure out though.

By turning a rotary controller i want to be able to scroll through different presets in MT (this bit i have set up already). i also want to be able to set a different global variable for each preset, so that rules created will only effect that preset (I guess this would be done using a rule of some sort, but not sure how!).

So turning the rotary controller would set a global variable (g1 for example) to 1, then set up all the controls to do a certain task when g1=1. Turning the encoder again would set g1 back to 0 and set g2 to 1. You’d set up all your controls to do a different task when g2 = 1. Scene + Pad 3 would set g1 and g2 to 0 and set g3 to 1.

Rules are fairly new to me, so could anyone offer advice on how i would go about setting this up?

florian

2007-11-29 23:04:43

Hi,

this makes things much less abstract (although I bet our posts crossed!).

you can do all this with rules, but... there's an easier way:

Use different presets: all the controls for task 1 go into the first preset, the controls for the next task to preset 2, etc.

Then create an [always active] preset (use the right-click menu in the left preset list) which has as incoming action the MIDI message of the rotary encoder. Use e.g. pp as the value. Then, as outgoing action, select "Preset Change", "Activate by Number" -- there type "pp" as the preset number. And, also, check "Deactivate all other presets". Like this only one preset will be active, which is the one selected with the rotary encoder value pp. The always active preset remains active, controlling the active state of the other presets.

Hope that helps!
Florian

tems

2007-12-04 22:16:18

Thanks for getting back to me Florian.

Unfortunately i don't seem to have got much further with it though and am seemingly getting more confused!

As mentioned before, i managed to set everything up so that i could change the presets on the turn of the rotary encoder, but trying your technique i couldn't even seem to do that!

When i tried setting up the always active using pp for velocity when turning the encoder to move through the presets it didn't work for some reason. It works when i use one translator to move up (anticlockwise), and another translator when it moves down (clockwise), using a different midi message for each, but i couldn't do it using a single translator and using pp.

Also, when you say use all the controls for task one in preset one and another set for preset two etc, im struggling with how to do this when the controls are effectively the same set of buttons.

In the korg native mode i can't seem to change the midi message given out and therefore have no way to make them act like different controls, except by changing the channels, or by tricking it with rules as mentioned before. At the moment without being able to do this, im limited to only 16 controls, but im hoping by being able to change the channel in some way that i can therefore have multiple channels x 16.

I think you way would work best if i could get it working, but i just have to work out a way to do it if it is possible with my set up!

When you say "The always active preset remains active, controlling the active state of the other presets.", does this mean that if i switch a control on and move away from the preset it is on, when i come back to that preset it will still be on? So if i turn a light on on one button on preset one, scroll to preset two, that light will be off, but when i scroll back to preset one the light will still be on? Thi is ideally what i'm after so it would be amazing if you could help me get there!

Sorry if that was all a bit long winded and rambling, i just have a lot of this going round in my head! I've tried to explain things as best i can!

Many thanks again

Tems

florian

2007-12-06 19:22:36

yes, the translators in a preset will only get processed if the preset is active, i.e. it has the little checkmark. It doesn't matter which preset is currently visible.

Now if you copy/paste a translator from preset A to preset B, you can modify the outgoing action in the copy in preset B. Now you can control with the checkmarks of the presets if you want action A or action B for the same incoming MIDI message.

Now the outgoing action "Change Preset" can activate/deactivate presets, i.e. change the checkmarks, so you can switch if Preset A or Preset B is used.

Does that help you understand what I mean?

Regards,
Florian

tems

2007-12-07 21:05:57

Yes, i think it makes more sense now.

I'm still trying to get your presets explanation working though. Here is the Translator that i have in the Always Active.

Translator 1: Rotary Encoder
Options: stop=false
Incoming: MIDI F0 42 40 6E 08 43 00 pp F7
Outgoing: activate only preset number pp

But it doesn't seem to work. When i turn the rotary endoder all that happens is that the tick appears next to Preset 1. If i turn it again nothing futher happens, so it doesn't move on to the other presets. If i select another preset and turn the encoder the it just activates Prest 1. It only happens when i turn the encoder clockwise too. Nothing happens when i turn it anti-clockwise. The two give out the same MIDI Message though.

F0 42 40 6E 08 43 00 01 F7 - clockwise

F0 42 40 6E 08 43 00 7F F7 - anti-clockwise

If the velocity value is replaced with pp, then i can't see why this wouldn't work.

If it helps it this is the log message, first when i turn it clockwise

IN : MIDI F0 42 40 6E 08 43 00 01 F7, pp=0x01
OUT: activate only preset number pp

and then anticlockwise....

IN : MIDI F0 42 40 6E 08 43 00 7F F7, pp=0x7F
OUT: activate only preset number pp
Cannot find preset with index 127

Thanks again

Tom

florian

2007-12-11 18:14:10

Hi Tom,

your rotary encoder is a so-called endless knob, so it always gives the same MIDI message if turning in the same direction.

When turning clockwise, the before-last value is 01 (meaning: turning clockwise). Now in your preset, the variable pp is filled with that value: 01. Now you switch to preset pp, i.e. preset pp = 01, which is the second preset in the list of presets (because "switch to preset pp" is zero-based.

Now you could use a global variable that increases by one each time your turn the encoder a little in clockwise direction, and use that variable for switching the preset.

But in your case it's much simpler: just use "switch to next preset" as outgoing action for clockwise, and "switch to previous preset" for the counter-clockwise MIDI message.

Regards,
Florian

tems

2007-12-20 00:17:41

This is how i had it set up in the presets with the ability to scroll through them using the endless knob. Now all i need to do is work out how to change to channels in the sysex so that the controls in each preset give out a different message and also how i can change the channels as i scroll through the presets. The quest continues....