The Mirror That Paints with Light
The Living Mirror uses steerable mirrors to reflect sunlight, turning controlled reflections into animated images.
Whether it is an OLED monitor, an LED matrix, or a vintage VFD, displays generally work by emitting light in one way or another. However, the Living Mirror, created by Time Sink Studio, is different. Rather than directly emitting light to produce images, it reflects light from the sun or other sources. By precisely controlling where each “pixel” shines that reflected light, it creates low-resolution images.
The Living Mirror is made up of a modular array of small, individually steerable mirror tiles. Each tile acts as a two-axis pixel, capable of tilting and panning to redirect incoming light toward a specific point in space. When many of these mirrors move together, the reflected spots combine to form recognizable shapes, patterns, and even animated imagery projected onto nearby surfaces. Because it relies on reflected light rather than built-in illumination, almost any light source can be used, from sunlight and spotlights to lasers.
Each 50 mm by 50 mm glass mirror is mounted on a custom two-axis actuator assembly built from 3D-printed joints and ball-socket mechanisms. Motion is provided by inexpensive bipolar stepper motors with a short linear travel and thousands of steps of resolution. Groups of four mirrors share custom control boards populated with DRV8825 stepper drivers, while shift registers handle direction and sleep control to keep wiring manageable as the array grows.
An ESP32 microcontroller serves as the brain of the system, generating the motor control signals, managing Wi-Fi connectivity, and communicating over MQTT. The firmware runs under FreeRTOS to ensure deterministic motor control, and it supports over-the-air updates. For off-grid operation, the entire setup can run from a 12-volt supply, whether that comes from an AC adapter or a battery pack, with a portable router providing a local wireless network.
A web-based control interface allows users to design patterns and animations visually. Camera-based calibration, implemented with OpenCV in the browser, automatically detects reflected light spots and builds correction tables for each mirror. This closes the loop between motor commands and optical output, enabling surprisingly precise control.
There are already plans in place to scale up the current 36-mirror prototype to 64 mirrors or more. Time Sink Studio is also considering adding interactive features like pose or face tracking. Check out the project write-up for all the details.