PC-Monitoring Board / Shift-Registers and Optocouplers Question


Hi all,

as a beginner i am trying to make a pcb-board that extends a raspberry and can connect to different PCs for resetting, power controling and monitoring the power led. I also want to add a temperature sensor. To save pins on the raspberry and to make the project modular i used shift registers.

I would be glad if someone could have a look at the schematics and check for errors. I am not sure if resistors are missing or have the wrong value!

I will release the project on github if it works :slight_smile:

monitoring_0713b.fzz (54.3 KB)

monitoring_0713.fzz (53.3 KB)


There are a number of problems in your circuit, but it is difficult to say how to fix them because it is unclear what it is trying to do. For instance while optocoupler U4 is incorrect (it shouldn’t have a connection to the base at all, and the collector should be going somewhere) it seem sot be in the wrong direction. The pins it connects to on J3 say gnd and vcc indicating an output not an input, but it is going to the output of the optocoupler. Assuming the idea is that this is an output from the PI that will reset the PC, then you probably need a third connection to the PC as Gnd, VCC (+5V probably) and signal tht does the reset which would go to the collector of the opto coupler with a pull up resistor to 5V. The other side is also wrong as the two leds should be in parallel (and then you may have output drive current problems from the hc585 which can only source 25ma when 2 leds would usually want about 40 ma . You might get away with it with the two leds in series but the 3.3v drive is likely a problem, the orange led is likely about 2v and the opto is up to 1.7v max leaving not much room at 3.3V. C5 is not only not needed but probably will make the circuit not work. Also the latch pin is missing a connection (presumably to the PI). You would be better to use one of the PIs in core parts to get a proper I/O connector (I assume you aren’t running Fritzing .09.3b as it complains about outdated parts and wants to upgrade them, so perhaps you don’t have the PIs. In any case you PI pin numbers look wrong. Optocoupler U5 appears more correct, the diode is being driven by power from the PC but the output circuit isn’t correct. Typically the emitter pin would be ground, the 10K resistor would connect to the collector of the opto (in parallel with the LED).
Lighting the LED and providing a low input signal to the PI when the PC is on. It is also unclear why the shift registers, at present each appears to be only using one pin, unless there is future expansion planned they are wasted. As well odd things will happen with the MOSI_EXT output on U2 since it will have to shift through the hc595 8 times before it changes which is unlikely to be correct. It would make more sense on pin2 of the U1 hc595 which has 7 unused outputs. MOSI_EXT doesn’t go anywhere at present (and I expect it should).



Hello vanepp,

thank you very much for your suggestions. Appreciat this very much :slight_smile:

This circuit connects to multiple PC/servers and can read the powe LED status and control the reset and power button functions. Therefor it uses the mainboard front panel connectors.

To keep things tidy at this this stage of development i only drawed one connection from the multiplexers.

The HC595 is for the reset- and power-button emulation. I replaced the optocoupler with a triac optocoupler. So the polarity of the connection to the PC isn’t important anymore. There is no need for a third connection as the power/reset function is achieved by a simple shortconnection of the two connectors.

I changed the voltage to 5V now and added ULN2803 for the HC595 for the rare case that all PCs got a reset command at once all the LEDs would light for 1-2 seconds.

I worked throug the rest of you comments and attached a new schematic. What are your thoughts now?

all the best

monitoring_0713b.fzz (54.3 KB)


I’m still a little unclear on what in the PC you are driving. Is the intent (which is what I initially assumed) to put the optocoupler in place of or in parallel with the reset push button? If so you don’t want a triac (it wants to switch AC not dc and if triggered may not turn off). If thats what the reset vcc pin is then your original circuit was correct. the optos emitter wants to be grounded, and the collector wants to go to reset VCC. Probably (but note the weasel word :slight_smile: ) there is an internal pull up resistor to 5V, but for safety and noise immunity I would put a pull up resistor from the collector of the optocoupler to +5V from the PC so you are sure it is pulled up. The hc595 drives the uln2803 which drives the led and optocoupler led (as it is a high current driver unlike the hc595). All the ICs connected to the RPI are powered from 3.3V because the PI will object to 5V on its inputs (to the point of being damaged by it). The optos handle the translation from 3.3v to 5 for the PC and the ground isolation. To insure the 595 comes up reset you can either use the resistor capacitor circuit in the drawing below or drive the MR pin on the 595 from a RPI digital output pin. If mr is low then the 595 outputs will all be low. At power on the capacitor will hold mr low until the 100k resistor charges it up to 3.3V thus resetting the chip. If you drive it from a pin on the RPI, set the pin low and the 595 outputs will all go low, set it back high for normal operation. The input optocoupler has the two leds driven in parallel (each with its own current limiting resistor) from the led output from the PC. You may need to check how much current that pin will provide as the two leds will take about 40ma, if it indeed does have an internal resistor (which will limit the output current) you may need to run it through the uln2803 (led from the pc to an input pin, the two leds on an output pin) to get enough drive current for what you need . The output circuit will go low when the led is on and high when it is off. I suspect a pull down resistor will have transistor bias problems and thus not work. This is the more usual opto ciruit. Below is a copy of your circuit with the suggested changes (note I didn’t delete lines in pcb view so there are extra rats nest lines in this) and it is updated to .9.3.b and your version may not be happy with it (in which case I can provide a png image of schematic).

monitoring_0713c.fzz (57.1 KB)