Knowledge Base

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

Knowledge Base

Expander Pi (Discontinued)

Information for Expander Pi expansion board Legacy Product

Expander Pi allows you to connect your Raspberry Pi to switches, lights, sensors, and many other devices giving your Raspberry Pi a way to communicate with the outside world.

The Expander Pi plugs into the GPIO port on your Raspberry Pi and can be securely fitted to the Raspberry Pi using the optional mounting kit and is powered through the host Raspberry Pi using the GPIO port and extended pins on the GPIO connector allowing you to stack the Expander Pi along with other expansion boards.


  • 16-channel digital input/outputs
  • 8-channel 12-bit resolution analogue input (ADC)
  • 2 channel 12-bit resolution digital to the analogue output (DAC)
  • Real-time Clock (RTC) with CR2032 battery holder.

Using the Expander Pi, you can connect 8 analogue inputs, 2 analogue outputs and 16 digital inputs or outputs to your Raspberry Pi. The Expander Pi also features an onboard Real Time Clock (RTC) to ensure that your Raspberry Pi always has the correct date and time.

A mounting hole is provided to bolt the RTC Pi to your Raspberry Pi securely with our mounting kit (sold separately).

The 16 input and output channels, using the MCP23017 16-bit I/O expander from Microchip Technology Inc, can be independently configured as either inputs or outputs with a maximum input of 5 volts on each channel.

The 2 digital to analogue converter is a 12-bit resolution using Microchip MCP4822 dual channel 12-bit DAC with an internal voltage reference.

The 8 analogue to digital converter is a 12-bit resolution using a Microchip MCP3208 8-Channel 12-Bit A/D Converters with SPI Serial Interface with a maximum sample rate of 100 ksps and includes a 4.096 volt precision voltage reference. A separate Vref pin allows you to use an external voltage reference. If you use an external voltage reference, disconnect the onboard voltage reference IC by removing the solder bridge from jumper J1. Failing to remove the J1 solder bridge when using an external reference could cause damage to the onboard voltage reference or your external reference circuitry.

The Real Time Clock uses the DS1307 RTC real-time clock and a CR2032 battery to maintain the date and time when the main system power is unavailable.

Warning: Do not connect the Expander Pi to your Raspberry Pi when the power is connected without a CR2032 battery installed. This can cause damage to the DS1307 RTC chip.

The Expander Pi uses a CR2032 button battery (battery not included).

Due to the use of the SPI bus and fixed addresses on the I2C bus, the Expander Pi can not be stacked alongside the ADC DAC Pi or RTC Pi.  Only one Expander Pi can be used on a Raspberry Pi.

The I2C address for the MCP23017 digital I/O chip is set to 0x20; if you use the Expander Pi with an IO Pi, you must ensure that the addresses for the IO Pi chips are not set to 0x20.

A screw terminal power connector is included on the Expander Pi allowing you to use an external 5V supply to power the board. A 500mA polyfuse sits between the power connector and the Raspberry Pi 5V pin to provide protection when powering the Raspberry Pi from the power connector on the Expander Pi.

Suppose you want to power the Raspberry Pi from the USB connector and use a separate supply for powering the Expander Pi. In that case, we recommend removing the solder bridge J3 on the Expander Pi and disconnecting it from the Raspberry Pi 5V pins.

Compatibility Chart

Model Compatible
Model A Yes
Model B Yes
Model A+ Yes
Model B+ Yes
Model 2B Yes
Pi Zero Yes



The Expander Pi uses the SPI port, and I2C addresses 0x20 and 0x68; please ensure that any additional expansion boards do not have an address conflict with these I2C addresses. External I2C pull-up resistors may be used on additional expansion boards, but the total resistance must not be less than 5K ohms.

Please follow our tutorials for enabling I2C and SPI before using the Expander Pi on your Raspberry Pi.

The Expander Pi can be stacked with the following boards up to a maximum of 2 additional expansion boards on a single Raspberry Pi.

  • ADC Pi / Plus (i2c address needs to be changed using selection jumpers)
  • Delta Sigma Pi (i2c address needs to be changed using selection jumpers)
  • IO Pi / Plus (i2c address needs to be changed using selection jumpers)
  • Servo Pi
  • Serial Pi / Plus

The Expander Pi is not compatible with the following boards:

  • 1-Wire Pi / Plus
  • ADC DAC Pi
  • Com Pi
  • RTC Pi / Plus
  • RTC Alarm Pi

Ratings & Specifications

IO Input Ratings & Specifications

  • Vdd (5V input pin when isolation jumper is unsoldered): 4.5V - 5.5V
  • All digital inputs and outputs: 0 - Vdd
  • Current at I/O Pin (sourced or sunk): 25 mA
  • Maximum current on a single I/O Bank (1 MCP23017 device): 125 mA

ADC Input Ratings & Specifications

  • 12 Bit Resolution
  • Maximum ADC Input Voltage: 4.096 volts
  • Analogue inputs programmable as single-ended or pseudo-differential pairs
  • On-chip sample and hold
  • All inputs and outputs w.r.t. VSS: -0.6V to VDD +0.6V

DAC Output Ratings & Specifications

  • 12 Bit Resolution
  • Maximum output voltage: 2.048 volts
  • Maximum output current: 25 mA


Click to download the schematic PDF.

Sample Code

We have Python libraries available for this expansion board. You can download all of the libraries from GitHub at:

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

git clone

Was this article helpful? Yes No

Please tell us how we can improve this article:

Created 13/06/2016 | Last Updated: 01/01/2024

Related Expansion Boards

Order a Expander Pi Photo of Expander Pi
Expander Pi

Analogue, Digital and RTC Expansion Interface for the Raspberry Pi

£27.59 Ex VAT: £22.99
Add to Basket

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