Features
- 32 GPIO pins
- Control via the Raspberry Pi I2C port
- Python, MicroPython, Home Assistant, C, C++, Node.js and .Net Core software libraries
- Stack up to 4 IO Pi Plus boards on a single Raspberry Pi
- Solder jumper selectable I2C addresses
- External 5V Input with an isolation solder jumper
- Based on the MCP23017 from Microchip Technologies Inc
- Configurable interrupt output pins - Configurable as active-high, active-low or open-drain
- Polarity Inversion register to configure the polarity of the input port data
The IO Pi Plus is an expansion module designed to enhance your Raspberry Pi and other similar single-board computers with an additional 32 GPIO pins*. This expansion is powered by two MCP23017 16-bit I/O expanders from Microchip, enabling the addition of up to 32 digital connections to your Raspberry Pi setup.
This module can draw power directly from the Raspberry Pi through the 40-pin GPIO connector or from an external power source. It also features extended GPIO pins, allowing for the stacking of multiple IO Pi Plus boards alongside other expansion modules.
The onboard solder jumpers for I2C address selection make it highly flexible; each MCP23017 expander can be set to one of 8 addresses, permitting the use of up to 4 IO Pi Plus boards together, thereby extending the total GPIO availability to 128 pins. This capacity can be further increased by integrating our I2C Switch expansion board.
For those requiring a separate high-current power source, the IO Pi Plus provides a 5V port that can be isolated from the Raspberry Pi with a solder jumper marked "Link" on the board, alleviating the power demand on the Raspberry Pi. This feature is particularly useful when multiple IO Pi Plus boards are connected. Compatible with our 5mm screw terminals for the 5V input.
For external operation from the Raspberry Pi, connections for 3.3V (Pin 1), SDA (Pin 3), SCL (Pin 5), Ground (Pin 6), and the 5V pin (if not using an external power supply) must be made from the Raspberry Pi GPIO header to the corresponding pins on the IO Pi Plus.
How to use:
Our knowledge base has a series of step-by-step guides that will guide you through setting up and using your IO Pi Plus.
IO Pi Plus Tutorials
* Microchip recommends that pin 8 (GPA7) and pin 16 (GPB7) are used as outputs only. This change was made for revision D MCP23017 chips manufactured after June 2020. See the MCP23017 datasheet for more information.
Legacy IO Pi Versions
See our KB article for previous versions of this board.
Code Libraries and Demos
This expansion board has Python, MicroPython, C, C++, Node.JS, .Net Core, Arduino and Home Assistant libraries available to get you started with your next project. 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.
Compatibility
We have tested the IO Pi Plus on the following platforms.
Model |
Status |
Raspberry Pi Pico series |
|
Raspberry Pi Model A / B |
|
Raspberry Pi 1 Model A+ / B+ |
|
Raspberry Pi 2 Model B |
|
Raspberry Pi 3 Model A+ / B / B+ |
|
Raspberry Pi 4 Model B |
|
Raspberry Pi 5 |
|
Raspberry Pi Zero |
|
Raspberry Pi Zero W / Zero 2 W |
|
Raspberry Pi Compute Module 4 IO Board |
|
Raspberry Pi 400 |
|
Orange Pi |
|
Asus Tinker Board |
|
Odroid |
|