IO Pi Zero

£8.49 each (including VAT: £10.19)

Add a Mounting Kit Four Pack
for only £3.49 each ex vat
Order  Mounting kit to use on our Raspberry Pi + and 2 boards
Add a Screw Terminals 2 pin 5mm
for only £0.79 each ex vat
Order  Screw Terminals 5mm Pitch 2 pin
Add a 40 Pin Single Row Header
for only £0.55 each ex vat
Order  40 Pin 40 x 1 Header suitable for the Pi Zero

Features

  • 16 Digital Inputs/Outputs
  • Control via the Raspberry Pi I2C port
  • Stack up to 8 IO Pi boards on a single Raspberry Pi
  • Solder pad selectable I2C addresses
  • External 5V Input with isolation pad
  • Based on the MCP23017 from Microchip Technologies Inc
  • Configurable interrupt output pins - Configurable as active-high, active-low or open-drain
  • INTA and INTB can be configured to operate independently or together
  • Configurable interrupt source  - Interrupt-on-change from configured register defaults  or pin changes
  • Polarity Inversion register to configure the polarity of the input port data

Introduction:

The IO Pi Zero is a 16 channel digital expansion board designed for use on the Raspberry Pi Zero. The board is based around the MCP23017 16-bit I/O expander from Microchip Technology Inc. A MCP23017 expander is included on the board allowing you to connect up to 16 digital inputs or outputs to the Raspberry Pi.  The IO Pi Zero Expander is powered through the host Raspberry Pi using the GPIO port and extended pins on the GPIO connector allow you to stack the IO Pi Zero along with other expansion boards.

The I2C address bits are selectable using the on-board jumpers. The MCP23017 supports up to 8 different I2C addresses so with one MCP23017 device on each IO Pi Zero you can stack up to 8 IO Pi Zero boards on a single Raspberry Pi giving a maximum of 128 I/O ports.

The IO Pi includes a 5V port that can be isolated from the Raspberry Pi via an isolation solder jumper so you can use a seperate high current power supply to power the IO Pi reducing the load on the Raspberry Pi. Use of an external supply is recommended if you plan on connecting more than one IO Pi to your Raspberry Pi.

I2C Address Selection

The MCP23017 contains three address select pins which can be tied to Vss or Vdd.  This gives 8 possible I2C addresses for each chip.  The IO Pi Zero contains one MCP23017 chip so you can stack up to 8 IO Pi boards on a single Raspberry Pi.  To simplify address selection on the IO Pi we have included a set of address selection pads which can be configured by applying a small solder bridge across the required pads. The table below show the recommended configurations for your IO Pi and the associated I2C addresses.

Note:
Disconnect the IO Pi from the Raspberry Pi before changing the address pins.  The address pins are tied to GND (low) via a 10K resistor so the jumper is used to tie a pin to Vcc (high).

Default Configuration (IC1 = 0x20)

2 1 0 Address
      0x20
    0x21
    0x22
  0x23
    0x24
  0x25
  0x26
0x27

 

Compatibility Chart

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
ODroid C1 Yes
ODroid C2 Yes

Input Ratings & Specifications

Vdd (5V input pin when isolation jumper is removed): 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

Installation

To install the IO Pi simply press the 40 pin connector down onto the Raspberry Pi GPIO pins with the board sat over the top (or below) the Raspberry Pi.

If you are installing more than one IO Pi on a single Raspberry Pi board then you will need to configure the address select jumpers for each IO Pi as shown.

Unsolder the isolation jumper when connecting an external power supply to the 5V port.

Schematic

Click to download
Click to download schematic PDF.

Mechanical Drawings

Mechanical Drawing

Click image to enlarge

Sample Code

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

https://github.com/abelectronicsuk/

Download the Arduino libraries from: https://github.com/abelectronicsuk/ABElectronics_Arduino_Libraries

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

git clone https://github.com/abelectronicsuk/ABElectronics_C_Libraries.git

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

git clone https://github.com/abelectronicsuk/ABElectronics_Python_Libraries.git

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

git clone https://github.com/abelectronicsuk/ABElectronics_Python3_Libraries.git

Download the Windows 10 IOT libraries from: https://github.com/abelectronicsuk/ABElectronics_Win10IOT_Libraries/

Download Python 2 and 3 code samples

Download Arduino code samples

Tutorials

We have several tutorials avaiable for the IO Pi and IO Pi Plus in our Knowledge Base.

IO Pi Plus Tutorials

Assembly Instructions

The IO Pi Zero is supplied with the 40 pin GPIO connector unsoldered.

We supply the IO Pi Zero this way because the Raspberry Pi Zero is also supplied without a GPIO header and the IO Pi Zero could therefore be fitted both above or below the Raspberry Pi Zero.

Before using the IO Pi Zero you will need to solder the 40 pin GPIO connectors onto the PCB.  

PCB Header Assembly Jig

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

Use

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.

Shop

Support

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.