For this project, I worked with a couple friends to make an interactive display call the Basilisk in the hallway of my dorm. The concept was to have a large amount of dragon-like eyes watch you as you move along the hallway.
The eyes watching you
We started by getting the 64x64 matrices of RGB LEDs, and an ESP32 microcontroller and thermal camera for each eye. The first test just involved setting up a single matrix to a power supply and seeing if we could get an image to appear on it using the thermal camera.
Next, we made a custom PCB for the control of each panel. It takes 12V from a wall power supply and steps it down to 5V and 3.3V for the LED drivers and the ESP32 respectively. The board is designed to fit flush against the back of the panel.
PCB layout for each eye
For the software, we first wrote some test code in python using the pygame library to get a sense of how we wanted the eye to move. There are 31 frames for the eye and the skin around it. We got the eye to blink by cycling through the frames for the skin, but making the movement itself was more complicated. We ended up making a algorithm to stretch the picture in the direction of movement rather than using the frames for the eye in different positions in order to make it seem more 3D.
Different pixelart frames for the eyes
After programming, we started on assembly. The surface mount components were done with a pick and place machine in the MIT Media Lab makerspace, and the rest of the connections and assembly was done painstakingly by hand.
Soldering power and ground connections to each board
The last step was mounting everything into the hallway. We ran wires from a room through the drop ceiling and down to each board and attached them to the wall with command strips.
The eyes mounted on the wall and in the dark
Here is what it looks like with the eyes watching you as you walk past: