top of page

Diamond Church Street Chorus

PT2399-Based Tri-Chorus

DCSC.jpg

Overview

Tri-Chorus is one of those classic studio rack effects. It's a stereo effect that utilizes three delay lines (duh) that are modulated to produce three distinct chorus voices. The voices are all modulated 120 degrees out of phase with each other, which creates a big, lush stereo field on the resultant signal. The 120 degrees out-of-phase thing is what makes the tri-chorus such a difficult effect in the DIY world. If we use opamps to create phase differences, any phase difference besides 180 degrees is going to make for a frequency dependent filter. The Diamond Church Street Chorus (named after a great song by one of my all time favorite bands) uses modern technology and low cost delay chips to create a tri-chorus that, while certainly not up to a high end rack unit, still gives a good attempt at the sound in a project that is doable for most DIY'ers. Perhaps the largest limitation is the fact that it is subject to the minimum PT2399 delay time of about 30 ms, which gives it a little bit of a sense of “space” with three of them in parallel. This design also allows for mono in/mono out, mono in, stereo out, and stereo in/stereo out configurations.

How It Works

The Diamond Church Street Chorus (DCSC) is a pretty simple concept. Each chorus is a modified Little Angel chorus while the LFO is being produced by a microcontroller. With the microcontroller, the LFO's can be kept at a constant phase relationship regardless of speed. All of this is capped off with input and output buffers for the splitting and mixing.

 

The input consists of two identical input buffers. The right input buffer is only used when the circuit is wired for stereo input mode, otherwise it is unused. This is a simple unity-gain, inverting buffer. The solder points shown in the figure are connection points for a jumper on the board that determines the 3rd voice's input source.

DCSC Input Buffer

As mentioned previously, this is based on the Little Angel chorus by Rick Holt (a.k.a. frequencycentral). The topology is all the same, including the soft start for the PT2399 to prevent chip lock up. As far as a PT2399 stage goes, it's rather simple as there is less shaping and no feedback or time control compared to the standard delay stage. This is because we want minimum delay time and no feedback for the chorus effect.

DCSC Delay Stage

Now that we have delay, we need to create our modulation. As mentioned earlier, the LFO's are all spaced 120 degrees in phase from each other. With analog LFO's, this is extremely problematic, as phase shift of an analog filter is highly frequency dependent, so you would have to change the phase shifting filters any time you change the LFO speed. By using a microcontroller with 3 PWM outputs, we can create 3 LFO's that are perfectly synchronized at all times. For this task I used the ATTiny841, which has 4 PWM outputs. This chip was also employed in the EchoWreck for the delay time synchronization. Unlike the EchoWreck, this LFO implementation uses analog inputs to determine time and depth. These are simple voltage dividers that are sampled by the onboard ADC's othe ATTiny. All of the conversion for speed, depth, and pot taper as well as LFO waveform are defined in the code and can be changed to suit the user's desired min/max speed, min/max depth, pot taper, and LFO shape. In fact, switches could be used to change any of those parameters, but that is left as an activity for the reader.

 

The LFO output is a PWM signal at a pretty high rate, but there are still audible effects of the square output. Several filtering topologies were experimented with to reduce the high frequency noise in this particular circuit, including use of CMOS switches, Sallen-Key and Multi-feedback active topologies, and passive filtering. In the end, cascaded RC low pass filters were found to reduce the noise to an acceptably low level while minimizing complexity, part count, and maximizing end effect performance.

DCSC LFO

The remainder of the signal path is the summing of dry and wet signals. There are two output buffers, one for each side. The “center” chorus signal is sent to both sides, while the other two chorus signals are sent to either left or right. There is a switch for sending the “right” side chorus signal to the left side for mono out operation. When in mono out operation, there is also a trim pot put in place in the feedback loop of the left summing amplifier. This is to control the overall signal level rise inherent in summing more signals. I have found in most cases that 100k is an acceptable resistance value to even things out.

DCSC Output Buffer

The power section is relatively straightforward. The only thing that I found I needed to do to make things more predictable at power up was to have individual voltage regulators for each PT2399. I don't know if this is a function of the chips I had on hand or if it is always necessary, but this is how I implemented it so that all the chips start up correctly. Even with these safeguards in place, there is the occasional power up where there is no chorus output. This just requires unplugging power and plugging back in and it usually works. A bit of a pain if you are gigging, for sure, but this is only a power up, not a bypass toggle issue, so once it's working right, you can toggle the effect on/off without issue. Again, it is likely due to the mix of PT2399 and CD2399 chips that I have on hand, I just didn't have enough on hand to experiment a lot.

DCSC Power Section

The final part of the circuit is the built in Millenium Bypass 2 circuit from R.G. Keen. Because this circuit allows for stereo in/out, a Millenium Bypass is necessary to true bypass two inputs and two outputs and still have an LED bypass indicator. If you are going to use mono in/stereo out, you can either use a 4PDT switch with normal bypass LED wiring, or a 3PDT switch with the Millenium Bypass, which is what I did.

DCSC Millenium Bypass

So there it is, the first DIY PT2399 Tri-Chorus project that I am aware of. If you would like to try your hand at it, you can find everything you need here

bottom of page