I have a microcontroller circuit that uses voltage dividers to monitor presence of 5V DC power from several sources, but the circuit is currently powered from a separate 5V DC source.

I've seen Schottky diodes used to control power from multiple sources, but typically when they are at different voltage levels (e.g., a switching supply and a battery).


  1. How is reverse current from the Schottky diodes not a problem to the other supplies in the traditional use case?
  2. Can Schottky diodes be used to direct DC power in cases where the supply voltages are all the same?
  3. If yes to #2, is there a simple setup to power the circuit in this way and monitor which supplies are active (connecting to typical MCU GPIO digital input pins)?
  4. If no to #2, what is a simple and cost-effective way to power from, and monitor, several similar sources?

EDIT: I don't need to know which (or multiple) supplies are powering the circuit, I just need: (1) stable power to the circuit, and; (2) to know which of the sources are active / powered on.


2 Answers 2


1) Generally no. The currents may be high in comparison to normal diodes but they are still fairly low. Most power supplies act nicely and go to sleep if the output voltage is pulled a little above their set output voltage. Just about any resistance to ground from the output (e.g. the voltage sense feedback network) will sink enough current to prevent the reverse bias current from pulling the output voltage high enough to cause damage. Some switchers may possibly have problems if their output current drops to zero, normally the worst case is their output goes out of regulation and is higher than specified. Since you're not using the output this isn't an issue, as soon as it gets high enough to start to use it the current will increase and it'll fall back into regulation.

edit - As noted by neonzeon batteries are a different matter.

2) Yes. While in theory all the same the supplies outputs will end up being very slightly different so one supply will generally provide most if not all of the power.

3/4) You can easily tell which supplies are on, simply connect each one to a GPIO with sufficient voltage scaling and protection as required by the CPU. Generally this means either two resistors as a potential divider or a single series resistor to reduce the voltage and protect against excess current and then a clamping diode to the CPU VCC rail to prevent any potential over voltage issues as power supplies come up.

Telling which one you are taking power from is a little trickier. If the voltages are different then you can assume you are using the highest voltage one of the ones that are on. If voltages on each rail can vary then you can either use an ADC to monitor the voltage on each rail or use a comparator to tell you which is higher.

If the voltages are all very similar then a straight voltage comparison may not be reliable, you could be taking power from multiple sources. You would need to monitor the current from each power source. This generally involves putting a low value resistor in series with the power supply and then using a differential amplifier to measure the voltage drop across it. You could either feed this into an ADC and get the current for each source or into a comparator to tell you which source has the most current or which ones are over a certain threshold.

  • \$\begingroup\$ In order to accomplish #3, there's no problem putting the Schottky diode 'power' line in parallel with the voltage divider 'sense' line? \$\endgroup\$
    – pseudon
    Sep 22, 2016 at 16:11
  • \$\begingroup\$ @pseudon - No. The sense line will can easily have a resistance in the order of 50-100k and so have no significant impact on the power side of things. \$\endgroup\$
    – Andrew
    Sep 22, 2016 at 16:13
  1. Reverse current for the OR-ing diodes is indeed a problem. Schottky diodes easily leak 100uA in the reverse bias condition, leading to "charging" of batteries, etc. In general, you have to find a reverse current/battery solution that works for your application. Note - this may be hard, for instance, try asking a coin cell manufacturer if it's OK to "charge" their coin cell with 50uA. Additionally, reversed-diode-charging of a 3V lithium battery with 100uA can raise the cell voltage as high as 4.3V, which, if not anticipated, may exceed voltage ratings on your devices and circuits.

  2. "It depends". You can stack two or even 3 diodes in one of the supply lines. The voltage drop will then favor the other supply. However, when this supply needs to work, that same voltage drop will count against you in either battery life, heat generation, simply voltage drop or all of the above.

  3. "It depends". You could use simple resistive dividers on every supply to divide the voltage down to CPU-friendly voltages, and input them into your CPU. BUT, you incur the penalties of "wasted" current through the dividers. This could easily be 10x higher than the sleep current of a modern CPU.

  4. Once again, it depends heavily on your requirements, such as cost and criticality of operation. But, to give you some material for consideration, you are now in the field of Power Path Controllers (See for instance the concept of a "prioritizer" and "ideal diode")

enter image description here

This is probably also a good place to mention the Underwriter Laboratories Two-Diode Rule for battery reverse charge protection.

  • \$\begingroup\$ Interesting nuance on #2. These power supplies yield about 5.2V, so there would be no problem with a slight voltage drop, so I could do this to essentially favor one supply over another. \$\endgroup\$
    – pseudon
    Sep 22, 2016 at 16:15
  • \$\begingroup\$ re: #3 Understood. The whole purpose of this circuit is to monitor power, and I don't have to worry about running on a battery only, so I don't mind wasting a little power to achieve the objective. \$\endgroup\$
    – pseudon
    Sep 22, 2016 at 16:25
  • \$\begingroup\$ @pseudon - A modern CPU will easily run off 3V, leaving you with more than 2V of freedom to do your diode magic tricks and voltage regulation. \$\endgroup\$
    – neonzeon
    Sep 22, 2016 at 17:01

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.