Page 1 of 1

Posted: 19 Sep 2011, 17:21
by bsork
I'm not sure if this is a feature suggestion or just a tip to what you can do with missing responsiveness when using the Soft Take Over option. I haven't digged very deep into the behaviour of the take over; whether it just responds when you have an exact match between the CC value and the fader, or if there's a certain margin involved, but as it is it works best for smooth changes. At least unless the controller sends out all the CC values when moved quickly. Neither my Axiom nor my FC300 do that, and I suspect that most controllers don't. Example values from quickly moving the Axioms's ModWheel from zero to full and back again: 0, 18, 48, 89, 127, 120, 70, 1, 0.

Before it was introduced as an option in Usine, I tried to create some scripts to simulate a soft take over behaviour that I liked without success. But now - as I'm creating a workspace where I need both smooth and rapid changes - the new equation module started me thinking anew, and I think I've found a good compromise between smooth and rapid, and it's easy on CPU too. (Not that this couldn't be done with standard modules, it's just that being able to use a good, old IF-statement made me think again.)
Image

I'm using different checks:
- abs(b-c)<=d*.02: A small percentage of the max (or max-min) value to have a margin where the slave will snap to master.
- a==c: The previous master value equals the current slave value.
- (a<c and c<b) or (a>c and c>b): The master values have "crossed" the slave value.

If one of the above conditions is met, the slave receives the master's value, otherwise it gets its own value.

The down side I can see to this approach, is that the physical controller sending the CC values might have been moved since the last update of the patch values, either because some other preset has been used sending some other CC message, or that the patch has been turned off, but I can live with that.

The Soft Take Over option obviously has to be turned off in setup for this to work.

Posted: 20 Sep 2011, 22:36
by bsork
It struck me that I didn't need the first two checks, just slightly different versions of the two last. Here's how it looks like as sub-patch:

Image

The connection between the visible fader and the sub-patch:

Image

I guess that something smart could be done with templates when adding faders or knobs to automate the connections, but I have never really delved deep into that.

If you don't mind spending a bit more CPU, you can also easily change the fader colour depending on where the MIDI fader's value is compared to the interface fader's value. Connect the Colour outlet from the sub-patch the the fader's color inlet.

Image

Posted: 21 Sep 2011, 09:20
by caco
Cool idea bsork, will give this one a try when I get some free time. It is really interesting to see what people are doing with my equation module :)