Project 06 Los Angeles, 2025

Panel Mirror

Type Kinetic Installation
Class VS Offline
Instructor Kristy Balliet
Medium 64 panels, steppers, camera
Scroll to explore

Overview

A kinetic self-portrait machine. A camera reads the viewer's face in real time, reduces it to a binary grid of 64 pixels, and hands each value to a stepper motor hidden behind a panel.

Array
8 × 8 — 64 mechanically actuated panels
Actuation
One independent stepper motor per panel
Surface
Lenticular lenses shifting white ↔ black
Controller
4 Arduino boards networked to a Raspberry Pi
Input
Onboard micro-camera, live feed
Frame
Steel, hand-built

Interactive Simulation

The Wall
Watches Back

Live demo — move your cursor across the panel field

This is a browser simulation of the built machine. Each of the 64 panels tilts on its horizontal axis, catching light exactly the way the lenticular tiles do on the physical mirror. Where the real installation tracks a face through its onboard camera, this simulation tracks your cursor — the panels nearest to you rotate open, and the red service light behind the array leaks through the seams.

The result is the same argument at a different scale: a reflection that is abstracted, delayed, and mechanical rather than optical.

Diagram Abstracted Reflection

Waving At
The Wall

A viewer waves; the camera reads the gesture; a half-beat later, 64 panels answer. The reflection is never smooth — it snaps from state to state at the speed of the motors, always one step behind the body it mirrors.

01 SENSING 02 DECISION 03 ACTUATION CAMERA VIEWER 8 × 8 MECHANICAL REFLECTION

Concept Mechanical Reflection

"The result is a living, mechanical reflection — abstracted, delayed, and entirely built by hand."

The project asks what a mirror is when its resolution collapses to 64 pixels. The viewer is present in the surface, but only as a coarse, shifting figure — recognition happens through movement rather than likeness. The machine's latency, the audible steppers, and the visible seams are not defects; they are the subject.

System

Sensing,
Decision,
Actuation

A camera feed is downsampled to an 8 × 8 binary image. A Raspberry Pi distributes the frame to four networked Arduino boards, each managing sixteen independent stepper channels. Every panel then rotates to its commanded state, and the lenticular surface shifts between white and black as it turns.

01 Sensing — onboard micro-camera reads the viewer in real time
02 Decision — the frame is reduced to a 64-pixel binary grid
03 Actuation — 64 stepper motors rotate the panels to match
04 ? — the viewer adjusts, and the loop begins again
Controller array diagram — four Arduino boards networked to a Raspberry Pi, each managing 16 stepper motor outputs

The Machine

Offline
State

The mirror at rest, panels in neutral position, awaiting viewer proximity. Behind the tile field, the drive electronics sit in a red-lit service bay — 64 motor channels wired by hand across the steel frame.

Every component is visible from the side: the machine does not hide that it is a machine.

Mechanical Mirror front view, offline state — 64 lenticular tile panels in a steel frame with red-lit electronics bay behind
Panel field axonometric 8 × 8 actuated grid Fig. 01

Process PCB Assembly

Built
By Hand

Manual wiring of the stepper driver modules across the 64-channel grid. Four driver boards, one power supply, and several hundred hand-routed connections.

PCB assembly — stepper driver modules laid out on the workbench
PCB assembly — networked driver boards with power supply
PCB assembly — wiring the 64-channel motor grid
PCB assembly — manual wiring across the panel array

Precedents

Reflection,
Fragmented

Precedent — reflective glass cladding acting as an urban mirror

Reflective cladding as an urban mirror — the building as a surface of return.

Precedent — cubist fragmentation as a model for pixelated representation

Cubist fragmentation as a model for pixelated, abstracted representation.

VS Offline Kinetic Physical Computing Arduino Fabrication Interactive

Next Project

Civic
Quarry