I am trying to use below circuit for convert 24VDC high speed pulse to 5VDC pulse that can interface to a stepper driver IC.

I have used 6N136 opto-coupler and according to its datasheet it can handle 1Mbit/s.

PLC_Y000 terminal connected to a 24V square wave out (open collector out of a PLC) and the frequency can change. STEP_OUT for get 5V square wave out.

24V-5V isolated converter

I was unable to get proper square wave out at high frequency input. I have observed waveform using a oscilloscope and results as below. (for 60kHz and 10kHz input/green is input at PLC_Y000 yellow is output at STEP_OUT)

While increasing the input frequency the rise time also increased. Couldn't reach 1MHz as datasheet.

What are the reason for this? How can I get proper square wave out without distortion?

Wave forms

  • \$\begingroup\$ Part of the problem is that this is an active pull-down, but passive pull-up. So you will naturally see more of an RC curve in one direction and a sharper edge in the other. If you incorporate the transistor into a circuit that includes positive feedback (there are several creative and different ways to achieve that) or otherwise incorporates an active pull-up as well, it will perform more as expected. (Having the base exposed to a pin would be a requirement for this. The 6N136 goes still further than that, luckily.) \$\endgroup\$
    – jonk
    Sep 6, 2020 at 18:46
  • \$\begingroup\$ There's a nice example in one of the datasheets to make it a copy-and-paste operation. And please do also take note that in order to achieve the best you can they also include a specific circuit to drive the LED as well as to respond to it on the other side of the isolation barrier. It's not just a focus upon one side. You really need to think about everything, both sides, when trying to make the most of the device. But at least they pretty much give you what you want without having to think much. \$\endgroup\$
    – jonk
    Sep 6, 2020 at 18:55

1 Answer 1


The optoisolator has the pin 7 floating. It is common to put a bias resistor from that pin to ground, to help discharge the base charges, which turns off the transistor faster. Not all datasheets mention this. Try for example a 10k resistor there.

  • \$\begingroup\$ How can I calculate exact resistor value for base discharge resistor? \$\endgroup\$
    – user_fs10
    Sep 6, 2020 at 16:19
  • 1
    \$\begingroup\$ There is no magic formula for it, nor any specific exact value for it. Read datasheets from many manufacturers if they contain a reference value, but it could be manufacturer specific. Or try many values which work in your circuit the best, since it depends on other parameters as well (supply voltage, collector load, etc). Or try simulating it in a circuit simulator, if they have a Spice model available. Or use another type of optoisolator so you don't have to worry about it. \$\endgroup\$
    – Justme
    Sep 6, 2020 at 16:59

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.