Main Content

In my last tutorial, I talked about the TCA9548A MUX which can be used to add at the max of 64 I2C or IC sensors to your Arduino/ESP8266/ESP32.
In this tutorial, I am going to talk about the PCF8574 8-bit GPIO Port Extender. It is one of the many GPIO extenders available in the market.
This tiny little board becomes a life saver When you run out of pins on your Arduino. This “GPIO (General Purpose Input Output) pin extender” provides an additional 8 pins (P0 ~ P7) which can be used to ‘output a signal’ or ‘read a signal as an input’.
These modules run on the I2C bus, and if daisy-chained you can connect upto 8 of these devices in a project. Each device will give us an additional 8-bits of GPIO enabling 64 GPIOs in total.
These ICs are ridiculously cheap and can be bought easily from eBay or AliExpress. If you don’t want to worry about the wiring and just want to keep your project really “simple”, then you can buy these fully assembled breakout boards. You just need to hook them up to the I2C bus and you are all ready to go.”

Link to article