Page 1 of 1

Doepfer: Passing CV only if within a certain range

Posted: Wed Dec 18, 2019 10:13 am
by oblis
This doesn't necessarily apply to just Doepfer modules, but I'm building a primarily Doepfer system and thinking about currently available modules I might get that would allow me pass a CV, unchanged, only if within a certain range...holding the voltage otherwise. For example, passing a random voltage only within certain bounds or picking off only part of a sequence, etc. I "think" the following would work using the comparator offsets to define the lower and upper limits, which then trigger the S&H when within the limits. Unfortunately the comparator is no longer available. Any other ways to do this with available modules?
Image

Posted: Wed Dec 18, 2019 11:06 am
by patched
How do you want it to behave when the CV is outside the bounds? Should it be clamped to the range, or should it give 0V?

Posted: Wed Dec 18, 2019 11:44 am
by BananaPlug
Unfortunately the comparator is no longer available.
There's this: https://metabolicdevices.com/2win/
(two window comparators in 6hp)

Posted: Wed Dec 18, 2019 12:33 pm
by oblis
patched wrote:How do you want it to behave when the CV is outside the bounds? Should it be clamped to the range, or should it give 0V?
Hold the previous voltage...so if in the patch above, the random produces:

2 3 1 2 4 3

and the range is set to 2-3, I would want:

2 3 3 2 2 3
BananaPlug wrote:There's this: https://metabolicdevices.com/2win/
Thank you, that looks like a good option if I have to venture out of Doepfer land (which it seems I might).

Posted: Wed Dec 18, 2019 12:56 pm
by Rigo
Couldn't you use the A-136 Distortion / Waveshaper ? At least for the part of limiting the values ?

Posted: Wed Dec 18, 2019 1:32 pm
by oblis
Rigo wrote:Couldn't you use the A-136 Distortion / Waveshaper ? At least for the part of limiting the values ?
Hmmm, never considered that module for CV for some reason...I'll have to read the manual a bit closer and consider how I might use it for the above. But looks like an interesting module, regardless, for pinning CV at some upper level unless it falls below that value.

edit: I realize that is a pretty obvious revelation to all but myself :lol:

Posted: Wed Dec 18, 2019 4:47 pm
by patched
Ok, this may be a bit cumbersome, but I think it should work (haven't tried myself):

Let lower bound be L, upper be U, and your control signal C. Using mixers and attenuverters, create

A = C - L
B = U - C

Now, with a logic AND gate with trigger level T, input A + T and B + T.

The output from that AND gate should be able to be used as the trigger input for a sample and hold of the signal C. You may also want to AND with the clock pulse, so a new trigger is generated after each update.

Try it out and see if it works :)

Posted: Wed Dec 18, 2019 6:09 pm
by oblis
patched wrote:Try it out and see if it works :)
Thanks for that patched! I'll have to think about that one :guinness:

I've got another solution using the a-152 below that might work...I think I can use address and CV amount to define the bounds.
Image

Posted: Wed Dec 18, 2019 6:45 pm
by patched
oblis wrote:I've got another solution using the a-152 below that might work...I think I can use address and CV amount to define the bounds.
That's clever, looks like it could work!

I can explain my solution further if you're interested, basically what I thought was that you want to check if your signal is both less than the upper bound, and greater than the lower bound, and if that is the case, trigger S&H. So, if A is more than 0V, the signal is greater than the lower bound. Likewise, if B is more than 0V, the signal is less than the upper bound.

Now, we want to check if both of these are above 0V. For this we need to AND them. But the problem is that (digital) AND gates need a certain voltage for the input to register. That's why we add T to both the signals: Now, if the original signals were above 0V, that means that new signals are above T, and the AND gate will trigger. Ta-da! We now get a gate that tells us if L < C < U :)

The advantage to this solution is that you can use CV to define any upper and lower bound you want :)

Posted: Wed Dec 18, 2019 7:27 pm
by oblis
Ahh, got it...cool! Adding the triggers is what threw me off initially. I like the ability to potentially CV the limits. Should be able to try both of these after my next module purchases.

Posted: Thu Dec 19, 2019 7:14 am
by patched
oblis wrote:Ahh, got it...cool! Adding the triggers is what threw me off initially. I like the ability to potentially CV the limits. Should be able to try both of these after my next module purchases.
Nice, post results when you try it 8-)

Re:

Posted: Wed Feb 12, 2020 10:07 pm
by kpreid
oblis wrote:
Wed Dec 18, 2019 12:33 pm
patched wrote:How do you want it to behave when the CV is outside the bounds? Should it be clamped to the range, or should it give 0V?
Hold the previous voltage...so if in the patch above, the random produces:

2 3 1 2 4 3

and the range is set to 2-3, I would want:

2 3 3 2 2 3
If you want any voltage within the range, not just when it hits the edges of the range, then clamping to a range is just max and min, so two A-172 Minimum/Maximum Selector in series would do the trick: take the maximum of the original random CV and the lower limit, then take the minimum of that and the upper limit. This is different from your comparator and S&H patch in that as long as the voltage is within the range it will continuously track the input voltage.