Measuring Tiny Current With High Resolution


[Paul] knew that he could get an oscilloscope that would measure the microamp signals with the kind of resolution he was after, but it would cost him a bundle. But he has some idea of how that high-end equipment does things, and so he just built this circuit to feed precision data to his own bench equipment.

He’s trying to visualize what’s going on with the current draw of a microcontroller at various points in its operation. He figures 5 mA at 2.5 mV is in the ballpark of what he’s probing. Measurements this small have problems with noise. The solution is the chip on the green breakout board. It’s not exactly priced to move, costing about $20 in single quantity. But when paired with a quality power supply it gets the job done. The AD8428 is an ultra-low-noise amplifier which has way more than the accuracy he needs and outputs a bandwidth of 3.5 MHz. Now the cost seems worth it.

The oscilloscope screenshot in [Paul’s] post is really impressive. Using two 1 Ohm resistors in parallel on the microcontroller’s power line he’s able to monitor the chip in slow startup mode. It begins at 120 microamps and the graph captures the point at which the oscillator starts running and when the system clock is connected to it.

27 thoughts on “Measuring Tiny Current With High Resolution

    1. “in parallel on the microcontroller’s power line”
      That quite clearly implies the resistors are in parallel with each other and then connected to the power line; it’s correctly worded as it is…

      1. I rarely get into this sort of discussion other, than say it’s not important, if it truly isn’t important. However Leo is correct in part, and yet wrong in part so he was wrong in total, but I believe Mike doesn’t reflect what Paul had written. Paul put 2 1 ohm resisters in parallel, and placed them in series with the power line.
        From Paul “The first step was cutting the power trace and adding a resistor. I used two 1 ohm resistors in parallel”. Respectfully keeping in mind that many beginning self taught types could be reading Mike should have written two one ohm resistors where connected in parallel and placed in series with the power line. Perhaps my training has been different, but “on” isn’t synonymous with” in” when it comes to electrical circuitry. Often it is used that way in plumbing, but I’m experience enough in both understand the context, and if I don’t I’m experienced enough to ask.

        1. Anyone who is really interested is going to look at the pictures where it is 100% obvious what is going on.

          Note he also says “I also put a 100 ohm resistor on the output” and it’s not clear what that means either, but again if you look at the pictures then it becomes 100% clear.

          I think the moral of the story here is to ADMIRE THE FINE ENGINEERING and don’t get worked up about things that are patently obvious to all but the pedantic.

  1. One really nice trick I was taught many years ago for nicely twisted wire that didn’t start that way: put all the wires into a drill, and hold the other end. Or, you a vice if you already have it. Result: beautifully uniformly twisted wires.

  2. “[Paul] knew that he could get an oscilloscope…”

    [Paul] knew that he could get an oscilloscope PROBE ….”

    He already had a scope, he just didn’t want to fork over $4k for the correct probe.

    1. I wondered that too. But I think he was mostly interested in getting a “sense” of what the dynamic power consumption looked like. For that requirement, the 5% resistors are ok.

      There are also a lot of other, less expensive, current monitoring amplifiers if one doesn’t need the bandwidth and gain of this solution. It’s neat though to watch the operation of very low current devices.

    2. Hi Paul here, the guy who wrote built this and that blog (which I never expected HaD to notice).

      Yeah, I shoulda ordered 1% resistors when I got the amplifier chip and power supply module. I thought I had 1% in my parts bins. But when I started building, it turned out I only had 1% in values down to 10 ohms.

      I could have put 20 resistors in parallel, but djdesign is right. At least for that project, I really only needed to see the shape and approximate scale of the waveform. How it changes over time (and what my code changes did to it over time) were the important thing for that particular use. The two 5% resistors were ok.

      Next time, I’ll have 1% resistors in my parts bin!

        1. Yes, the resistors I ordered are metal film. I thought I had 1% metal film in my part drawer (I do for most values over 10 ohms) when I bought the amplifier chip and power module, but when I went to do the measurements, all I had was 5% carbon film at 1.0 ohm.

          It worked pretty well anyway. Next time, I’ll have the metal film ones.

    1. µCurrent has 2 kHz bandwidth. The AD8428 has 3.5 MHz bandwidth.

      Actually, this comparison isn’t quite fair to µCurrent, since it’s specified at -0.1dB. Analog Devices probably specs the AD8428 at -3dB. But still, one solution is in the kHz range which is perfect for a multimeter, the other is in the MHz range for an oscilloscope.

  3. Bookmarked and printed to a PDF file might be useful in the future.
    From the description of the probe “…allowing you to quickly probe multiple locations on your DUT without having to solder or unsolder the leads”. Handy but not $4K handy for most with an electronics work bench. A hack to duplicates that feature would be something, if it already exists I don’t know of it.

    This reminds of an instructable that included a circuit to measure resistances higher than what most most test meters can test for. One of the interesting and useful items that’s not the primary subject of an article, but is found in the article anyway.

    1. As mentioned above, µCurrent has only several kHz bandwidth. Great for multimeters, but not nearly enough bandwidth to fast changes in the current waveform on an oscilloscope.

      This approach has 3.5 MHz bandwidth, about 1000X higher bandwidth than µCurrent. Still far less than the oscilloscope, but pretty usable to see changes as the software changes the chip’s clock modes.

      1. a simple modification of the ucurrent circuit jumping a few resistors and getting a faster op-amp would solve all of those issues with the benefit of the accuracy
        what we would use at work to measure nanoamps at ~1mhz is just a 1k resistor with an instrumentation amp and a scope or even just a micro if it needs to collect data over time or with high accuracy

        i mean your only measuring microamps here … a 1k resistor at just 3.3v would work to 3.3ma and 10k to 330mic … unless your pushing also in to microvolts than using a high value resistor to measure with an inst-amp is no problem!

  4. Getting low PPM is the important part as you can get to the right values
    by calibration. Scopes are not exactly well know for being high
    resolution for measuring voltages.

    I’ll worry more about the measurement techniques here. Amplifier without
    decoupling caps, what looks to be a DC/DC module without bulk filtering
    caps, long twisted wire for low signal level when he could have the dip
    board directly connected to the sensing resistor etc. Last but not least
    use of scope clips and probably ground clips for sensitive measurements.
    It is all about minimizing loop area for picking up noise.

    1. Some background reading materials:
      Linear Tech App Note #47:
      Skip to page 69, you’ll find Appendix A: ABC’s of Probes by Tektronix, Inc.

      Appendix F: Additional Comments on Breadboarding.
      Read the comments there.

      Figure 18 shows you that the scope probes are stripped down and
      socketed directly to measurement points. This is how you do
      low noise measurements.

    2. DC/DC converter is MEV1D0515SC, data sheet says “No external components required
      No electrolytic or tantalum capacitors”

      The spread out layout is probably more for photogenic reasons. No doubt he could have built it up “optimally” but I think it would look like spaghetti and the pictures would not be so self-explanatory.

      It is indeed better to have better measurements, but one mark of good engineering is not over-engineering. Do what you need to do, to get the data you need to get, and move on.

      1. On the other hand, same can be said about over engineering in your
        parts. Don’t use parts with good specs and then spoil it because you are
        sloppy in using it. Sure you can get away with that, but don’t brag on
        the spec because your sloppy setup just threw that out the window.

        I suppose that exposing a DC/DC magnetic field next to a long twisted
        pair is good for your noise too when you could avoid all that. :P

        That CPU power consumption steps picture doesn’t require high bandwidth.
        You can lower your noise a lot if you lower your bandwidth in your
        measurements. Using a 3.5MHz BW part for taking a measurement that only
        needs 10kHz is silly. Now if you need to look at something in the
        500-600kHz range, you would need that.

        Don’t blame your tools if you don’t take the precaution of learning how
        to do low noise measurement. Jim William put a lot of effort in
        writing/compiling one of the longest app notes teaching people how to do
        proper measurements. Stuff you wouldn’t normally know except from
        experience. Learn from one of the best in the industry. R.I.P.

        BTW right off the bat in the first picture with a “NO” in appendix F is
        figure F1 a breadboard set up just like the picture up top. Do you think
        we encourage others to do it incorrectly on the web just because it
        looks good posing for a web picture?

  5. I think it’s a nice project overall even with the shortcomings.
    It’s not suited for absolute current measurement but the idea is probably to look at the waveforms and figure out where you can improve, possibly even measuring the impact of different instructions. The uCurrent cannot do that, it uses a chopper amp which I doubt will be available in 350Mhz options for a reasonable price.
    Breadboarding is a proof-of-concept not the solution (unless it gets the job done). Everything can be nicely integrated into a probe or small self-contained probe attachment.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

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