Variables for Knobs

gatoral

2010-08-03 03:14:06

Hello. I'm using a Korg NanoKontrol with Midi Translator Classic and I'm wondering if there is a variable that would allow the knobs going up (clockwise) to send one command and the knobs going down (counterclockwise) to send another. Is this possible, and if so how can it be achieved?

Attigo

2010-08-03 21:22:28

What commands do you want them to send?

Scott

gatoral

2010-08-05 06:40:09

Just simple keyboard commands. A clockwise turn would send a command such as Shift-A and a counterclockwise turn would send something like Shift-Z.

Attigo

2010-08-05 06:55:12

Ok, thats cool, do you know if they are Absolute or Relative (endless)?

Scott

gatoral

2010-08-05 19:37:16

Absolute

in_every_end

2011-05-02 20:31:32

Hi all,

Does anybody have any info on this?
I'm trying to do the same with knobs on an mpd32.
i.e. a clockwise turn = arrow right, counter clockwise = left arrow.
These knobs are endless. * I think *

Any help on this would be grrreat! :)

Attigo

2011-05-02 21:11:42

Hey guys,

I've made an example here of this working, using a knob input, which I use B0 00 oo in the example. B0 00 being the first MIDI note on the first channel and oo being the 'local variable'. You just need to edit B0 00 to be the message from your knob, whatever that may be. I also use the 'global variable' ga, just because it is the first one.

Here is the code for how this works:

Code: Select all

[x] Translator 0: Knob Clockwise 
Incoming: MIDI B0 00 oo
Rules: if oo<ga then exit rules, skip Outgoing Action
Outgoing: Keystroke: Shift(A )

[x] Translator 1: Knob Anti-Clockwise
Incoming: MIDI B0 00 oo
Rules: if oo>ga then exit rules, skip Outgoing Action
Outgoing: Keystroke: Shift(Z )

[x] Translator 2: Track Knob Position
Incoming: MIDI B0 00 oo
Rules: ga=oo
Outgoing: (none)

There is 3 translators, it could normally be done in 1 but because you have keystrokes, a translator can only output 1 singular keystroke, and because there are 2 translators for this, we need to 'track' the knob position in another translator.

The first 2 translators basically check if the knob input is either higher or lower than the previously stored value. The previously stored value is set in the third translator. The third translator needs to be last so it tracks the position after the first 2 readings, this is basically setting the last knob position value.

And @in_every_end, the knobs on the MPD are physically endless, but they send an absolute value, as in after it reaches 127/7F, it stops sending messages when you turn it. Stupid, I know.

Hope this helps!

Scott

in_every_end

2011-05-02 21:47:36

Thanks Scott, this looks like it will do the job!
I'm new to using rules so just wondering, before I turn the knob for the first time will the ga variable have a value equal to 0 as no value will have been assigned to it yet.

Cheers

John

Attigo

2011-05-02 22:02:11

No problem! Give me a shout if you are having any problems...

Scott

in_every_end

2011-05-03 17:28:05

That seems to be working great mate :)

Attigo

2011-05-04 01:01:18

Good stuff!