RLX COMPONENTS s.r.o. , Electronic Components Distributor.
RLX COMPONENTS s.r.o. , Electronic Components Distributor.
IO Pi Zero (AB Electronics UK) 16 Digital Inputs/Outputs via the Raspberry Pi I2C port
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 separate 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.
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)
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 |
ODroid C1 | Yes |
ODroid C2 | Yes |
Orange Pi | Yes |
Asus Tinker Board | Yes |
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
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.
Click to download schematic PDF.
Click image to enlarge
We have Python, Arduino, 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