[AmpeROSE] Current Measurement

Hello Everyone !!

This week the whole team was focusing on the measurement part of the project. We studied existing architectures, proposed new ideas based on our specs and read a lot of datasheets to get – finally – a first version of the circuit we are going to use.

The measurement part will consist of the following components:

  • Current Voltage Conversion (using shunt resistors)
  • Amplification
  • Anti-Aliasing Filtering
  • Analog to Digital Conversion
  • Shunt Selector (Continuous Calibration)
  • Calibration Current Generator (Initial Calibration)

This can be summed up in the following figure:(Click for larger image)

In addition to the components present in this figure, we will have a battery power supply and an on-board recharging circuit. But we will discuss the power supply in upcoming weeks.

In the following sections, we will go into the details of each part and discuss its circuitry and its components choice.

Here we go 🙂

Current – Voltage Conversion

The first step of current measurement is to convert current into voltage. As discussed in previous weeks, this can be done using either shunt resistors or feedback ammeters. In our application, we will be using shunt resistors.

The input for this level can come from either the Device Under Test (DUT) or the internal current generator used to calibrate the device.

The current will flow into 4 parallel resistors (R1, R2, R3, R4). The resistor R4 is always connected and it is the only one connected when we are using the fourth range. Each time we want to use a lower range (toward range 1), we switch on the corresponding transistor to use one more resistor and when we want to use a higher range we switch it off.

Recall that the ranges are given as:

Current range Active resistors
1 739 µA   →    303 mA R1+R2+R3+R4
2 7.39 µA   →    3,03 mA R2+R3+R4
3 73.9 nA   →    30,3 µA R3+R4
4 1 nA   →    303 nA R4


Recall that these calculations were based on:

  • Maximum burden voltage directly on shunt resistors of 50 mV in order to reduce the effect of the measurements as much as possible.
  • Minimal voltage at the output of the amplifiers of 10 mV, because smaller values will be more prone to noise errors.

In order to choose the right measurement interval, each resistor will be controlled by an automatic switch manipulated in the calibration circuitry.

A potential problem arises: the ON impedance of these switches is not always negligible and thus must be taken into account (in measurement interval calculations AND in the calibration process).

Finally, we get the following circuit for this stage:


Regarding the switches, the main criterion is the ON resistance. Another useful criterion is switching time. Given these criteria, we have compiled a list of possible switches to use:


Reference ON Resistance (mΩ) Switching Time (ns)
ADG 801 / 802 (CMOS SPST Switches) 400 55
FDC606P (P-Channel MOSFET) 35 250
SI2333DDS (P-Channel MOSFET) 28 115
DMP2035U (P-Channel MOSFET) 35 135
DMG3415U (P-Channel MOSFET) 42.5 1150


From the list above, we have chosen the SI2333DDS MOSFET as our best switch candidate.

We get that the values of resistors in the above figure are as follow:

R1 = 145 mΩ , R2 = 16.5 Ω, R3 = 1.65 kΩ, R4 = 165 kΩ.

Note that the value of the equivalent resistor is based on the datasheet and is not necessarily the value in the real case. That’s why the initial calibration is crucial to take all these effects into consideration.


The output of the current – voltage conversion stage is a small voltage signal. The Amplification stage will then amplify the signal in order to adapt it to the ADC input.

The main specifications for this stage are as follows:

  • A Gain of 82 with a Bandwidth of 100 kHz.
  • A circuit that blocks any current flowing from the measurement stage

Note that the only current flowing into this stage are bias currents of the operational amplifiers if the shunt output are connected to the operational amplifiers inputs.

Amplification will be done using the following feedback circuit:

The choice of the Op-Amps is critical. They must satisfy the following criteria:

  • Ultra Low Bias Currents
  • Gain Bandwidth Product >= 8 MHz
  • Ultra Low Noise
  • High CMRR (High Side Configuration)
  • Low Offset Voltage

Given these criteria, a possible list of op-amps is given as follows:


Reference GBW (MHz) Noise (nV/√Hz) Offset Max (µV) Bias Current Max (pA) CMRR Min (dB)
AD8618 24 8 60 1 80
AD8067 54 6.6 1000 5 106
ADA4500 10 14.5 120 2 95
AD8655 28 2.7 250 10 85
MAX44251 10 5.9 6 1300 130
MAX44242 10 5 600 10 90
MAX4488 42 4.5 750 150 90


Clearly our criteria specifications will result in a trade-off. It is somehow difficult to find an op-amp that satisfies all the criteria perfectly.

Anti Aliasing Filter

Since we are sampling at 100 kHz, high frequency noises will be aliased into the desired frequency range. To prevent this problem, we must use a low pass anti aliasing filter whose cutoff frequency is equal to the maximal frequency of the signal (50 kHz).

A simple passive RC filter will do the job. Recall that the cut-off frequency of a RC filter is Fc = 1/(2*Pi*R*C).

Given these specifications we get R = 1.45 KΩ and C = 2.2nF.

The anti-aliasing filter will then be as follow:

Analog to Digital Conversion

The amplified and filtered voltage representing the current flowing into the DUT will be placed at the input of an ADC in order to send the current measurement to the microcontroller.

The main criteria for the ADC are:

  • Resolution = 24 Bits
  • Sampling Rate >= 100 kHz

Other criteria include signal to noise ratio, distortion, linear and nonlinear errors…

Given these specifications, the following ADCs may be used:

Reference Number of Bits Output Data Rate Output Format Number of Channels
AD7176-2 24 250 KSPS Serial 2 – 4
AD7760 24 2.5 MSPS Parallel 1
AD7764 24 312 KSPS Serial 1
AD7766 24 128 KSPS Serial 1
AD7768-4 24 256 KSPS Serial 4
ADS127L01 24 512 KSPS Serial 1
ADS1274 24 128 KSPS Serial 4
ADS1672 24 625 KSPS Serial 1
ADS131A02 24 128 KSPS Serial 2


We are considering for now AD7176-2. This ADC guarantees > 17 noise free bits when we are sampling at 250 kHz.

This will require a reference voltage of 4.1V. We will then use an adjustable voltage regulator.

Shunt Selection & Calibration

Now for the tricky part. Our first approach was to use a microcontroller to do the calibration. However this approach will result in latency and potentially – for high variations – disastrous effects on the measurement.

Our second approach was to use the fast (2.4 MSPS) but not so accurate internal ADC of the microcontroller as a comparator and performing the calibration in the associated interrupt routine.

This approach is somewhat appealing, however it is not the best. The problem with this approach is that calibration time may take up to 3 us each period (Note that this value is calculated as the sum of a conversion time of a 500 ns and the time taken for each instruction in the ISR, as well as the latency for interrupt handling)

The most efficient approach, it seems, is to use hardware logic for the calibration. We are currently discussing and finalizing the calibration logic. We are thinking of two different ways to approach the hardware logic. The first one is to use a circuit similar to the one used in Nordic PPK. The second approach is to use RS latches.

That’s why we will discuss the calibration logic in detail in next week’s post.

Current Generation & Initial Calibration

Another problem that must be taken into consideration is drifts, offsets and all other errors in the used electronic components. That’s why we must generate a precise current, measure the output measurement of our circuit, and then correct the “correctable errors” in the software.

To generate a current we will use a current mirror. Reference voltage applied to a numeric potentiometer (we will go through the complete range of values) will generate a reference current.

This current will be copied using a current mirror (We can use for example wilson current mirror with 3 transistors or even improved wilson mirror with 4 transistors). This current – with controlled value – will be the input of the measurement stage, during the calibration phase.

By comparing the received and expected values, we can partially correct subsequent measurements. The current generation circuit will be as shown in this figure:

For the digital potentiometer, a possible component is MCP 4351. For the NPN transistors a lot of choices are possible. We can also use MOSFET transistors in Wilson current mirror.

At the beginning of the measurement process, the DUT selector will place our calibration current as input, and then the DUT will be placed as input when this phase is complete.

Note that the switches placed in these figures have been discussed in the current voltage conversion part.

That’s All !!

That concludes our current measurement stage. Since this is a primary design, it is always subject to modifications and improvements.

This week we will finalize the calibration logic and we will have a primary idea on the measurement stage PCB.

Please feel free to give suggestions 🙂

Until next week.


AmpeROSE Team

[AmpeROSE] Unveiling the dark side of feedback ammeters

Hello everyone,

In the bibliographic review momo and I made last week about low current measurements, two main designs were mainly considered : Shunt Ammeters & Feedback Ammeters. We also mentioned a third design that we were studying.

In this post, we will start by discussing that third design, then we will present its disadvantages and the disadvantages of feedback ammeters in general and finally we will conclude that shunt ammeters are the way to go.

So here we go …

General Impedance Converters

Let us consider the following circuit (Widely known as General Impedance Converter):

We will label nodes 1-5 from top to bottom. We have the same voltage at nodes 1, 3 & 5 (Inputs of Op-amps). The input current is the current traversing the impedance Z1 while the output current is the current traversing the impedance Z4 (and then the load impedance Z5). In addition the current traversing Z2 is the same current traversing Z3.

Combining all these information we get the following results:

Therefore by choosing Z1 = Z4 and Z2 = Z3, we have a circuit capable of measuring the current while maintaining a very small burden voltage. Cool !!

But wait ?! The simple feedback ammeter does the same thing ! What is then the advantage of such design ?

When we started studying that design, we thought that feedback ammeters can only be used in low side configuration (How deluded we were !). But in fact, both designs can be used in both low side and high side configurations.

However, the main advantage of GIC based ammeter is actually that it can be used to measure current flowing in both directions while simple feedback ammeters can only measure current flowing from the source to the DUT. But since we are measuring IoT devices, bidirectional measurement is not a necessary feature. Thus this design will only complicate our lives. It was interesting however considering and studying new ideas.

Back to Feedback Ammeters

For now, feedback ammeters look like the perfect match for our specifications. Very low burden voltage, used in both low side & high side configurations, used in all pico-ammeters. Awesome ! However, following a discussion with Alexis Polti, we found out that feedback ammeters are not that awesome.

In the low side configuration, the current that passes through the feedback resistor will re-enter the op-amp (it will sink the current to the ground). In the high side configuration, it is the op-amp who will source current to the DUT. In both cases, current will pass through the op-amp and will be modified by the op-amp consequently. The problem comes from the fact that operational amplifiers act like low pass filters. Thus all current peaks (or even smaller variations) will go undetected. This type of ammeters cannot be used in applications where high dynamic range is needed (our application for example 🙂 ).

Shunt Ammeters … Again …

Finally, after taking all these facts into consideration, we found out that shunt ammeters are actually the most adapted design to AmpeROSE. The main challenge for now is to choose the right shunt resistors (and choosing the right intervals) in order to have an acceptable burden voltage.

Next week, we should have the final schematics of the measurement part. We are looking forward to sharing it with you !!

Until next week !!

[AmpeROSE] How to measure the current – Part 2

Hello everyone!!

This week’s goal was to go through existing articles and bibliography, and discuss low current measurement. After doing a lot of reading, we now have a clearer vision of the methods used for current sensing and the main challenges in low current measurement.

Mmomo already discussed, in a separate post the two main methods used in current sensing (shunt & feedback – Spoiler: other methods exist: we are currently studying a third method in depth. We hope to share it later on this blog , so stay tuned!!).

In this post, I am going to present you with the main challenges that face low current ammeter designers. Accuracy is, evidently, crucial, when it comes to measuring low currents. That’s why I firmly believe that studying potential error sources in advance is extremely important in order to avoid getting to an impasse. Note that many articles found online study this issue in depth. Our main references are application notes from Keithley and National Instruments.

So here we go …

Measurement error sources

Leakage currents

Leakage currents are usually generated by stray resistance paths between the measurement circuit and nearby voltage sources. These currents can degrade the accuracy of current measurements considerably. This kind of errors is generally remedied by using good insulators (such as Teflon or polyethylene) and avoiding materials such as phenolic and nylon.

Zero Drift

Zero drift is the change of indicated zero offset when no input signal is applied. This offset must be corrected by “zeroing”, which means pulling the mass value back to zero(surprise!). Most electrometers include a means to correct zero drift. AmpeRose will make no exception of this rule!

Generated Currents

Any current generated in the measurement device will add up to the measured current and will introduce measurement errors. These currents include triboelectric effect currents and piezoelectric effect currents.

AC Interference

In order to solve this problem, we will use electrostatic shielding, and a battery.

To sum up, choosing the right measurement method is crucial but one must not ignore all the errors and negative effects that appear when measuring low currents. Some of these errors can be reduced by using appropriate shielding and proper cabling. Others must be resolved with more “tailored” methods. In all cases, we will have to take these errors into consideration in our design.

Next Week

Now that we have a better view on the subject, we will choose the appropriate current measurement method as well as the circuit to implement it. Stay tuned!

We would love to hear any suggestions or tips you might have concerning the current measurement step 🙂

[AmpeROSE] How to measure the current?

After having read some documentation about measurement here and there, we noticed that there are two main methods to do it. The ammeters using the first method are known as the shunt ammeters and the second as feedback ammeters. The measure of a current is done by converting a current to a voltage that we can directly read using an ADC (Analog to Digital Converter). Even though this is in common in the two method, they do it differently. We are going to see how it is done for each and the differences.

  1. Shunt ammeters

Source : « Linear Technology » (figure 1 from the appplication note of Linear Technology about current sensing)

In this method, a resistor is put in the circuit and we measure the voltage over this resistor. Using the Ohm’s law we can recover easily the current that flowed in it. This resistor is called “shunt”. Usually, the voltage is amplified with an operational amplifier before being measured.

We need to amplify the voltage over the shunt because we are trying to have the smallest voltage in order to keep the circuit under test as if it was not. This voltage is a drawback for this method and even has a name which is the “burden voltage”.

Trying to have a small burden voltage leads to minimizing the value of the resistance too but this is not so easy to do. Indeed, the more we reduce its value, the more it becomes sensitive to the thermal noise.

The small voltage also require to use an operational amplifier but even this has a drawback: the measurement needs some time to be stable. This happens because of the association of the resistor with the input capacitance of the operational amplifier. The time needed for the stabilization depends on the multiplication of the value of resistor by the value of the input capacitance. The bigger this product is, the longer this time will be.

Nevertheless, this method has the advantage of being used almost anywhere in the circuit.

Setting up this method consists in finding the good resistors that will not produce a too big burden voltage to allow the measured circuit to operate normally but big enough to be able to measure it.

  1. Feedback ammeters

Source : « National Instruments » (figure 4 of the article of National Instruments about the minimization of measurement errors of small currents)

This method works a bit differently but keeps the main idea of converting the current to a voltage with a resistor as you can see on the figure above. We measure the voltage called Vout on the figure which is proportional to the current Iin which is the measured current and Rf, the resistor used for the conversion.

This method has the advantage of allowing to choose a bigger resistor in order to have a bigger voltage. This is possible because this voltage has no influence on the tested circuit. This avoid us other problems such has the thermal noise.

It also reduce the problem of burden voltage, indeed, it depends only on the amplifier used. The burden voltage is generally in the range of the µV whereas the burden voltage of the shunt ammeters can reach one volt.

Since we use an operational amplifier, we also have a problem with the stabilization time of the measure but here the resistor is in the feedback loop so the effective resistor is smaller. The measurement can therefore be faster but the slew rate of the amplifier has to be adapted too.

Our following step is to build the best solution for our AmpeROSE based on these methods.