

Arduino LMeter shield
Arduino Inductance Meter shield
- Size
- 68.6 × 53.3 mm
- Copper layers
- 2
- Thickness
- 1 mm
- Parts
- 33
- Nets
- 48
- Pads
- 127
- Tracks, vias
- 125, 45
- Pours
- 3
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 18 Apr 2025
- Updated
- 29 Jul 2025
Overview
Arduino LMeter shield is an open-source printed circuit board by michpro, from the michpro/Arduino_LMeter_shield repository on GitHub, published under the CERN-OHL-P-2.0 licence. It is a 2-layer board of 68.6 × 53.3 mm with 33 parts on 48 nets, routed with 125 tracks and 45 vias.
It is built around the 74HC590D and 2SC3356. Its parts include 10 capacitors, 10 resistors, 3 connectors, 2 ICs and 1 transistor. It belongs with the microcontroller boards boards and the AVR (ATmega, ATtiny) boards of this library.
Main components
2README
README.mdArduino UNO Inductance Measurement Shield
Overview
The Arduino UNO Inductance Measurement Shield is a dedicated peripheral board designed to enable precise inductance measurements, a functionality absent in most conventional digital multimeters (DMMs). While specialized LCR meters offer inductance measurement, they typically lack broader capabilities such as voltage or current measurement. This shield addresses this gap by providing a compact, integrated solution for inductance quantification via frequency-domain analysis.
Applications
- Rapid inductance measurement for prototyping, education, or field diagnostics.
- Integration with automated test systems leveraging Arduino’s serial capabilities.
Hardware
Design Architecture
The shield employs a Colpitts oscillator topology modified to exclude the inductor. The unknown inductor (Lx) is connected externally via test leads, completing the resonant circuit.
Key design elements include:
- Resonant Circuit:
- Two series-connected 1 nF capacitors (C1=C2=1 nF) form the known capacitance (Ctotal=0.5 nF).
- A fixed 1 µH reference inductor (Lref) is integrated on-board, connected in series with Lx.
- Frequency Limitation:
- Lref ensures oscillation continuity when test leads are short-circuited.
- It imposes an upper frequency limit, ensuring compatibility with downstream circuitry.
- Theoretical maximum resonant frequency: fmax≈7.1 MHz
calculated via:
$\large f=\frac{1}{2\pi\sqrt{L_{ref}C_{total}}}$
Signal Conditioning
- Comparator Stage:
- An Analog Devices LTC8741 (or replacement) high-speed comparator converts the oscillator’s sinusoidal output to a square wave.
- Critical specification: Propagation delay ≤ 80 ns, ensuring signal integrity up to 7.2 MHz.
- Frequency Division:
- A 74HC590 8-bit binary counter divides the oscillator output by 256.
- Output frequency range: 0 Hz to 27.7 kHz (theoretical, 7.2 MHz/256).
- Enables reliable measurement by the Arduino UNO’s 16 MHz microcontroller.
- A pushbutton with hardware debouncing (RC low-pass filter with a time constant of 4.9 ms).
Integrated Display
An on-shield OLED displays measured inductance values in real time, eliminating external monitoring requirements.
Schematic diagram

Module visualisation
(click on the image to see the 3D model)
Assembly
For Arduino UNO:
- JP1 jumper – short-circuit (with a drop of tin) the FREQ and ICP fields.
- JP2 jumper – leave in the Auto position (Vcc from IOREF).
Interactive BOM and parts placement
Production files
The production files can be found in the location: https://github.com/michpro/Arduino_LMeter_shield/blob/master/production/
Software
The software was developed in the Arduino environment (Source).
The running program can be in one of four defined states:
- ST_IDLE:
- no operations are performed,
- ST_MEASURE:
-
The Arduino calculates inductance using the resonant frequency (f) via the formula:
$\Large L_{x}=\frac{1}{(2\pi f)^2\cdot C_{total}}-L_{ref}$Process Flow:
- Arduino measures the frequency at the 74HC590 output.
- Multiplies by 256 to reconstruct the original oscillator frequency.
- Computes Lx using the known Ctotal and Lref.
-
Displays the calculated Lx value on the OLED display.
-
If the measuring terminals are short-circuited without any additional inductance, pressing the ‘Calib’ button will cause the measured inductance value to be used to compensate for subsequent measurements (zeroing).
-
- ST_NO_INDUCT:
- No inductance is connected to the measuring terminals - they remain open and the generator does not oscillate. Information about this state is displayed on the display together with the measurement inductance correction.
- ST_FCPU_CALIB:
- After connecting a stable PPS signal from the GPS module, the program proceeds to the calibration procedure for the clock frequency of the Atmega328p chip in the Arduino module. This procedure takes 240 seconds. After this time (provided there were no interruptions in the PPS signal), the actual clock frequency of the Arduino module processor is calculated. This value is stored in the internal EEPROM memory and is used for calculations during subsequent meter starts. If, for any reason, the user wants to restore the default value of 16MHz for Arduino UNO, the ‘Calib’ button must be held down during module start-up/reset.
Reporting bugs
License
Copyright © 2025 Michal Protasowicki
Hardware
-
Source: https://github.com/michpro/Arduino_LMeter_shield
Hardware part of this project is released under CERN Open Hardware Licence Version 2 - Permissive.
Software
-
Source: https://github.com/michpro/Arduino_LMeter_shield/LMeter
Software part of this project is released under MIT Licence.
Support
If You find my projects interesting and You wanted to support my work, You can give me a cup of coffee or a keg of beer :)
Parts
33| Qty | Value | Footprint | References |
|---|---|---|---|
| 7 | 10k | footprints:R_0603_1608Metric | R1, R2, R5, R6, R7, R9, R10 |
| 4 | 100n | footprints:C_0603_1608Metric | C1, C5, C7, C9 |
| 3 | 1n | footprints:C_0603_1608Metric | C2, C3, C4 |
| 2 | 10u | footprints:C_0603_1608Metric | C6, C8 |
| 2 | Lx | footprints:4mm_Banana_Socket_Deltron_571 | J1, J2 |
| 1 | 100k | footprints:R_0603_1608Metric | R4 |
| 1 | 1uH | footprints:L_0805_2012Metric | L1 |
| 1 | 2SC3356 | footprints:SOT-23 | Q1 |
| 1 | 2k2 | footprints:R_0603_1608Metric | R3 |
| 1 | 470 | footprints:R_0603_1608Metric | R8 |
| 1 | 470n | footprints:C_0603_1608Metric | C10 |
| 1 | 74HC590 | footprints:SOIC-16_3.9x9.9mm_P1.27mm | U2 |
| 1 | Arduino UNO R3 Shield | footprints:Arduino_UNO_R3_WithMountingHoles_Profiled_no_SPI | A1 |
| 1 | Calib. | footprints:SW_Push_1P1T_NO_6x6mm | SW1 |
| 1 | FREQ | footprints:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mm | JP1 |
| 1 | GPS | footprints:PinHeader_1x03_P2.54mm_Horizontal | J3 |
| 1 | LTC8741 | Package_TO_SOT_SMD:SOT-23-5 | U1 |
| 1 | Logo_Open_Hardware_Small | footprints:OSHW-Logo2_7.3x6mm_SilkScreen | LOGO1 |
| 1 | OLED 1.3" | footprints:LCD_OLED_128X64_1.3_I2C | M1 |
| 1 | VCC | footprints:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mm | JP2 |
Similar boards
- 2 layers100 × 85 mm

- 2 layers70 × 31 mm

- 2 layers53 × 29.5 mm

ActiveDifferentialProbe
profdc9/ActiveDifferentialProbe
A RF Differential Probe based on the 2SC3356 transistor
74 parts8 - 2 layers100 × 100 mm

- 2 layers44.5 × 78.7 mm

Walkie talkie
andykarpov/walkie-talkie
A custom pcb for the original project https://vrtp.ru/index.php?act=categories&CODE=article&article=3351
141 parts2 - 4 layers96 × 90.2 mm

Transceiver
ngrabbs/ember
Open pvpanel.kicadpro with KiCad 10. The project contains the recovered schematic, routed PCB, project-local footprint libraries, and solar-module STEP model.
161 parts1CC0-1.0 - 4 layers95.9 × 90.2 mm

PCI-104-Template
marian1911/Proyecto-CUBESAT-TRANSPODER-VHF-UHF
En este repositorio se guardan todos los archivos de desarrollo referidos a el diseño y fabricacion del trasnponder VHF/UHF
128 parts - 4 layers66 × 155 mm

Questions
How big is the Arduino LMeter shield PCB?
It measures 68.6 × 53.3 mm and has 2 copper layers, 1 mm thick.
What parts does the Arduino LMeter shield use?
33 parts, built around the 74HC590D and 2SC3356. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Arduino LMeter shield KiCad files?
From the michpro/Arduino_LMeter_shield repository on GitHub, at the commit this page was made from: the board is Arduino_LMeter_shield.kicad_pcb and its schematic Arduino_LMeter_shield.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Arduino LMeter shield design in my own project?
Its repository publishes it under the CERN-OHL-P-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
