DCOI - a new family of logic gates using opto-isolators. And the green and red LEDs aren't optional, they're an essential part of the circuit - Yay! So far, the family includes an inverter, a set/reset latch and an OR/AND/NOR/NAND gate. All I need now are edge-triggered flip flops to make counters and half/full adders to make an arithmetic logic unit and the DCOI personal computer is a real possibility.

By Julian

Youtuber, shed dweller, solar charge controller aficionado

17 thoughts on “Invention: dual complementary opto-isolator dcoi logic”
  1. Avataaar/Circle Created with python_avatars Shane Johns says:

    Hard to tell for sure with the video, but it looked like the final latching circuit does go a bit brighter on the LEDs while the button is pressed. What's happening there, and does the voltage to the LEDs rise to a dangerous level such that continued depressing of the button will burn out the LEDs? And regarding the OR vs. AND function, do you mean normal 'OR', or exclusive 'XOR'? ∨ vs. ⊻

  2. Avataaar/Circle Created with python_avatars Ammy says:

    Bro. You are on another level

  3. Avataaar/Circle Created with python_avatars DahlaVibez says:

    Hahaha I loved the ending ! I have had collected many of these lately and started playing with them because of vactrol etc i applied timer to 2 opto's and found a similar situation of logic ! Your totally right sir

  4. Avataaar/Circle Created with python_avatars Rex Schneider says:

    There isn't a problem with turning on both phototransistors with a 5V supply as long as you limit the current through the input diodes. You are using PC817C which have a forward current gain of between 2 and 4. The absolute maximum collector current of the phototransistor is 50mA, but the absolute maximum collector dissipation is 150mW, so you should design for a maximum collector current of 30mA. Keep the current through either or both inputs below 7.5mA and you can't damage anything. You'll get away with 470R, but it's not guaranteed by design.

    It's not feasible to rely on four diode drops to limit the input current with a low impedance power supply, or one that might vary in voltage over time. There's just too much variability in samples of LEDs and photodiodes to give any repeatability. Put simply, you need some limiting resistance is series with each photodiode. Annoyingly, the datasheet doesn't give a figure for the minimum voltage drop across a conducting photodiode, so you have assume the worst and use a minimum of 5V/7.5mA = 680R resistors. Replacing the LEDs with 10K resistors would give about 0.13mA through the photodiodes and no more than 0.52mA through the two phototransistors. That's not going to short out any power supplies.

    The reason why you don't have opto-isolators as logic elements is their bandwidth is limited to about 80kHz. Slow logic is okay for some applications, but simple RTL works as just well and is much faster and cheaper.

  5. Avataaar/Circle Created with python_avatars Morn Morn says:

    I think this is very old video. But still its just ttl logic. XD

  6. Avataaar/Circle Created with python_avatars Joseph Ocampo says:

    😮👏👏👏

  7. Avataaar/Circle Created with python_avatars Thornton Tarr says:

    I stumbled onto this video, a you tube suggestion while I have fussing with opto-isolators for a pump speed control that required level shifting to 10 volts and drawing only 5 ma from the pump controller. I was replacing a pot! My main problem was that the PWM input into the single opto-isolator produced a nonlinear output with the RC low pass filter. I immediately saw that the two active components in the output side of the opto-isolator in your DCOI circuit would solve all my problems. It works completely linearly, with inversion, OK and complete isolation from the Microcontroller supply and the pump supply. Comments: You should have told viewers that GRN, WHT and BLU leds need >3.2 volts while RED, YEL, ORN need >1.8 volts. If folks tried just two RED leds, with the two input stage IR diodes, the Vcc+5 would have been marginally OFF. But well done, mate.

  8. Avataaar/Circle Created with python_avatars Dennis D says:

    Talking about pandora's box!!! Now you've done it Julian! You can effectively kiss your spare time goodbye as you descend into the gates of logic hell. Kiss away your sanity too, while you're at it! No seriously man you keep on amazing us. I love your stuff!

  9. Avataaar/Circle Created with python_avatars Felipe Siqueira says:

    damn level conversions….

  10. Avataaar/Circle Created with python_avatars Fried Mule says:

    It looks like you have build a logic circuit that asks "if both are NOT zero"

  11. Avataaar/Circle Created with python_avatars Neil Gower says:

    Brilliant 😀

  12. Avataaar/Circle Created with python_avatars niceguy60 says:

    But is the cat in the box dead or alive.

  13. Avataaar/Circle Created with python_avatars Arthur’s Channel says:

    If you switched the leds you have a logic probe. That was one of the first projects I built back in the early 90s, it was in an electronics hobby magazine, I was going to school for electronics and was in my first semester of school. Love your channel.

  14. Avataaar/Circle Created with python_avatars gudenau says:

    I wonder if using 4v would be better.

  15. Avataaar/Circle Created with python_avatars Der Knistermann says:

    You are right with the fact that it is some kind of stupid. If you placed those optocouplers inside a chip with thousands others, they would eventually start to kill each other…

  16. Avataaar/Circle Created with python_avatars Atomkey Sinclair says:

    Neural network. Create input output layers to test theory. Weighted values next in hidden layer – voltage comparators perhaps.

  17. Avataaar/Circle Created with python_avatars Wayne Evans says:

    love that accent , i feel like getting in trouble and have you scold me with that voice. Right!! carry on…

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.