Improving a 555 ADSR circuit

Hello everyone,

I’m building the rene schmitz 555-based ADSR from this page.

Only difference is that I didn’t have 2.2M pots so I used 1M instead.

It seems to work pretty well. However, when I turn attack, release and sustain all the way down, I would expect to see a short spike only. But rather, I kindof get the entire gate signal as output. I’m guessing that for some reason, when turning all the pots low, the decay phase is not properly started so the output will stay at the max voltage and decay/release will only start when the input gate ends.

Does anyone have an idea of how to improve this? It’s definitely a very nice ADSR evenlope generator like it is, but I’m wondering if this can be fixed.

1 Like

Check out YUSYNTH!
He added a FET to isolate the sustain timing from … he made several major changes to that design.

1 Like

I’ve breadboarded the Kassutronics ADSR. which is based on the third EG on that page, “Fastest Envelope In the West”, and I don’t see that behavior. With everything turned down I get a short blip as expected. The “Fastest Envelope” is just a minor modification of the one you have. It adds an op amp buffer between the sustain and decay pots, which might be what makes the difference. Also he specifies a 7555 timer, I don’t know if that matters. The main difference with the Kassutronics version is the use of “precision rectifiers” to avoid the problem where release and decay do not approach 0 V. There are some other differences in the output stage but the core is the same as the “Fastest Envelope” except the precision rectifiers. I plan on building the Kassutronics with a retriggering and looping mod.

2 Likes

Thanks for your replies!

I’m going to try the opamp inbetween sustain & decay pots. Hope that will do the trick. I will let you guys know.

1 Like

And do use the CMOS version of the 555. Many ADSRs require just that type.

I have tried all the suggestions but those did not solve the problem.

After some testing (with A, D and S turned down), I saw that the voltage at pin 2 of the 555 showed some weird behaviour. My expectation was that it remains high at all times, with short spike down to 0V when the gate goes high. However, after this spike down it remained around 3.4V until the gate goes low again. When I disconnected pin 4 of the 555 this behaviour ceased. It seems that the reset pin of the 555 forces the voltage to go down. Having a lower voltage at pin 2 will certainly mess with the workings of the circuit and basically prevent the decay-phase from starting because the 555 is not reset.

So I put a diode at pin 4 to ensure that all the input circuitry is operating nicely without interference from the 555. I really don’t know why this is happening but now I finally have some snappy Attack-decay envelopes.

This is what the schematic looks like now:

3 Likes

Glad you got it working. But it’s strange, isn’t it? I can’t think why a good 555 would behave like that.

1 Like

I also have no clue why this happens. Perhaps I should redo my breadboard entirely to rule out any errors or accidental connections :thinking:

It turned out that just using a diode still had drawbacks. In quite a few cases, the envelope output would remain at ~0.8V. I managed to fix that by using a precision rectifier instead. I thought about using precision rectifiers for all the charge/discharge paths to the main capacitor but that would force me to introduce another TL074 and complicate the circuit design a bit too much.

1 Like

Sounds like you’re approaching the Kassutronics design! That uses precision rectifiers for the decay and release but not the attack. Two op amps there, one for the normal output, and one for an inverted output.

1 Like

My precision rectifier is where the red diode symbol is in my last design. I’m pretty sure the Kassutronics ADSR doesn’t have a rectifier there. Still a bit puzzled by why this is needed. I don’t have many varieties of 555’s laying around to test with but I experimentally found this fix to be working.

1 Like

I used the Intersil ICM7555 CMOS version.

1 Like