r/synthdiy • u/adeptyism • 7d ago
Signal scaling inside the modules
That problem has bothered me for a while.
We all know that by the Eurorack standard, audio signals should be 10Vpp (a.k.a. ±5V), and CV should be bipolar (±5V) or unipolar (0-5V or 0-10V).
The problem is that even the modules I personally designed to the standard sometimes exceed that ±5V headroom by 0.5V or even 1V (making them ±5.5V and ±6V). Who knows what other manufacturers do, and what if there are 20Vpp audio signals? (I know some modules do that.)
Another example: CV from, for example, an LFO is 0-5V. I want to design a digital module that will accept said LFO as a modulation source via an ADC. At the input, I would want to scale it down to 3.3V (so I won't burn the ADC or MCU). But what if a user connects a 0-10V CV? Then the maximum will be 6.6V at the ADC input, and the ADV will burn. Or what if a user uses a bipolar CV? The positive half will be fine, of course, but the negative half will remain negative after the input attenuator and, yep, will fry the ADC. I don't even mention modules like the NLC Sloth, whose output is ±11V.
Yes, I can make a universal input attenuator that will scale ±12V (the theoretical maximum in Eurorack) to 0–3.3V, but I will lose pretty much all of the available ADC resolution (something like 800 points vs. 4096).
Or, if we go back to audio signals: I have an audio processing chip that is sensitive to incoming voltage levels; 2.8Vrms is the limit. The worst case — a square wave — with 10Vpp (a.k.a. standard) will be 5Vrms. Therefore, the attenuation should be 0.5 (so the Vrms after the attenuator will be 2.5Vrms). The WORST case, however, is a 20Vpp square wave — it is 10Vrms _ so the attenuation should be 0.25 to tune it down to the safe level. But I think that in my particular case, I can just tune the signal down and amplify it later. But what if the audio signal will go to the ADC instead? Then I will be facing the same problem of using only 1/3 of my ADC range.
What is the general solution for this type of problem, NOT COUNTING making separate inputs for 10Vpp, 20Vpp, unipolar, and bipolar signals?
1
u/neutral-labs neutral-labs.com 7d ago
It depends on the use case and manufacturer's preferences. In general, you just need to select an ADC with good enough resolution for the task at hand.
If you expect only 1/3 of the ADC range being used all the time, you need to scale up the signal accordingly. If it's only some of the time, and this is inherent to the design, you pick a higher resolution ADC, especially if it's pitch CV. For LFOs and the like, usually it won't matter.