RLX COMPONENTS s.r.o. , Electronic Components Distributor.
RLX COMPONENTS s.r.o. , Electronic Components Distributor.
Adafruit AW9523 GPIO Expander and LED Driver Breakout - STEMMA QT / Qwiic (AF-4886)
Expand your project possibilities, with the Adafruit AW9523 GPIO Expander and LED Driver Breakout - a cute and powerful I2C expander with a lot of tricks up its sleeve.
GPIO expanders work like this: you have a board with some number of GPIO but not enough for your project - maybe you need more buttons or LEDs. You could upgrade to a board with massive number of GPIO like the Grand Central, or you could pop on one of these boards. Connect it over I2C and then you can send/receive I2C commands to control the GPIO pins to write and read them. It's going to be slower than direct GPIO access, but maybe that doesn't matter if it takes a millisecond instead of a microsecond. You only need the two I2C pins, and you can even share the I2C port with other sensors and devices. Heck, you can even add more expanders for massive I/O control!
The AW9523 is a twist on the common I2C expander:
The lack of internally-configurable pull's is a bit of a bummer, but we think the expander more than makes up for it with the constant-current LED drive. If you're using an expander to add lots of controllable LEDs, this board will make it very easy. Since its constant-current, you don'tneed resistors in line with each LED (although it won't hurt if you do): simply connect the LED anode to one of the many VIN pads, then connect the cathode to the GPIO pin.
Of course, you can control any buttons or other I/O with the pins - we just think this board is particularly suited to LED driving. There's also an interrupt output, you can enable the pin-change IRQ for any pins so you can be notified when its time to read the I/O states.
One oddity about this chip is the default I2C address determines the initial boot-state of the pins. Our libraries immediately soft-reset and configure all the pins to inputs and push-pull so you can expect the same behavior no matter what the I2C address is. However, we recommend you check the datasheet Table 1 to make sure this doesn't affect your hardware.
We've written both Arduino and CircuitPython/Python libraries for the AW9523, so you can get started whether you have an Arduino-compatible UNO or a Raspberry Pi 4 - or anything in between.
AW9523 Features: