🔌 Unlock 16x the I/O power — because your projects deserve more pins!
The Waveshare MCP23017 IO Expansion Board leverages I2C control to expand 2 signal pins into 16 configurable I/O pins. Featuring onboard voltage translation, it supports both 3.3V and 5V logic levels, making it ideal for diverse hardware setups. Its configurable I2C address jumpers and dual connector options enable easy stacking and flexible integration, all within a compact, lightweight design.
RAM | DDR3 |
Wireless Type | Infrared |
Brand | waveshare |
Series | MCP23017-E/SP MCP23017 16-Bit I/O Expander with Serial Interface |
Item model number | MCP23017 IO Expansion Board |
Operating System | Linux |
Item Weight | 0.704 ounces |
Package Dimensions | 3.58 x 2.05 x 0.83 inches |
Processor Brand | Waveshare |
Number of Processors | 1 |
Power Source | DC |
Manufacturer | Waveshare |
ASIN | B07P2H1NZG |
Is Discontinued By Manufacturer | No |
Date First Available | October 15, 2018 |
P**A
Worked perfect for large IO expansion
I needed a whole lot of IO ports for my Raspberry. I bought a total of seven of these. This board was super easy to use both for configuring input/output ports. Interrupts are a nice feature, as well as the ability to programmatically pull input port high.Accessible on port x20 - x27 (default), so you can run 8 of these for a total of 64 IO ports.I was able to convert the C examples to Ruby without any fuss.Pro:* Easy to use for IO expansion.* Nice features (IO configuration, pull ups, interrupts)* Great example code (C and Python).Cons:* Hard to mount as there is only a single set of holes in the board (ideally there would have been a hole on each corner).* Soldering the address jumpers (A0/1/2) too a little work
J**N
The perfect expander! The MCP23017 is a must!
What a great little board! I needed these to expand on my raspberry Pi and ended up buying 4 of these and run them all on the i2c bus!They work flawlessly!They are easy to use and tons of libraries out there to work with!Don’t mind the picture… there’s a reason 😅
B**C
Works perfectly
I needed a MCP23017 in a hurry and Amazon got this to me in two days. The board comes with connector wires allowing me to quickly connect it to my TI EK-TM4C1294XL eval board for testing. The I2C interface already comes with 10K pull ups so no external wiring was needed. I was able to read GPIO inputs, control outputs and setup interrupts on input state changes. Everything worked as expected. The only issue (I knew this when I bought it) is another MCP23017 cannot be daisy chained on the I2C bus without soldering on the expansion header. Additional work is needed to change the I2C address as it is hard wired to 0x27 out of the box. Other than that, I'm very happy with my purchase.
H**A
Does the job…NOT good for breadboards/prototyping.
I needed a pre-soldered breakout while I was learning i2c logic with this chip type. The port works great if you have a crimping kit for it…I do not. I was hoping it’d be some standard like grove or qwiic, or at least one I could find an adapter for. I ended up having to use a bizarre combination of duponts and jumper wires to hook it up to my microcontroller. Worst part is the port is on the same side as the pins, so if you want to hook it up to a breadboard…you can’t. The chip type IS very good for expanding to 16 GPIO pins (the address on this one is x027)…and this is the best pre-soldered version I could find…but teaching myself to solder a chip from adafruit turned out to be the much more practical approach.
K**.
Easy to use, fast delivery
The modules arrived in individual bags with pin protectors stored in individual boxes. Very well protected. I ordered these twice and both times the boxes arrived the next day. Prompt service, easy transaction, and protected!I used 4 of the MCP23017 modules to read 32 switches and drive 32 LEDs with an ESP32. Very easy to setup and use. The chips worked perfectly being driven by the ESP32's 3.3V signal levels while I drove the MCP23017's off a 5V USB. Perfect, that is, except that the address line A1 didn't work on the chips I tried. Jumper or no jumper -- the line remained at default. That limits the design to 4 rather than 8 modules in a single I2C setup -- okay in my case. For that reason, I gave 4 stars rather than 5.
M**X
Minimum effort to test your i2c idea
The supplier seems to read your mind. This little board has all you need to test the IO expander firmware with minimum effort: just connect the provided connector to your 0.025 male pins in your host and you are good to go. You can try the IO side with the supplied headers. No solder - no mess. Great product
C**R
Poor design
Should be more breadboard friendly. The connector forces you to place module at the end of the breadboard. This should have been mounted on the other side, so all gpio pins can be plugged in anywhere. Frankly the connector should just be another 6 pins instead of the worthless VCC/GND pins on the module. Then you can put power light on other side as well. The braided wires are super thin gauge. I snipped off the female end of the jumper wires and used breadboard compatible screw terminals. Any ways I made this work, but it's a poor design. Would have been easier too if plug were pins to add other board, but you have to "weld" it for the address?
R**M
could not get this to work
I tried for several hours to get this to communicate with my Arduino. Finally gave up, ordered a different board and that one worked flawless.
Trustpilot
3 weeks ago
3 days ago