I need to drive a dual coil latching relay with from a single logic signal.

My problem is how to generate the two logic pulsed on the edges of the input signal:

  • on a rising edge of the input, I need a positive logic pulse (0-1-0) of defined length on output1
  • on a falling edge of the input, I need a positive logic pulse (0-1-0) of defined length on output2

The length of the output pulses should be independent of the duration of the input signal. I.e. the input signal may be longer than the output pulse.

I thought I could use a monostable multivibrator, but from the ones I have seen, they generate a high level for at least the duration of the input pulse. - Did I misunderstand this?

What is an elegant solution to this problem?

PS: I am planning to drive the onsemi FAN3240 from the outputs. If somebody has a better solution, that would also be of interest of course.

PPS: The coil resistances of the dual coil latching relay are unknown.


1 Answer 1


Here's the schematic.

enter image description here

A standard 3PDT electromagnetic relay 'K1', an electrolytic capacitor 'C1' and a freewheeling diode 'D1' would be required to drive the dual-coil latch relay 'K0'.

When the coil of relay 'K1' is energised by the signal voltage +V, its 'NC'contacts will open before its 'NO' contact closes. Likewise, when the relay coil is de-energised, its 'NO' contact will open before its 'NC' contacts close.

Thus, when relay 'K1' is energised, the capacitor charge-pulse through the 'set' coil will 'set' the latch relay. When relay 'K1' is de-energised, the capacitor discharge-pulse through the reset coil will 'reset' the latch relay.

The time constant RC (latch relay coil resistance & electrolytic capacitor capacitance) determines the 'set' and 'reset' pulse widths.

  • \$\begingroup\$ Thanks for the answer. This is clever, though in my case the solution needs to work with bistable relays with unknown coil resistance. I probably should have mentioned this... Sorry. \$\endgroup\$
    – ARF
    Mar 26, 2023 at 8:12
  • \$\begingroup\$ That's okay, thank you! \$\endgroup\$
    – vu2nan
    Mar 26, 2023 at 12:48

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.