Knowledge Base

The AB Electronics UK Knowledge Base provides support solutions, tutorials and troubleshooting guides.

Knowledge Base

ADC Pi (Discontinued)

ADC Pi V1 and V2 expansion boards

ADC Pi on a white background

This item has been replaced with the ADC Pi 3.0

Go to the ADC Pi

The ADC Pi is an 8-channel 17-bit analogue to digital converter designed to work with the Raspberry Pi platform. The ADC Pi is based on two Microchip MCP3424 A/D converters, each containing 4 analogue inputs with up to 18-bit resolution. The MCP3424 is a delta-sigma A/D converter with low noise differential inputs.


  • 8 x 17-bit 0 to 5V Single Ended Inputs
  • Control via the Raspberry Pi I2C port
  • Stack up to 4 ADC Pi V2 boards on a single Raspberry Pi
  • Jumper selectable I2C addresses
  • Buffered 5V I2C port
  • Based on the MCP3424 from Microchip Technologies Inc
  • Single Ended full-scale range of 5.0V
  • On-board 2.048V reference voltage (Accuracy  ± 0.05%, Drift: 15 ppm/°C)
  • On-Board Programmable Gain Amplifier (PGA): Gains of 1, 2, 4 or 8
  • Programmable Data Rate Options:
       - 3.75 SPS (17 bits)
       - 15 SPS (15 bits)
       - 60 SPS (13 bits)
       - 240 SPS (11 bits)
  • One-Shot or Continuous Conversion Options


The ADC Pi is pin-compatible with the Raspberry Pi model B+.

We designed the ADC Pi to work as a single-ended A/D converter using the internal 2.048V reference voltage with the -V pins tied to the ground. A voltage divider on the ADC Pi board brings the input voltage range to a much more useful 0 – 5.06V. In this configuration, the sample size is 17 bits for each channel.

The ADC Pi is powered through the host Raspberry Pi using the GPIO port, and extended pins on the GPIO connector allow you to stack the ADC Pi along with other expansion boards.

The two MCP3424 A/D converters communicate via i2c to the host Raspberry Pi giving you eight analogue inputs. A logic level converter is included on the ADC Pi board, giving you a buffered 5V I2C port making it easy to add other I2C devices which operate at 5 volts without damaging the Raspberry Pi 3.3 volt I2C port. The I2C buffer uses N-channel MOSFETs with a maximum drain current of 100mA.

Datasheets for the MCP3424 can be found on the technical information tab.

The I2C address bits are selectable using the onboard jumpers. The MCP3424 supports up to 8 different I2C addresses, so with two A/D converters on each ADC Pi, you can stack up to 4 ADC Pi boards on a single Raspberry Pi, giving you 32 ADC inputs.

The MCP3424 contains an onboard 2.048V reference voltage with an input range of ±2.048V differentially (full-scale range of 4.096V/PGA). A programmable Gain Amplifier gives the user a selectable gain of x1, x2, x4 or x8 before the analogue to digital conversion occurs.

The data rate for analogue to digital conversions is 3.75 (17-bit), 15 (15-bit), 60 (13-bit) or 240 (11-bit) samples per second. Data rate and resolution can be configured within the software using the I2C interface.

Unused inputs should be tied to ground.

I2C Address Selection

The MCP3424 analogue to digital converter contains two address select pins, which can be tied to Vss, Vdd or left floating. This gives 8 possible I2C addresses for each chip. The ADC Pi V2 contains two MCP3424 chips so that you can stack up to 4 ADC Pi V2 boards on a single Raspberry Pi. To simplify address selection on the ADC Pi V2, we have included a set of address selection pins which can be configured using the included jumpers. The illustrations below show the four recommended configurations for your ADC Pi V2 and the associated I2C addresses.

Disconnect the ADC Pi V2 from the Raspberry Pi before changing the address pins. You may need to short the 5V and ground with a resistor to discharge the capacitors for the new addresses to be recognised.

Address selection pins

I2C Address Table

Adr 0 Adr 1 I2C Address
Low or Float Low or Float 0x68
Low Float 0x69
Low High 0x6A
Float Low 0x6B
High Low 0x6C
High Float 0x6D
High High 0x6E
Float High 0x6F


Do not under any circumstances connect the two centre pins together. This will create a direct short between the 5V and ground pins and damage or destroy your Raspberry Pi and ADC Pi Plus board.

Address warning

Recommended Address Configurations

Configuration 1:

Analogue Channels 1-4 = I2C Address: 0x68
Analogue Channels 5-8 = I2C Address: 0x69

Address Configuration 1

Configuration 2:

Analogue Channels 1-4 = I2C Address: 0x6A
Analogue Channels 5-8 = I2C Address: 0x6B

Address Configuration 2

Configuration 3:

Analogue Channels 1-4 = I2C Address: 0x6C
Analogue Channels 5-8 = I2C Address: 0x6D

Address Configuration 3

Configuration 4:

Analogue Channels 1-4 = I2C Address: 0x6E
Analogue Channels 5-8 = I2C Address: 0x6F

Address Configuration 4



Input Ratings & Specifications

Item Rating
Vdd (5V pin on I2C bus) 5.0V
All AD inputs and outputs VSS–0.4V to VDD+0.4 V
Current at Input Pins ±2 mA
I2C SDA/SCL voltage 5.0 V
I2C port current 100 mA

Sample Code

Arduino, C, Windows 10 IOT and Python libraries are available for this expansion board. You can download all of the libraries from GitHub at:

Download the Arduino libraries from:

To download the C libraries to your Raspberry Pi, type in the terminal:

git clone

To download the Python libraries to your Raspberry Pi, type in the terminal:

git clone

Download the Windows 10 IOT libraries from:

Download Python 2 and 3 code samples

Download Arduino code samples


We have a range of tutorials for the ADC Pi in our Knowledge Base

ADC Pi Tutorials

Was this article helpful? Yes No

Please tell us how we can improve this article:

Created 11/05/2016 | Last Updated: 01/01/2024

Related Expansion Boards

Order a ADC Pi Photo of ADC Pi

8 Channel 17-bit Single-Ended Analogue to Digital converter for the Raspberry Pi

£19.19 Ex VAT: £15.99
Add to Cart

Related Articles

ADC Pi (Discontinued)
ADC Pi V1 and V2 expansion boards
Serial Pi (Discontinued)
Serial Pi RS232 Expansion board
Expander Pi (Discontinued)
Information for Expander Pi expansion board Legacy Product
Logic Level Converter (Discontinued)
Information for Logic level converter
RTC Pi (Discontinued)
Product Information for the version one RTC Pi board
ADC DAC Pi (Discontinued)
2 Channel ADC and 2 Channel DAC for the Raspberry Pi
Buffer Pi - Legacy Product
Bi-directional voltage-level translator for the Raspberry Pi
RTC Alarm Pi (Discontinued)
RTC Clock Module with alarm for the Raspberry Pi
Com Pi (Discontinued)
Com Pi for the Raspberry Pi
IO Pi Plus 1.0 (Discontinued)
IO Pi Plus 1.0 Legacy version information
Delta-Sigma Pi (Discontinued)
Delta-Sigma Pi ADC Board
IO Pi (Discontinued)
IO Pi Expansion board
IO Pi Zero (Discontinued)
Legacy product information for the IO Pi Zero
1 Wire Pi (Discontinued)
1 Wire Pi expansion board legacy information
1 Wire Pi Plus 1.0 (Discontinued)
1 Wire Pi Plus 1.0 - Legacy version information