I have a 555 monostable set up which is triggered when an output from another circuit goes low. This then remains on for 10 s. This all works almost perfectly.

My issue is that when the output from the other circuit goes high again and then back down within the initial 10 s timing, this 10 s timer does not restart: it is locked in its first cycle.

Example: When I send the trigger pin low, the 10 s timer begins and the diode illuminates. Then if I wait 5 s and then send it high and low again, it continues the initial timing cycle and the diode goes off after 5 s.

Each time the input circuit goes low, I would like to restart the 10 s timer.

Dies anyone know how this can be achieved? I have tried playing around with the reset pin, but with no success.

P.S. I know the time constant for this circuit is actually around 100 ms, it's just the limitations of the software I am using (it can only simulate 10 ms/s).


simulate this circuit – Schematic created using CircuitLab

  • \$\begingroup\$ You need a "retriggerable" timer. The 555 is not retriggerable, although you can fake it by adding external components. \$\endgroup\$
    – Dave Tweed
    May 31, 2019 at 11:27

3 Answers 3


You can do that, with a bit of effort.

However, you're really crossing into regions where it's much easier to simply learn how to use an arbitrary low-cost microcontroller (e.g. an Arduino-compatible) and program exactly what you want. Much more flexible, much less potential for analog headache!

To achieve that, you could catch the falling edge of the other circuit and use it to discharge C1.

Not having tried that, but:

I think it would be possible to achieve using a capacitor to couple in the falling edge to the base of an NPN transistor, which you use as inverter, to another drive another NPN's base whose collector-emitter is in parallel with C1.


This can be achieved with a retriggerable monostable, such as CD4538. This will need a buffer, such as 2N7000, to drive the relay, but otherwise should be fine running off 12V.

You need a catch diode across the relay coil. You can trigger the CD4538 from either a positive- or a negative-going edge - just tie the other input accordingly.


As the other answers indicate, there is not a direct solution. There are three basic types of monostable circuit, and the 555 is not any of them.

A true monostable has an output period that is completely independent of the input after the triggering edge. The input can sit in the active state, return to its non-active state, bounce around - whatever. Nothing affects the output period. This circuit almost always has positive feedback creating a latched condition during the timing interval.

There a re several variations of a retriggerable monostable circuit. One of the defining characteristics is whether the timer part starts after the leading edge or the trailing edge of the input trigger pulse.

A classic retriggerable monostable will time out even if the input stays in the triggered state beyond the time period. However, if the input returns to the inactive state, then to the active state all within the time period, the time period will restart while the output state doesn't change.

This can be done with any of a number of gate chips, or a dedicated monostable chip, but with any of those you will need an external relay driver. If you want to stay with the 555 for its beefy output stage, then an external transistor is needed to discharge the timing capacitor without forcing the output to change state.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.