Combine / Control Modulation with Pitch Wheel
Hello all,
I am looking for suggestions on how to control modulation with the pitch wheel.
What I want to do is when the pitch wheel is moved up, the modulation wheel also moves as well.
I have looked at MIDI monitors, and have seen that the pitch and modulation are two different data types, so I don’t know that this is directly possible.
I have never been a fan of pitch or mod wheels, and would prefer a joystick just like the good ol’ Korg DW-8000 days. So, I’m trying to combine the two signals to one common control. Alternatively, I could map this to a single slider.
Any help appreciated.
TIA,
-Michael
90-95% of audio programming and interactivity is about numeric ranges: "I've got these data coming from some source, occupying this numeric range, but over here, I need a different numeric range," e.g. a MIDI CC runs 0 to 127 (linear) but I want the filter frequency to go 100 to 9000 Hz (exponential). Or, a phasor~ goes 0.0 to 1.0 but somewhere else, I need -1.0 to 1.0, etc etc etc.
Standard pitch bend is a 14-bit integer value. Unsigned, that is 0 to 16383. Full resolution would be available by [xbendin] (not [bendin]).
CCs are 0 to 127.
So the problem then becomes, how to map a 0 .. 16383 range onto 0 .. 127.
> "when the pitch wheel is moved up, the modulation wheel also moves as well"
What about when the pitch wheel is moved down?
If you want to ignore downward movement, then, clip values below the center and scale to CC range.
[xbendin] --> [clip 8192 16383] --> [scale 8192 16383 0 127]
hjh
indeed, pitchbend is not a controller.
to copy its values to a CC you needed to convert/scale them down them to 7 bits. the easiest way would be to use midiparse, which cuts off the LSB anyway (for whatever reason.)

if you want to keep the 14 bits your path starts at [xbendin] and ends up at 2 CCs, with no silly midiparse needed, but is otherwise quite similar.
James and Roman,
Thank you for the response, and the education on the different value types. I now have a more thorough understanding of the task at hand, and why this isn’t simple matter of just combining two signals. There is definitely some signal conditioning and scaling needed here in order to perform the task. I will take the information you have given me and work out a final solution.
Cheers!
-Michael