Module idea? Coarse/Fine MIDI shift key

I’ve been trying to figure this out for a couple weeks with no progress. Perhaps a new module or feature is needed?

I want to control coarse and fine pitch of an oscillator but only use one MIDI knob (a pot, not an endless encoder). I’d like to hold down a momentary gate button on my MIDI controller to change the knobs function between coarse and fine. No matter what I come up with, I cant keep the voltage from jumping around when pressing the gate button.

I’d like to use this with my Novation Launch Control XL

You’d need a module to do this, if your controller diesn’t offer the function itself. Course/fine on Rack knobs is purely a UI thing.

IMO this can only work with endless encoders.

With endless encoders and MIDI sending back to the controller you could do coarse/fine with only one knob:

But I haven’t finished this module yet.

2 Likes

wow, that video is two years old! releasing the module anytime soon?

i am currently using pots not endless though…

anything like the novation launch control XL but with endless encoders?

here you can see an example how this works:

I’m sorry, but I only did a proof of concept and found some issues that need to be cleared before it could become a reliable module. And I also have other ideas I want to work on further, see: The Console 1 Screen Project

Pots vs. endless encoders :control_knobs: :control_knobs:

IMO pots are fine when each single pot is fixed mapped to a single parameter of a module. A pot gives you 2 defined endpoints and therefore the “analog” feel you’ll find on most modular hardware modules. Maybe take a look at: Midilar news

And endless encoders are fine when in a single patch the mapping of the controls can be changed because endless encoders have no endpoints. So when the mapping is changed (by the press of a button or by a sequencer or by whatsoever) and e.g. the value changes from 5 to 125, the endless knob is always in the right position, and no jumps will occour and no “wrong” endpoint will distract you. But having no endpoints at all can also be distracting.

Maybe an old NI Maschine controller :thinking: Because of their latest software update that doesn’t work with Maschine Mk I and Mk II controllers, I expect people selling more of these devices.

The more I think about this “problem”, the more I prefer a simple “solution” by using 2 knobs on the controller, one for the coarse value, and the other for the fine value. Both values could simply be added using an attenuator.

In the example above, red would be the coarse value, and yellow would be the fine value.

2 Likes

@zakforrest here’s a solution for a MIDI knob (green cable on the MIDI-CC module) and a MIDI gate button (yellow cable). When the button is pressed, the resolution is shrinked down to 5%. There are no values jumping around. But I have to say, it feels unintuitive (better use 2 knobs).

midi cc sensitivity switch.vcv (2.1 KB)

1 Like

LOL!!! THANK YOU! the project file crashes both the arm and non arm version of vcv rack whenever i try to open it. but i believe you, this is weird, should use endless encoders or two knobs. maybe ill get a little second controller instead of trying to consolidate knobs on my launch control xl…

What version of Rack are you running? If it is before 2.5.0, the input cable stacking shown in the screen shot above (VCA Mix - IN1 and IN2) will cause Rack to crash.

Otherwise, never mind… LOL.

2 Likes

2.5.1

its ok i super appreciate the help. i think i need to go endless, or just use two knobs

2 Likes

I’m still curious about the crash. Would you be willing to make the crash happen again, then upload the file log.txt from your user folder? Somewhere, most likely in one of the plugins, is a serious bug that is probably affecting other people too. It would be great to find out where the crash is coming from and report it to the appropriate developer.

1 Like

I saved the patch as selection from Rack version 2.5.2:

midi cc sensitivity switch.vcvs (13.3 KB)

While I agree an encoder is the better solution, one thing I’ve seen some hardware synths do that re-use their potentiometers is a “magnet” or “bookmark” or “pick up” mode.

The concept is that when you change mode (in your case course to fine), you set a placeholder where the parameter you are leaving was at (e.g.: the knob was at 9-o’clock). Then when you come back to that parameter, you don’t change anything in the parameter until you move the knob back to the placeholder position (e.g.: again, 9-o’clock), thus “picking up” from where you left off. It keep it from jumping when you switch between parameters, but also isn’t immediate to adjust the new param.

You might be able to rig something up with logic modules and window comparators, but you would probably want a custom module to handle visibly showing you where the placeholders are at, otherwise it could be super-annoying to use.

But it can be done and there is precedent :wink: You can see it in the video of this DIY synth: https://www.youtube.com/watch?v=iXR4-jLjfkk

2 Likes

almost all of my old modules had octave, semi, and fine controls. And of course all pots are fine if you hold down the ctrl key…

2 Likes

I tried the pickup solution but found it to be a unsatisfying workaround. The solution I arrived at was with a velocity/rpm of the encoder and sending incremental changes opposed to absolute values.

I use Processing between the MIDI device and VCVRack to switch from 128 bit MIDI to infinite OSC. Trowasoft is the connection to VCV.

1 Like

love that kobs !!! are they 3d printed?

Yeah - the pick-up method seems like something you need to be raised with for it to feel right. :smile: And your vid is a great example of why rotary encoders rock (and not just for the great knobs).

1 Like