Skip to content
Arduino Library for the MCP23008 (and '9) I2C I/O expander
Find file
Latest commit cda45c7 @driverblock driverblock Add trinket support
Conditional compilation to include TinyWireM


To download, click "Download Source" in the top right corner. Then install as indicated in our tutorial:
in a folder called Adafruit_MCP23008.

This is very much beta, it seems to work fine but its not optimized and doesn't currently suport the interrupt capability of the chip

Currently it can do: setting pin directions, inputs and outputs and turning on/off the pull-up resistors

To use:
Connect pin #1 of the expander to Analog 5 (i2c clock)
Connect pin #2 of the expander to Analog 4 (i2c data)
Connect pins #3, 4 and 5 of the expander to ground (address selection)
Connect pin #6 and 18 of the expander to 5V (power and reset disable)
Connect pin #9 of the expander to ground (common ground)
Pins 10 thru 17 are your input/output pins

Check the datasheet for more info:

Enjoy and send pull requests!
Something went wrong with that request. Please try again.