Simulating the shift-drag function of live.dial

Recall the Coll's icon

Hello folks. I was wondering if I could simulate the function of shift-draging a live.dial. I specifically want to use the live.dial object and I want to press a button/toggle to enable/disable finer values (like when I press shift). Is that possible? Thanks in advance.

TFL's icon

You can't do that natively with [live.dial] but you can put an invisible UI object on top of it when your "precision control" toggle is enabled and process the value change manually.

Max Patch
Copy patch and select New From Clipboard in Max.

TFL's icon

Here's a more robust version that also handles change speed.

I forgot to say you need to enable presentation mode to see the result.

Max Patch
Copy patch and select New From Clipboard in Max.

Recall the Coll's icon

While this is a great solution for some cases, this won't work with MIDI mapping. I want to map a dial to a MIDI controller's knob and when I press a CC switch, to have finer control.

TFL's icon

You can use a similar solution though by mapping your knob to a ghost control used for receiving the data and applying the finer control or not to the actual dial.

Various implementations are possible depending on your case:

  • By mapping, do you mean the Live or Max built-in mapping feature?

  • Is it acceptable to use a [midiin] instead of the mapping feature?

  • Can you set your controllers knob in relative mode (like sending 0 when turning counter-clockwise and 127 the other way)?

Recall the Coll's icon

I ideally want to map it through Live, but if that's not possible, midiin could work too.

Can you set your controllers knob in relative mode (like sending 0 when turning counter-clockwise and 127 the other way)?

I'm not sure I totally understand what you mean.

schlam's icon

Hello.

AFK, I was facing some times ago to this same exact situation and solved it with the wonderdul external "11.stroke" from 11olsen (dont remember the exact names sorry..)

It allows to simulate Shift press (as any other keys) with mac and window .

The downside is you really have to program a clean way to desactivate it because the Shift press has to be switched off at the moment you want..

Recall the Coll's icon

That works great. All I did was Toggle->Append 7->11.stroke and it gives the desired result! Thank you very much.

Update: this only works with the mouse and not with the MIDI controller.

TFL's icon

Usually MIDI knobs can have two modes:

  • absolute (the default), going from 0 to 127

  • relative (available on some controllers, only with endless knobs), sending either 0 or 127 depending on the direction of the rotation. Some brands have various standards like 64/65 instead of 0/127 (see "Additional info" in this page)

Both Max and Live can handle knobs in relative mode. It has the advantage of not being limited to the resolution of 127 steps.

But anyway, since you want to rely on Ableton mapping, you won't have direct access to the actual midi input, just the value of the control the knob is mapped to.

What you want to achieve can work only if you have infinite knobs, otherwise you wouldn't be able to reach the entire range while in "precision control". The following patch might work, assuming you have endless knobs in absolute mode (the usual 0 to 127); assuming that the knob keeps sending 0s or 127s when you reach the start/end of the range, and assuing you map your knob to the invisible number box instead of the live.dial.

Max Patch
Copy patch and select New From Clipboard in Max.