Infinty Mirror Hitbox
I built the infinity mirror using acrylic for the frame, a 7.4V power supply, buck converter, 72 WS2812B LEDs, and mirror coating. A friend of mine owns a CNC machine and was happy to lend a hand. He actually made the CNC machine himself, which is super cool.
Because the clear acrylic used for the top was so thick, the snap fits on the buttons wouldn’t work. We considered friction-fitting them, but counterboring the holes was the right thing to do. This way, the buttons wouldn’t pop out accidentally.
For the brains of the stick, I went with the Raspberry Pi Pico. It’s tiny, has plenty of GPIO pins for buttons, and costs just five bucks. It’s so cheap, you’re losing money by not buying one.
It also defaults to a 1 ms / 1000 Hz polling rate, meaning the host checks for inputs 1,000 times per second. For comparison, an Xbox controller polls at just 125 Hz.
To put the numbers into perspective, 125 Hz translates to about 4 ms of input delay on average, while 1000 Hz comes out to just 0.5 ms. That’s the difference between inputs feeling late and inputs feeling instant.
| Mirror coat applied |
For the mirrors, I coated the acrylic surfaces with a thin layer of soapy water, and laid mirror film on top. Then, using a credit card, I squeegeed out the water from underneath. I let the result sit overnight so the moisture-activated adhesive could work its magic.
![]() |
| View with the top off |
I used an LED controller to send custom animations to the lights. Each LED is individually addressable, which allows for sweet animations like chasing and fading. Getting the animations to flow naturally took work - but the result is a controller that feels alive in your hands.






