Designing and building a 3310-based ADSR module
At last, a simple project, I thought. An ALFA RPAR clone of the famous CEM3310 has been aging on my shelf for about two years, about ripe for a vintage ADSR module. It does everything by itself, I’ll hook up some control pots, buffer the output and voila. But, as usual, it didn’t play out that way.
Gate and Trigger
The gate/trigger part is glossed over in the old CEM3310 datasheet example (http://www.digisound80.co.uk/digisound/other_documents/brochure_files/CEM3310.pdf). In my book, any self-respecting ADSR must have a trigger (retrigger) input, gate-only may work for sequencing but not for human keyboard playing. 3310 does support retriggering, but it has to be done right. Gate has to pulse the trigger pin, too, but a retrigger pulse should not affect the gate pin. So there may be more diodes and caps here than you’d expect. To avoid a bunch of BJTs, I decided to use LM319 comparators for gate and trigger inputs. This also gives precise control of the gate/trigger threshold voltage, about +1V in this case.
Since the 3310 attack, decay and release times and sustain level pins are voltage controlled, I couldn’t pass up the opportunity to add external CV to the circuit. First I considered full-fledged voltage control, where A, D, S and R would get a separate CV each. But then I tried to imagine a situation where I would actually want to drive the ADSR with 4 different CVs and drew a blank. Then I thought about patching one CV to different pins, like the Doepfer A-140-2 (http://www.doepfer.de/a1402.htm) where it’s done with jumpers (pain)… Finally I settled on a compromise solution: one CV is routed, in variable amounts, to A, D and R. Also, the CV can be inverted, which is very useful if V/Oct is used since higher notes get shorter ADR times. This sounds very natural, because most percussive and plucked/hammered string instruments respond that way.
I passed on controlling the sustain level, although it can be done. But the CV has to be limited not to exceed peak attack voltage (+5V), and that would add at least two more opamps to my already bulging circuit. It didn’t seem to be that interesting musically, either, so I dropped it (they dropped it in A-140-2, too 😉
The schematic looks a bit intimidating at first glance, but note that the A, D and R parts are identical, and gate and trigger parts are almost the same. The ADR control voltages had to be seriously attenuated and inverted, since the pins have 60mV/decade sensitivity and work with negative voltages. The ADR times of this circuit range from a few ms to almost 2 minutes.
Get the schematic in PDF form here:
1 thought on “3310 ADSR”
I realized I was overstressing the LM319 differential inputs, especially with my +10V gates and triggers (ARP Avatar compatibility). While performing board surgery I also added power filtering caps and power pin compensation caps on 3310.
R15 changed from 1k to 330 ohms.
Added R26, R27.
Added C7, C8, C9, C10.