I wonder, how can I make edge detecting circuit without using any logic IC's, using only transistors & passive components?

I have digital signal with ~15ns fronts on my digital input (5v TTL), and I want to get 20-50ns long pulses(with ~10-20ns transitions) on the front edge of the input pulse.

What I tried to do is capacitor + resistor and then push-pull BJT cascade - I am getting nice front(~15ns), but trialling edge is just terrible (200ns) - capacitor slooooowly discharges...

Probably push-pull cascase I am using (see first answer Prevent high-side BJT saturation) is not very 'digital' - i.e. it's too linear... If there is a way to make more Schmitt-like , probably that would solve this capacitor discharge problem...

Any ideas?

  • 1
    \$\begingroup\$ I'm trying to figure out your exact setup and am not completely sure yet. Could you upload a schematic of the entire setup, please? As far as I can tell without a schematic, I believe your problem may have to do with what markrages commented to your question at electronics.stackexchange.com/questions/15056/…: The push-pull-stage needs a low-impedance driver. Otherwise, the base resistors will just make the two transistors cross-conduct, leading to a definite toastyness of the circuit... The push-pull stage is only digital when driven from a "hard" source. \$\endgroup\$
    – zebonaut
    Jun 25, 2011 at 21:20
  • \$\begingroup\$ Yeah, I realize now that I basically have voltage follower, which does not 'sharpen' fronts... So Everything I get from capacitor is reflected at the output... \$\endgroup\$ Jun 28, 2011 at 6:54

2 Answers 2


I'm not totally clear on what you are asking about, but I think you want a edge to glitch converter? I'll assume that you have a positive going edge and want to have this result in a positive pulse. Two common answers are a one-shot or a flip-flop with a R-C delay from output to reset. However, you want to use discrete analog parts for some reason.

How about a capacitor-coupled emitter follower with a resistor and capacitor in parallel to ground on the emitter? Assuming new edges don't come along until the circuit has had time to reset, the rising edge goes thru the capacitor and makes a rising edge on the output (emitter). A resistor from base to ground makes the input to the transistor go away quickly and reset for the next edge. Meanwhile the length of the output pulse is governed by the R-C time constant of the output capacitor and resistor.

  • \$\begingroup\$ Yes, edge to glitch. Yes, circuit will have like 100-200ns to reset :-) I have a feeling that your circuit will also have the issue with sloooooow falling edge of the 'pulse' (i.e. 15ns rising edge and 150ns falling). There should be something nonlinear to make rising & falling edges equal... \$\endgroup\$ Jun 25, 2011 at 19:16
  • \$\begingroup\$ You can make the fall time what you want by adjusting the R-C time constant on the emitter. For example, consider the limiting case with say just a 300 Ohm resistor on the emitter. That should fall a lot faster than 150ns. \$\endgroup\$ Jun 25, 2011 at 19:20
  • 1
    \$\begingroup\$ Pass the output pulse through a Schmitt trigger circuit? daycounter.com/Circuits/Schmitt-Trigger/… \$\endgroup\$
    – Majenko
    Jun 25, 2011 at 19:37
  • \$\begingroup\$ @ Matt Jenkins: A two-transistor Schmitt Trigger might be able to do the trick. Old oscilloscopes have trigger circuits built with such stages, very old ones even use two triodes instead of two transistors. The fastest scopes I have seen with such trigger circuits have a maximum bandwidth of 10...20 MHz. \$\endgroup\$
    – zebonaut
    Jun 25, 2011 at 21:44
  • \$\begingroup\$ @zeb Mine has that sort of trigger, and is 20MHz. \$\endgroup\$
    – Majenko
    Jun 25, 2011 at 21:52

This reminds me of the Leading-Edge-Detector example that comes with Paul Falstad's Analog Circuit Simulator Applet.

  • \$\begingroup\$ Actually I don't know if that is fast enough for your application, so my answer is more of a comment, but I couldn't embed the link in a real comment. \$\endgroup\$
    – AndreKR
    Jun 25, 2011 at 22:21
  • \$\begingroup\$ because it's too long? Then use tinyURL to make it shorter. \$\endgroup\$
    – stevenvh
    Jun 26, 2011 at 7:22
  • \$\begingroup\$ Well, this could me made fast enough - I see that they used double output push-pull just to get rid of that long trail... Also, indeed I might try FET's instead of BJT... \$\endgroup\$ Jun 26, 2011 at 7:54

Your Answer

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

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