

ADCurrentDongle
Current measurement AND BNC connector breakout? Sign me the heck up!
- Size
- 37 × 74 mm
- Copper layers
- 4
- Thickness
- 4.69 mm
- Parts
- 56
- Nets
- 59
- Pads
- 194
- Tracks, vias
- 484, 55
- Pours
- 4
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 25 Jun 2021
- Updated
- 29 Oct 2026
Overview
ADCurrentDongle is an open-source printed circuit board by cr1tbit, from the cr1tbit/ADCurrentDongle repository on GitHub. It is a 4-layer board of 37 × 74 mm with 56 parts on 59 nets, routed with 484 tracks and 55 vias.
It is built around the MCP6004-E/P and 1N4148WT. Its parts include 20 resistors, 9 capacitors, 9 connectors, 5 diodes and 4 ICs.
Main components
2MCP6004-E/P
PDIP-14-40℃~+125℃ 1.8V~6V 100uA 1MHz 1pA 1pA 23mA 28nV/√Hz@1kHz 2uV/℃ 4 4.5mV 600V/ms 76dB ESD protection Rail-to-Rail Input, Rail-to-Rail Output PDIP-14 Operational Amplifier ROHSMicrochip TechnologyOperational Amplifier1N4148WT
SOD-523-55℃~+150℃ 1.25V@150mA 100V 150mA 150mW 1uA@75V 2A 4ns Independent SOD-523 Switching Diodes ROHShongjiachengSwitching Diodes
README
README.mdCurrentDongle attachment for the Analog Discovery 2
I actually use this simple board all the time, so decided to share it with the world.
It was made for these reasons:
- Simplifying current consumption measurement process, using AD2 bulit-in programmable voltage source, and dual INA186 amplifiers (for extended dynamic range)
- Breaking out BNC connectors, because, for some reason, such breakout board from Analog costs an ARM and a leg.
- Just breakout board for hacking stuff together
There's an simple bulit-in comparator circuit that blinks a LED when the channel range is reached. The high-accuracy channel usually also blinks when the DUT performs some action, which is also an useful feedback I guess.
In Calib folder, there's an example digilent waveforms workspace that I use for current measurement (the software folder now has a standalone app that replaces it). Some things to note:
- programmable voltage sources on
AD2are noisy as hell when the current is under a couple of milliamps - hence the resistor in this area. KeepJP7closed: without the pre-load, V+ delivers current in ~8 mA bursts at near-zero load (see M8 and M9 in the lab report). - the voltage offset errors from
INA186s can be easilly callibrated out, using the provided script.
Measurements, verification and known issues of this revision: ADCurrentDongle_LabSession (lab report).
What this device is NOT:
- Crosstalk-free oscilloscope adapter
- Super accurate, self calibrating current probe
- Lab-ready device
Stuff to improve:
- The LEDs will not work when system is powered by 1.8V - but it's not fixable easily.
Some pics:

PCB connected to the Analog Discovery 2

PCB render

PCB IRL
Parts
56| Qty | Value | Footprint | References |
|---|---|---|---|
| 6 | 3k3 | Resistor_SMD:R_0402_1005Metric | R7, R9, R10, R16, R17, R20 |
| 5 | 22n | Capacitor_SMD:C_0402_1005Metric | C2, C5, C6, C8, C9 |
| 5 | Jumper_2_Open | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | JP1, JP2, JP3, JP4, JP7 |
| 4 | 100n | Capacitor_SMD:C_0402_1005Metric | C1, C3, C4, C7 |
| 3 | 100k | Resistor_SMD:R_0402_1005Metric | R11, R14, R15 |
| 3 | LED | LED_SMD:LED_0603_1608Metric | D3, D4, D5 |
| 2 | 100 | Resistor_SMD:R_0402_1005Metric | R4, R5 |
| 2 | 1Meg | Resistor_SMD:R_0402_1005Metric | R12, R13 |
| 2 | 1N4148WT | Diode_SMD:D_SOD-523 | D1, D2 |
| 2 | 330 | Resistor_SMD:R_0402_1005Metric | R6, R8 |
| 2 | 50 | Resistor_SMD:R_0805_2012Metric | R18, R19 |
| 2 | CH1_DPDT | Button_Switch_SMD:SW_DPDT_CK_JS202011JCQN | SW1, SW4 |
| 2 | Conn_01x03 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J7, J8 |
| 2 | INA186AxDDxx | Package_TO_SOT_SMD:Texas_R-PDSO-G6 | U1, U2 |
| 1 | 0.2/0.1% | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R3 |
| 1 | 1/0.1% | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R2 |
| 1 | 5/0.1% | Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolder | R1 |
| 1 | AnalogDiscovery2 | critbit-transient-library:AnalogDiscovery2_side_con | U4 |
| 1 | BRD_EXT | Connector_PinSocket_2.54mm:PinSocket_2x02_P2.54mm_Vertical | J5 |
| 1 | CH2_DPDT | Button_Switch_SMD:SW_DPDT_CK_JS202011JCQN | SW2 |
| 1 | CURR_LP_SEL | Button_Switch_SMD:SW_DPDT_CK_JS202011JCQN | SW3 |
| 1 | Conn_01x02 | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J4 |
| 1 | Conn_01x10 | Connector_PinHeader_2.54mm:PinHeader_1x10_P2.54mm_Vertical | J9 |
| 1 | EXT_SONDE1 | Connector_Coaxial:BNC_Amphenol_B6252HB-NPP3G-50_Horizontal | J1 |
| 1 | EXT_SONDE2 | Connector_Coaxial:BNC_Amphenol_B6252HB-NPP3G-50_Horizontal | J2 |
| 1 | MCP6004 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U3 |
| 1 | R_EXT | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J6 |
| 1 | Screw_Terminal_01x04 | TerminalBlock:TerminalBlock_bornier-4_P5.08mm | J3 |
Similar boards
- 4 layers70.8 × 108 mm

- 4 layers60 × 94 mm

DaisySeedPedal125b
bkshepherd/DaisySeedProjects
A collection of hardware and software projects based around the Electro-Smith Daisy Seed
80 parts559MIT - 2 layers75 × 100 mm

Phased
Neumi/open_echo
Open Source echo sounder / depth sounder / SONAR for bathymetry and research. Arduino based and compatible.
77 parts530 - 2 layers66 × 99 mm

Nucleo32TNC
mobilinkd/NucleoTNC
The Nucleo TNC is a breadboard implementation of the Mobilinkd TNC3 using a STM32L432KC Nucleo32 board. This TNC faithfully implements the audio section and EEPROM storage of the TNC3.
54 parts110GPL-3.0 - 2 layers171.5 × 106.7 mm

Sequencer
westlicht/performer-hardware
PER|FORMER Eurorack Sequencer - Hardware Design Files
435 parts110 - 2 layers267 × 300 mm

Output.Panel R0.5.1 300x300 2layer step1 Modified
rusefi/hw_microRusEfi
microRusEfi board for rusEfi ECU
2,371 parts98 - 4 layers29 × 20.9 mm

Wideband controller
mck1117/wideband
The firmware/boards directory contains configuration for each board this firmware supports.
60 parts81MIT - 2 layers248.9 × 120.7 mm

16nx
16n-faderbank/16nx
16nx is a controller for musical instruments. Sixteen faders,MIDI over USB and jack, CV out, and I2C out. Based around RP2040.
171 parts76
Questions
How big is the ADCurrentDongle PCB?
It measures 37 × 74 mm and has 4 copper layers, 4.69 mm thick.
What parts does the ADCurrentDongle use?
56 parts, built around the MCP6004-E/P and 1N4148WT. 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 ADCurrentDongle KiCad files?
From the cr1tbit/ADCurrentDongle repository on GitHub, at the commit this page was made from: the board is ADCurrentDongle.kicad_pcb and its schematic ADCurrentDongle.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the ADCurrentDongle design in my own project?
Its repository states no licence, so its author keeps all rights: ask cr1tbit before reusing the design.