Midi Remote Functions ( single knob for forward/backward cursor )

I would like to assign to a single knob the funcion to move forward/ backward the Cursor.
I could only assign to two different knobs respectively to move forward or backward.

Same thing if I want to zoom in /out. It seem that two different knobs have to be used.
One for zoom in and one for zoom out

Did I miss something? Is there a funtion in the list that let me assing to a single knob these functions?

If you have a continuous controller/encoder or jog wheel rather than a potentiometer, then it will send a message for left and a message for right, rather than just an updated value.

jogWheel=surface.makeKnob(currX+3, currY-0.3, 4, 4)
jogWheel.mSurfaceValue.mMidiBinding.setInputPort(midiInput).bindToControlChange(0, 88)
var jogLeft = surface.makeCustomValueVariable('jogLeft')
var jogRight = surface.makeCustomValueVariable('jogRight')
jogWheel.mSurfaceValue.mOnProcessValueChange = function (activeDevice, value) {
        jogRight.setProcessValue(activeDevice, 1)
        jogLeft.setProcessValue(activeDevice, 1)
page.makeCommandBinding(jogLeft, 'Transport', 'Nudge Cursor Left')
page.makeCommandBinding(jogRight, 'Transport', 'Nudge Cursor Right')

You can split out the two values into two separate bindings, then bind each of those sepearalty.

Thanks a lot dctsys.

I have an encoder on my Oxygen pro 49 fortunatelly
And I use the preset editor on the Pc in order to map my controller

I got through all variables offered in the preset editor to apply your suggestions, and change the function of my encoder, but i didn’t find anything that really work

Thank you by the way

From the pro 49 manual: (Page 39-41) https://www.soundpro.com/content/product-documents/Oxygen-Pro-Series-User-Guide-v1.1.pdf

When set to CC Relative, these are the available parameters:

CC: The Encoder will send its MIDI messages using this CC number. Available Values: 0-127

Type: The Encoder will send a value number in the range of values when you turn it left or right.

Available Values:
o Right 65, Left 63 o Right 63, Left 65 o Right 127, Left 01 o Right 01, Left 127

If the encoder is set to CC RELTV and set to the correct CC (my code sample used channel 1, CC 88), Any of the modes should work.

Hi , very kind of you
I did it all.

But it seems I cannot split my encoder to work in both direction left or right.
It is set to CC RELTV and I set the Rel Val for left and right.

The problem is that when I select a Funtion I can choose to Push the cursor right or Push the cursor left, alternatively.
So even if Available Values are set to work both left and right, the cursor only work for the selected Function.

What is the name of the function that let the cursor work in both direction ?

Have a happy christmas, by the way.

You need to do it in JavaScript, and use the code I posted.

The bulk of that code is specifically to split one encoder so it triggers different commands for left and right turns. Once its spit you can map it to any two commands.

I don’t think there’s a way to do a split mapping like this in Graphic builder.

The simple way to do this if you are using something like a Monogram Orbit wheel is to forget about CC and use ‘Keyboard Mode’ in the Monogram setup.
Here you can assign a key command to the left turn and a different one to the right turn.
Now assign these to your Nudge left and Nudge right key commands and away you go without having to use the controller editor.

  • Geoff