A Low-Cost Method of Powering a Microcontroller
This article proposes a simple microcontroller power-supply circuit that is worth considering when you’re developing a (very) cost-sensitive system.
The Perils of Overdesign
I admit that this article is, in part, a reaction to my bad habit of overdesigning everything. Engineering is not about finding the highest performance, most sophisticated, most bulletproof solution to every problem. Engineers are expected to balance technical specifications with budgetary and schedule constraints, such that the final system is optimized with respect to all relevant design factors.
Furthermore, overdesign is sometimes a symptom of laziness. I can more easily find a ready-made IC than design a customized circuit, and this approach becomes even easier when I can tout the IC’s “superior” performance specs and reassure myself that I am making the system more robust. But what if the IC costs twice as much as a customized circuit that is adequate, i.e., that meets system requirements? Is this good engineering?
The Diode Voltage Regulator
The use case that I’m imagining here is a 3.3 V microcontroller on a PCB that already has a 5 V rail. Maybe the product’s primary supply (e.g., from a wall transformer) is 5 V, or maybe a switcher generates 5 V for other components on the board. In any event, you have 5 V, and you need 3.3 V for a small, low-power MCU that consistently performs basic monitoring, control, and communication tasks.
Let’s imagine that we’re working in the consumer electronics space—the product doesn’t need to endure extreme temperature variations, no one’s life is depending on it, and minimizing cost is a central design goal.
An overdesigner like me would instinctively reach for a linear-regulator IC, probably with five times more current capacity than I need and a collection of phenomenal specs that are irrelevant to my application—2% VOUT accuracy over the entire temperature range, input voltages up to 20 V, 0.001 %/V line regulation, etc.
You might think that I’m heading toward a Zener-diode-based regulator, but what I have in mind is even more basic than that: it’s just a series connection of three ordinary diodes.
Make sure you read the “Dealing with Low-Current MCU States” section below! You may need to include a resistor to ensure that this circuit is safe for your microcontroller.
All we’re doing here is using the diode voltage drops to bring the 5 V rail into the microcontroller’s acceptable supply-voltage range. Will this actually work? Well, first let’s look at the basic voltage and current considerations.
Supply Voltage and Diode Drop
I’m most familiar with processors made by Silicon Labs, so I’ll use their specs as representative examples. Older 3.3 V devices in their lineup have a VDD range of 2.7 V to 3.6 V, and newer ones tolerate 2.2 V to 3.6 V. We observe, then, that
- Three diodes dropping 600 mV a piece would put us at 3.2 V;
- We’ll stay within the 2.7–3.6 V range even if all three go as low as 470 mV or as high as 750 mV; and
- With the 2.2–3.6 V range of the newer MCUs, the diode forward voltage can be anywhere from 470 mV to 930 mV.
MCU Current Consumption
The three-diode voltage “regulator” would be easy to implement if we could rely on the constant-voltage-drop model. But in an application like this one, we need a more precise analytical approach.
The exact voltage dropped by a diode is a smoothly varying function of current. Thus, the supply voltage remaining after the three diode drops will change significantly depending on how much current the MCU is consuming at any given moment.
What we have to do is carefully estimate the MCU’s current consumption, and then the plot of forward current vs. forward voltage in a diode’s datasheet helps us to determine if the diode drops will be within the acceptable range.
Here’s an example:
Plot of the BAS16GW diode's forward current as a function of forward voltage. Image used courtesy of Nexperia
Let’s say we’re trying to stay in the 2.7 V–3.6 V supply-voltage range. If we’re operating at room temperature and the microcontroller needs 1 mA, we’ll have diode drops in the 600 mV region. This puts us near the middle of the VDD range.
The lower and upper limits for diode voltage, as mentioned above, are 470 mV and 750 mV, and these correspond to a current-consumption range of about 80 μA to 10 mA (the 80 μA is an approximation because the plot doesn’t extend to such low currents).
For an application like the one we’re considering in this article, 10 mA would be fairly high, unless the MCU has to provide serious I/O current for driving LEDs or some such. The EFM8 Busy Bee, for example, draws only about 4.5 mA when operating at 24.5 MHz. The current consumption drops to 0.9 mA at 1.53 MHz.
When you look at these numbers, the three-diode regulator seems like a feasible option and could probably provide adequate performance in quite a few applications. However, before we move on to the cost analysis, we need to discuss an important limitation.
Dealing with Low-Current MCU States
As the MCU’s current consumption decreases, diode drop also decreases, and this leads to a higher voltage delivered to the device’s VDD pin. If the VDD voltage is too high, the MCU could be damaged. This would occur when the device enters some sort of low-power sleep or standby mode.
However, another possibility is that a normal reset would result in temporarily low-current consumption. This would be a transient event and consequently, the bypass capacitor might protect the MCU, but I’ve never used the three-diode regulator in a real circuit, so I’m not sure.
The solution to these problems is to include additional circuitry that prevents the current from ever becoming dangerously low. This might be accomplished automatically if you have other components drawing current through the diodes. Otherwise, you can include a resistor that is sized according to the minimum acceptable diode current:
Does This Really Reduce Cost?
The most inexpensive linear-regulator IC that I found on Digi-Key costs 4.3 cents (all of the prices mentioned in this section refer to large-quantity orders, meaning thousands of units).
If the MCU’s bypass cap doesn’t adequately stabilize the regulator, you will also need an output capacitor. (I always have separate capacitors for the regulator and the MCU, but if you think that they can share a cap, let us know in the comments.) A 1 μF ceramic cap will add 0.3–0.4 cents to the BOM cost.
I saw a three-diode array (i.e., three independent diodes in one surface-mount package) priced at 2 cents. Individual surface-mount diodes go as low as about 1.2 cents, for a total cost of 3.6 cents. A resistor would be a bit cheaper than a capacitor, maybe 0.2 cents.
These figures indicate that modest cost reduction is possible. However, this is a simplistic analysis, and my intuition tells me that when all purchasing factors are considered, the three-diode solution would look even better from an economic standpoint.
Am I crazy for proposing a primitive power-supply circuit that saves me a few cents while offering mediocre performance and complicating the design task? Or is this the sort of outside-the-box thinking that is an essential aspect of electrical engineering?
Have you ever used a circuit like this instead of a linear regulator? Feel free to share your thoughts and experiences in the comments section below.