Follow @jack_ganssle

The logo for The Embedded Muse

For novel ideas about building embedded systems (both hardware and firmware), join the 27,000+ engineers who subscribe to The Embedded Muse, a free biweekly newsletter. The Muse has no hype and no vendor PR. It takes just a few seconds (just enter your email, which is shared with absolutely no one) to subscribe.

This month we're giving away the Zeroplus Logic Cube logic analyzer that I review later in this issue. This is a top-of-the line model that goes for $2149.



The uCurrent

By Jack Ganssle (Reviewed January 14, 2013)

Summary: A $60 tool makes measuring low levels of current consumption easy.

It's all about the coulombs now. Some products run for years off a single coin cell and any excess electron use will drain that power source prematurely.

If you're building low-power electronics it's important to be able to measure current consumption, sometimes to very low values. Few DMMs can measure much sub-1 uA. My Extech 330, for instance, has a 0.1 uA digit but is unsurprisingly inaccurate when presented with a couple of hundreds of nA (nanoamp).

A nA isn't much, but some controllers today claim sleep currents of just tens of nA.

One nifty tool is the uCurrent from EEVblog's Dave Jones. It's a very simple circuit consisting of not much more than a selectable set of shunt resistors and an op amp. You could cobble up your own design in no time, but the uCurrent is inexpensive and well-engineered.

I ordered one since I'm taking a lot of data from some very low-power systems. As the picture shows it's a small box with two switches and four plugs. Put the uCurrent in series with the power supply to your system, and plug a DMM into the two output plugs.

One switch controls power; the other selects one of three ranges. These produce 1 mV/nA to the meter, or 1 mV/uA, or 1 mV/mA. So in the lowest scale a meter reading of 100 mV corresponds to 100 nA.

It's quite accurate and easy to use. Sub-10 nA readings were spot-on and easy to make. That's better than the $400 Fluke 87V DMM (resolution 0.01 uA) can do.

There's no out-of-range indication. The op amp saturates at about 1.5V which is the only clue it's time to change settings. The manual warns that the unit is unfused, and the shunt resistors are teeny little SMT things that will fry easily so one has to be careful not zap it with too much current.

My one beef is that the two input banana plugs don't have the usual holes drilled perpendicular to the posts. My drill press quickly took care of that, because I find those holes tremendously useful. The picture shows a resistor lead going into one of the newly-drilled holes.


1 V going through 30 MOhms reads 33.5 mV, or 33.5 nA, which is nearly spot-on, accurate to within the tolerance of the resistors.

Dave specs the thing with a 2 KHz bandwidth, but I found it gave reasonable results out to 3.5 KHz. This is definitely not something to track power consumption of your system on an instruction-by-instruction basis. Or to watch current zoom up when the CPU wakes up for a hundred microseconds. But it's great for understanding static and more slowly-moving events.

uCurrent screen

Bottom trace:3.5 KHz input to the uCurrent (through a 10K resistor). Top: output from the uCurrent, 200 usec/div.

Dave has a full write-up including a schematic about the uCurrent here .

The unit is available for $60 from AdaFruit ( Definitely recommended for those who need to make low-current measurements.

UPDATE: This is no longer available, and has been replaced by a new version.

(If you need measurements in the femtoamp range, check out this from Bob Pease. For mind-boggling measurements at attoamp levels - 6 electrons per second - see this).