Please see this :

optoisolated digital bus signal

The Task

I'm trying to create a single module which can safely share a single digital signal. The idea is that each (identical) module can monitor the status of the signal, and can raise it independently.

For example:

Module one notes that the signal is low (at RX1) and based on some logic decides to indicate to all the other modules that the signal should be high.

So module one raises the signal by applying a 9v pulse to TX1. Module 2 notices the rising edge of the signal (at RX2) and carries out some operation.

At some point in the future, module N may decide to pulse TXRX etc.

The shared digital signal must not share a ground with any of the modules (modules are audio, wish to avoid ground loops), hence the optoisolators.


Is there an accepted pattern for this type of operation? Perhaps some jellybean IC that I'm unaware of? Possibly some sort of optical system?

What would happen here if several modules tried to raise TXRX at the same time, and how can I safeguard against that (resistors or diodes in some way?)


This design suffers from a few problems in that the LED in a PC817 ideal requires 20ma but may operate at 10ma. The BJT in the 817 can only supply ~50ma. This would limit the number of modules I can have in the chain.

I could use an external high power transistor after the 817 transmit but PCB space is limited.

Ideally my solution would require the TXRX bus line to carry minimal current. I know the old RS485 can handle 32 devices, but that is not isolated.

What sort of connector should I use for these three wires? I thought about some sort of standard barrel jack, but I don't want any accidents to happen with people just pushing a 9v DC jack into it.


1 Answer 1


use a transistor ot amplifiy the utput of your optocoupler, you won't get the full 9V (8.3 instead) but you will get much more current available.


simulate this circuit – Schematic created using CircuitLab

  • \$\begingroup\$ Yes.. I did consider that but I was trying to keep the number of components down. However it it comes to it, I think this is the solution. What did you think of the general design? Is it viable? \$\endgroup\$
    – Richard
    Sep 2, 2020 at 13:04
  • \$\begingroup\$ yeah seems viable \$\endgroup\$
    – Jasen
    Sep 2, 2020 at 13:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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