Hexagon Infinity Mirror
Summary
I turned an old round mirror into an infinity mirror by building a 7-cell honeycomb cluster of individually-wired infinity mirror hexagons that bolts together and hangs on the mirror face. Each cell is a 3D printed frame with a two-way mirror acrylic front and a ring of WS2812 LEDs, so the original mirror behind it becomes the "infinite" back reflector. A second LED strip wraps the mirror's outer edge for a glowing halo. Fully addressable, driven by an ESP32 running WLED.
Files included
hex_mirror_segment.stl— printable frame for one hex cellhex_mirror_segment.step— CAD source / cutting template for the acrylic hex panelhex_array.step— reference layout for arranging and bolting the 7 hexes into the honeycomb pattern
Bill of Materials
Mirror & LEDs
- 1x large round mirror (the donor mirror being upcycled)
- WS2812B 2020 Ultra-Narrow LED strip, 2.7mm wide, 160 LEDs/m — 5m reel (link)
- WS2812B COB LED strip, 160 LEDs/m — 2m (outer halo ring)
- 80% reflective one-way mirror film (link) or similar
Printed & Cut Parts
- Qty 7 —
hex_mirror_segment.stl, printed in Black PLA, 0.2mm layer height - Qty 7 — hexagon panels cut from 6mm acrylic sheet, using
hex_mirror_segment.stepas the template hex_array.step— reference for the honeycomb layout when joining the 7 frames
Hardware
- M3x8mm bolts — joins adjacent hex frames along their shared edges
- Picture frame wire (+ 2 D-rings or screw eyes) — hangs the assembled cluster on the mirror
Electronics
- I build a custom ESP32-S3 board for this project, but anything with the following sub components will do:
- ESP32-S3 dev board (running WLED)
- 5V 3A power supply
- Level shifter (3.3V → 5V data), recommended for reliable signal on long WS2812 runs
- 22–24AWG wire, connectors of your choice for power/data runs
Tools & Consumables
- 3D printer
- Laser cutter or acrylic-cutting service
- Soldering iron + solder
- Screwdriver / hex driver for M3 bolts
- Hot glue / super glue or E6000 (film application, wire strain relief)
- Wire strippers/cutters
Build Instructions
Print the frames — 7x
hex_mirror_segment.stlin Black PLA, 0.2mm layers. Dry-fit a scrap of LED strip in the channel before committing to a full print run.Cut the acrylic hex panels — Laser-cut 7 hexagons from 6mm acrylic using
hex_mirror_segment.stepas the source file.Apply mirror film — Apply 80% reflective film to one face of each acrylic hexagon, working out bubbles. This makes the panel a two-way mirror.
Wire each hex cell — Cut 2020 WS2812 strip to length for one frame's channel, solder on data/5V/GND leads. Repeat for all 7.
Assemble each cell — Seat the LED strip in the printed channel, then press in the film-side-in acrylic panel to seal the cell.
Bolt the honeycomb together — Using
hex_array.stepas the layout guide, arrange the 7 cells (1 center, 6 surrounding) and join adjacent frames along shared edges with M3x8mm bolts.Chain the wiring — Daisy-chain data cell-to-cell, tie 5V/GND together in parallel across all 7, and bring one data + one power lead out to the controller location.
Hang the cluster on the mirror — Attach picture frame wire (with D-rings/screw eyes) to the back of the honeycomb cluster and hang it centered on the mirror face.
Add the outer halo ring — Run the 2m WS2812 COB strip around the mirror's outer edge, securing as you go. Wire its data/power separately or chain off the last hex cell.
- Wire to the ESP32 and flash WLED — Connect data (through the level shifter) and power to the ESP32, flash WLED, and set up the 7 hex cells and the ring as separate segments so they can be controlled independently.