The phrase “Go big or go home” is clearly not lost on [Adam Haile] and [Dan Ternes] of Maniacal Labs. For years they’ve been thinking of creating a giant LED matrix where each “pixel” doubled as a physical push button. Now that they’ve built up experience working on other LED projects, they finally decided it was time to take the plunge and create their masterpiece: the Bixel.
Creating the Bixel (a portmanteau of button, and pixel) was no small feat. The epic build is documented in an exceptionally detailed write-up on the team’s site, in addition to the time-lapse video included after the break. [Adam] tells us the Bixel took around 100 hours of assembly, and we don’t doubt it. This is truly one of those labors of love which is unlikely to be duplicated, though all of the source files for both the hardware and software are available if you’re feeling brave enough.
The write-up contains a lot of fascinating detail about the design and construction of the Bixel, but perhaps the least surprising of all of them is that the final product ended up being very different from what they originally envisioned. The plan was to simply use lighted arcade buttons in a 16×16 grid, as they were purpose-built for exactly what the guys had in mind. But when they priced them out, the best they could do was $2 a pop. That’s $500 for just the buttons alone, before they even got into the enclosure or electronics. Like any good hackers, [Adam] and [Dan] decided to ditch the ready-made solution and come up with something of their own.
In the end, they cut the individual LEDs out of RGB strips, and soldered them down to their custom designed 500mmx500mm PCB. To the sides of each section of strip are two tactile switches, and above is a “sandwich” made of laser cut acrylic. The sheet closest to the LEDs has a 25mm hole, the top sheet has a 20mm hole, and between them is a circle of acrylic that acts as the “button”. Once it’s all screwed together, the button can’t fall out of the front or move from side to side, but it can be pushed down to contact the tactile switches.
To wire it all up they took a cue from the DIY keyboard scene and used a Teensy, some 595 shift registers, and 256 1N4148 diodes. A Raspberry Pi running their Python framework does the heavy computational lifting, leaving the Teensy to just handle talking to the hardware. Overall it’s a fantastic design to emulate if you’re looking to create large arrays of buttons on the cheap; such as whenever you get around to building that starship simulator.