An I2C Illuminated Button Matrix

LED matrixes are generally output devices — though we’ve seen one used as a part of a very clever scanner here. If you’d like a 4x4…

Jeremy Cook
5 years ago

LED matrices are generally output devices — though we’ve seen one used as a part of a very clever scanner here. If you’d like a 4x4 display that also takes input in the form of buttons for each one, be sure to check out this Illuminated Button Matrix by David Johnson-Davies, which uses an ATtiny88 for control and communicates via an I2C interface.

The 16 buttons are all directly connected to inputs on the microcontroller, and eight outputs trigger the 16 LEDs in a matrix setup, where one row of LEDs is triggered at a time. Remaining outputs are dedicated to the SDC and SCL lines of the I2C interface, along with an interrupt pin that fires when a buttons state switches from off to on or vice versa. Conveniently, power to the unit can be supplied at 5V or 3.3V, meaning it can work with everything from an Arduino Uno to an Arduino Zero and the plethora of boards in between.

Possible applications for the device range from a musical instrument, perhaps playing cords with combinations of buttons; to part of a simple sequencer; or to gaming, where the display is also the input method. Puzzle games called Tacoyaki+ and Tacoyaki are included in this example Arduino program for use with the light-button matrix.

Jeremy Cook
Engineer, maker of random contraptions, love learning about tech. Write for various publications, including Hackster!
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles