Knob resolution switcher? (like shift, ctrl + left click behavior)


#1

Hi - I am wondering how to envoke the behavior that is possible inside the patcher to vary the resolution of the knob values (by holding shift or ctrl) on a frontpanel or for midi input. It would be great to be able to assign knobs to be of different resolutions to get fine adjustment of values..otherwise i can hear the steps in filter changes for example.


#2

hmm, impossible for midi input, unless we either:

  • support 14 bit midi
  • smooth inputs

I've added some explicit 14 bit mid support recently (does your controller support it?!) , but we would need to add to the cc mapping logic.

smoothed, I thought that many objects already use smoothing between control rate and audio rate @johannes? i.e. we don't step between 1/128 values. this is the appoach taken by most hardware synths - I think.

as for setting dials to fine mode, hmm, not sure, it certainly would be a pain with midi... unless using relative encoders (and even then!), and then possibly confusing to users....
perhaps setting custom ranges is better? then this could be divided into 128 steps.

one thing to note... there are often equivalent objects with modulation input, this will take fractional inputs, so its then easy to define custom ranges/mappings.. this is what I've done.(in particular when using MPE controllers, but possible for everything)


#3

Generelly one cannot assume smoothing is always desirable. For example, the eclectric_piano patch uses tuned high-resonant filters, this wouldn't work when smoothing everything.
Smoothing also implies lagging.

To smooth out filter sweeps, use a smooth or k-rate lowpass.
A potentiometer on a gpio analog input for filter sweep control also feels so much better than any MIDI controller.

Assinging a sub-range to a parameter is the best solution I believe. But then you have to trade off range with precision.

14bit support on MIDI controllers? I've seen many midi controllers produce only 7 effective bits for pitch bend, even while a pitch bend midi message contains 14 bits.

If you want variable resolution, I think this is the responsibility of the midi controller. Interfaces with rotary encoders often make larger increments when turned quickly.


#4

mostly my reason for needing precision is Phase Modulation - my current instrument definitely needs it to adjust amounts for the level and frequency of the modulators.

Ill checkout subranges.. should be good enough for precision adjustment.

will also checkout midi knob settings.

My fantasy front panel would most likely need to use endless encoders and LEDs that show the settings once a preset is recalled (still didn't find a best solution for presets since i want to be able to save stuff - most likely something non axo based to interface with the interface) - if i use endless knobs I guess midi resolution is the thing I would need to use - but endless knobs firstly need to be supported sooo..maybe will just settle for a simple solution with absolute knobs assigned to sub-ranges.


#5

this may or may not be true...
on the push, it sends relative encoding, so if you turn the knobs slowly you get (e.g.) -1 / +1, if you turn faster you get higher numbers, so Ive made it such that a slow turn is 0.05, and its scales up to +10 or so... (oh and if I hold shift it does fixed 0.01 increments), I'm not limited to midi resolution.
(this is generic for all parameters)

axoloti is very flexible smile