40 GPIO I2C expander with the PCA9698

There are lots of MCUs with many GPIOs, but apparently, they’re never enough. Wanna 40 more?

3D view 40GPIO PCA9698 I2C port expander

40 more GPIOs might be a very welcome addition to your next system design with a low-end MCU or with a Raspberry Pi-based system since, as to date, there are not so many GPIOs in Raspberry Foundation’s boards (if you let alone the Compute module Expansion board for industrial applications).

PCA9698 40GPIO I2C expander schematic
Schematic of the PCA9698 40 GPIO I2C Port Expander: a few resistors to configure I2C address, handle RESET and OE signals + 2 Caps for decoupling

The IC we’re taking advantage of on this board is the PCA9698 from NXP, an advanced IO port expander that can be fully controlled with any I2C capable microcontroller and can be configured to operate its pins either as open-collector or totem-pole (Datasheet page 13 of 48).

Open Collector (right) and Totem pole configuration (Left). Please notice that totem pole cannot be configured as high impedance, it’s either high or low!

Be aware that this configuration cannot change any single pin behavior without affecting others (actually there’s a little trick to handle some of them in pairs), it changes the whole port into which your desired pin is placed, thus in case you want to operate with both totem-pole and open-collector GPIOs, be sure to use pins assigned to different banks (meaning different initial number on this PCB).

Top Assembly view and components placement for PCA9698 Fanout board - Evaluation board
Assembly drawing of the PCA9698 board (can be used as a small evaluation board).



Note: by clicking the download link you’ll be shown a 5-second advertisement, that’s the only thing helping this website to stay online while offering free of charge content.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.