Expander Pi

£22.99 each (including VAT: £27.59)

Expander Pi is a versitile digital and analogue expansion board.  It allows you to connect your Raspberry Pi to switches, lights, sensors, and many other devices giving you a way to communicate with the outside world.

The Expander Pi plugs onto the GPIO port on your Raspberry Pi and can be securely fitted to the Raspberry Pi using the optional mounting kit. It is powered through the host Raspberry Pi using the GPIO port or via the on-board power connetor.  Extended pins on the GPIO connector allowing you to stack the Expander Pi along with other expansion boards.

Features:

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

Introduction:

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

Mounting holes are provided so you can securely bolt the Expander Pi to your Raspberry Pi with our mounting kit (sold separately).

The 16 input and output channels, using 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 channel 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.  Please note the maximum sample rate is dependant on the programming language used and the CPU speed and usage.  A seperate Vref pin is included allowing you to use an external voltage reference.  If you do choose to use an external voltage reference you will need to 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 not available.

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 along side the ADCDAC Pi Zero or RTC Pi Plus/Zero.  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 Plus/Zero you will need to ensure that the addresses for the IO Pi chips are not set to 0x20.

If you want to power the Raspberry Pi from the USB connector and use a seperate supply for powering the Expander Pi we recommend that you remove the solder bridge "JUMPER" next to GPIO pin 1 on the Expander Pi, disconnecting it from the Raspberry Pi 5V pins.

Compatibility Chart

Model Status
Raspberry Pi Model A No
Raspberry Pi Model B No
Raspberry Pi 1 Model A+ Yes
Raspberry Pi 1 Model B+ Yes
Raspberry Pi 2 Model B Yes
Raspberry Pi 3 Model B Yes
Raspberry Pi Zero Yes
Raspberry Pi Zero W Yes

Datasheets

IO - Microchip MCP23017
ADC - Microchip MCP3208
DAC - Microchip MCP4822
RTC - Maxim DS1307

Compatability

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.  

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.

  • 1-Wire Plus / Zero
  • ADC Plus / Zero (i2c address needs to be changed using selection jumpers)
  • ADC Differential Pi (i2c address needs to be changed using selection jumpers)
  • IO Pi Plus / Zero (i2c address needs to be changed using selection jumpers)
  • Servo Pi Zero
  • Serial Plus / Zero

The Expander Pi is not compatible with the following boards:

  • ADC DAC Pi Zero
  • RTC Pi Plus / Zero

Ratings & Specifications

Digital 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 all I/O pins combined: 125 mA

ADC Input Ratings & Specifications

  • 12 Bit Resolution
  • Maximum ADC Input Voltage when using on-board voltage reference: 4.096V
  • Maximum ADC Input Voltage when using an external voltage reference: 5V
  • Analogue inputs programmable as single-ended or pseudo-differential pairs
  • All inputs and outputs w.r.t. VSS: -0.6V to VDD +0.6V

DAC Output Ratings & Specifications

  • 12 Bit Resolution
  • Maximum output voltage at Gain 1: 2.048V
  • Maximum output voltage at Gain 2: 4.096V
  • Maximum output current: 25 mA

Assembly Instructions

The Expander Pi is supplied with the 40 pin GPIO connector and the CR2032 battery connector unsoldered. 

Before using the Expander Pi you will need to solder both connectors onto the PCB.  We suggest soldering the 40 pin GPIO connector first and then the battery connector.  Soldering the battery connector first will make it difficult to access some of the pins on the GPIO connector.

Watch the assembly video, best viewed in 1080p high quality mode:

 

PCB Header Assembly Jig

Download and print our PCB Header Assembly Jig to hold your circuit board when soldering the header pins.

Use

 

Schematic

Click to download
Click to download schematic PDF.

Mechanical Drawings

Mechanical Drawing

Click image to enlarge

Code Libraries and Demos

We have Python, C, C++, Node.js and Windows 10 IOT libraries available for this expansion board.  You can download all of the libraries from github at:

https://github.com/abelectronicsuk/ or click on the logos below for your selected programming language,

Download Python 2 and 3 code samples

Node.js code samples

C code samples C++ code samples

Download Windows 10 IOT code samples

 

Tutorials

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

Expander Pi Tutorials

Legacy Expander Pi Versions

See our KB article for previous versions of this board.

Important Information

This development board/kit is intended for use for ENGINEERING DEVELOPMENT, DEMONSTRATION, OR EVALUATION PURPOSES ONLY and is not considered by abelectronics.co.uk to be a finished end-product fit for general consumer use. As such, the goods being provided are not intended to be complete in terms of required design-, marketing-, and/or manufacturing-related protective considerations, including product safety and environmental measures typically found in end products that incorporate such semiconductor components or circuit boards. Persons handling the product(s) must have electronics training and observe good engineering practice standards. This development board/kit does not fall within the scope of the European Union directives regarding electromagnetic compatibility, restricted substances (RoHS), recycling (WEEE), FCC, CE or UL, and therefore may not meet the technical requirements of these directives or other related directives. Note: documents in Portable Document Format (PDF) require Adobe Acrobat Reader 5.0 or higher to view, download Adobe Acrobat Reader or other PDF reading software for your computer or mobile device.

Shop

Support

Products added to basket

0 Items

Total (inc shipping) £0.00

CheckoutView Basket

Free Shipping on all orders over £30

Click to contact us.
X

Have any Questions?

Send us any questions about this page or product and we will reply within 24 hours.

Submit your Message

X

Have any Questions?

Thank you for contacting us.

We will respond to your enquiry in the next 24 hours.

You can find answers to many questions and additional product support in our Knowledge Base and the Community Forum.