Electronics ru
Advanced Search +


Arduino-based Inductance Meter


I’ve just finished a little Arduino project. It’s a shield for the Arduino Uno that lets you measure inductance. This is a functionality that I found missing in just about any digital multi meter. Yes, there are specialized LCR meters that let you measure inductance but they typically won’t measure voltages or currents. So I had to build my inductance meter myself.

Arduino-based Inductance Meter
Figure 1. Inductance meter in action. It displays the resonance
frequency together with the inductance

The basic design is really simple (Figure 2). It a colpitts oscillator with the coil missing. You use the test leads to connect it to a coil which will make it resonate. The Arduino then measures the frequency at which the oscillator is resonating and calculates the inductance. The capacitors are part of the shield so the capacity is known. All related files (Schematic Diagram, PCB and Arduino Sketch) can be downloaded in download section.

Arduino-based Inductance Meter
Figure 2. Arduino-based Inductance Meter Schematic Diagram.

There is 1uH of inductance included on the schield which is placed in series with the coil to be measured. This serves two purposes: The oscillator can resonate when you short-circuit the test leads. When you then press the push button on the shield, the software will use the current measurement as new calibration (Figure 3, 4). It also puts an upper limit on the resonance frequency. This ensures that the software the rest of the circuit can keep up with the oscillator.

Arduino-based Inductance Meter
Figure 3. Pressing this blue button zeroes the meter.

As can be seen from the schematic, the oscillator uses two 1 nF capacitors in series. Together with the 1 uH inductance, this limits the frequency to about 7.1 MHz. In practice, it oscillates at around 5.4 MHz when the test leads are short-circuited.

Arduino-based Inductance Meter
Figure 4. The entire shield with the display removed.

The oscillator output is followed by a comparator turning the sine wave of the oscillator into a square wave. I’ve used an inexpensive but fast Microchip MCP6561R. It has a maximum propagation delay of 80 ns which allows it to keep up at the maximum frequency.

But of course, 5.4 MHz is way too fast for the Arduino to keep up. The Arduino runs at 16 MHz and will need at least a few dozend instructions to process each pulse from the shield. My solution was to add a 74HC590 8-bit binary counter dividing the frequency by 256. That gives a theoretical maximum frequency of 7.1 MHz / 256 = 27.7 kHz. That’s something the Arduino can deal with.

Arduino-based Inductance Meter
Figure 5. With the test leads open, the oscillator can’t resonate. The
currentcalibration/zero-offset is displayed in stead.

For obvious reasons, there is also a display included on the shield. And then there’s that pushbutton which is debounced in hardware by running it through an RC low-pass filter and a Schmitt-triggered buffer. The button is used to zero the meter, i.e. the current measurement is used as the new zero-offset. With the test leads open, the oscillator can’t resonate. The current calibration/zero-offset is displayed in stead (Figure 5).

Table 1. BOM
2.2 kOhm
330 Ohm
R3, R4, R6, R8,
R11, R12
10 kOhm
3.3 kOhm
R7, R13
100 kOhm
220 Ohm
10 kOhm
1 uH
22 uF × 16 V
C2, C3, C9
1 nF
C4, C6, C7, C8,
C10, C11
100 nF
smd SOT23

The main problem are the test leads. They have quite a bit of inductance themselves. You can zero that by pressing that button but their inductance easily varies by maybe plus/minus 100 nH depending on how you hold them. If you’re careful to calibrate them in the same position as you measure you can measure very small inductances such as the 300-something nH you see on the Figure 6. It’s just 12 turns of a wire.

Arduino-based Inductance Meter
Figure 6. Arduino-based Inductance Meter: Even very small inductance
values can be measured.


Arduino source code (aka sketch) as well as the Eagle files and PDFs - download

Materials on the topic

  1. Datasheet Microchip MCP6561R
  2. Datasheet NXP 74HC590
  3. Datasheet ON Semiconductor MC74VHC1GT50

You may have to register before you can post comments and get full access to forum.
User Name
Fragments of discussion:Full version of discussion »
  • Arduino has a convenient platform for the novice programmer. Such a device is very useful for radio amateurs. Most of the measurement accuracy is not necessary.
  • I designed a similar device. About 10% Accuracy
  • where is the firmware ?
  • Arduino platform is very Comfortable Modern microcontrollers have enough resources. Application code can weigh up to 100 KB ! Previously, it was a transcendent value.
  • hemilton, the project should develop quickly Arduino is a good helper in this
  • Jon, Аrduino source code (aka sketch) as well as the Eagle files and PDFs
Full version of discussion »

News on theme:

Slices ↓
Radiolocman facebook Radiolocman twitter Radiolocman google plus