A journey of a thousand miles starts with a single step. Or in this case, a single circuit element.

The idea I’ve had for a little while now is how to meld an old technology, analog compression, with the digital realm. There are plenty of analog and digital compressors on the market, but there are few hybrids. The plan is to take the a complicated side chain that generates a control voltage and replace it with an Arduino. This will greatly simplify the side chain circuitry, reduce overall cost, and really expand the limits of compression. You can create different characteristics at different thresholds, change the attack and release slopes, or any other compression function. Having a microcontroller handle the side chain makes your options limitless.

Below is the process flow for the compressor. The signal path remains completely analog, while the Arduino handles the control voltage for the VCA.

There is one analog element in the side chain though, the rectifier. Having a rectified signal to convert is favorable for this application. Since our signal swings below 0V, and we don’t care about reproducing the signal, we can full-wave rectify it. If we didn’t rectify the signal we’d have a few more complication like:

Having to bias the input pins to 2.5V to register a negative voltage swing.

Determining negative peaks would be difficult. You’d have to look for two input values for threshold detection. Mapping a threshold value for a max value isn’t difficult, but then determining the corresponding negative peak would get a little messy.

Increased precision. Since we only care about the peak values, we only care about the absolute value of the signal. The full wave rectifier provides a nice solution that provides only positive values. These positive values allow a precision of 0.004V per division.

The rectifier provides a nice solution. There are a few options available for full-wave rectification, the most popular being a traditional bridge rectifier. These are fine for power supplies and other low precision applications. There are some options when it comes to precision rectification. Some of the benefits are increased linearity at higher frequencies (generally higher than we’d be concerned with), no diode drop, and low output impedance (since the output is an op-amp). After reviewing some of the options available on the ESP site, I chose this one.

After some waiting for UPS to deliver the Mouser package, we have the circuit on the breadboard shown above. I ran some initial tests and the results were quite nice.

In my next post I’ll post the oscilloscope captures and some thoughts.