Page 1 of 1

Posted: 23 Feb 2018, 16:44
by woodslanding
I have used inspectors (ala Logic) in my workspaces since Usine V4, they are indispensible to me, as my wkps always have a bunch of similar channels, and insufficient screen space to edit all parameters from the channels themselves.

There are two big issues that come up. First, when the inspector is in a different rack, and connected by busses, it is hard to avoid 'jitter' in the controls, where two different values chase each other around the loop.

Secondly, it's easy for data from one source to mistakenly get sent to another source.

All my inspectors so far have had timers. So when the channel gets changed, data from the inspector to the old channel is blocked. Then we wait. Then we let data from the new channel in. It's been clumsy slow and complicated, but it has worked. But real 2-way communication has still not been possible. I could allow changing values either from individual channels, or from the inspector but never both, or I would end up with jitter.

But thanks to gurulogic, I have a better way to wire this:
Third example (example2waymap(alt)) is another approach where I circumnavigate the buses latency issue by having the plugin parameters kept in a local loop and sending the remote parameters data to manipulate the local loop directly.
This is now a solution for my inspector problem. Data is sent to and from the inspector, with the first item in the array being the source channel number. The script checks the channel of incoming inspector data to make sure it matches before changing anything, and when it does, it is 'injecting' inspector data into this nice tight 1-block local loop. I have managed to scale this up to many more parameters without issue, and there are no timers, so it changes as quickly as possible.

It does seem to be important to close the loop completely for all parameters, even if they only need to go one direction, or else stray values can end up in the loop (not sure how this happens....)

Don't know if anyone else might need this, but here it is, just in case:

http://www.sensomusic.com/forums/upload ... orTest.wkp

Posted: 23 Feb 2018, 19:53
by joffo78
Hi woodslanding. I have the same problem than you !
i think i managed to solve it but with a very very tricky solution
here you can see an example
I know senso ask him a lot of questions about this question.
Hope (but i'm sure) he will find a very smart solution !

Posted: 27 Feb 2018, 06:44
by woodslanding
I think I figured out where the stray values may have been coming from.

There is a for loop in the script that has a wrong endpoint. I will try to upload a fix soon.

Posted: 27 Feb 2018, 21:11
by gurulogic
Hi, its good to see that my method for keeping parameter loops localized has given some inspiration.
In the case where not adding a dense data flow (ie: LFO's) to an array of multi parameter flows , just in case you have not considered this idea, I find the holdtime parameter on the pass if change module very useful for controlling jitter in 2 way flows.

Image