I started with an ornate antique mirror I found in a junk shop. I opened up the back and removed the existing 1/4" piece of mirror glass. This left just enough room for two 1/8" pieces of acrylic without compromising the integrity of the frame by trying to squeeze in more layers.
2-Way Mirrors
How They Work
A 2-way mirror, also (confusingly) called a 1-way mirror, has a semi-transparent reflective film applied that shows viewers on one side their reflection, while viewers on the other side can see through the glass. The transparent / reflective surface changes based on the level of light on each side. We can play with this effect by turning lights on and off behind the mirror to make glowing things "appear".
Where to Get It
2-way mirror glass or acrylic can be purchased online, or it's also possible to get 2-way film and install it yourself on a piece of glass or acrylic. This gives a pretty good result for the money, but was a bit tricky to get "right". An air bubble or speck of dirt trapped under the film will warp the image, and I found I couldn't get it nearly as clear as a real mirror in terms of reflection. It is definitely a more affordable option, but if you want perfect clarity get yourself a 2-way mirror that was made by the pros.
I went with 1/8" thick since it's much less expensive and totally workable for this project, even for a full-length mirror. 1/8" acrylic can warp, so if your mirror is frameless, you might want to consider the thicker stuff. Remember you also need to squeeze your edge-lit acrylic in the frame too.
If you want to DIY, there are a lot of options for 1-way or 2-way mirror film online. Look for a source that's a bit wider than your project. Some come with installation tools too, so shop around.
Edge-Lit Etched Acrylic
Type
Acrylic sheets can be cast or extruded. Cast acrylic works better than extruded acrylic for carrying light. There's also a product called ChemCast, which is an acrylic sheet that's designed specifically for edge-lit signs. In my experience, at least for smaller projects, the regular cast acrylic works just as well and is less expensive.
Thickness
1/4" thick acrylic will carry light a lot better than 1/8". I found that the 1/8" stuff was sufficient for my 22" wide mirror, especially if I lit both edges.
Layout
The etched acrylic will hide behind the 2-way mirror, inside a frame to block any stray light from "leaking" into the edges. When it's dark all around, the etched acrylic completely disappears.
Each laser-etched message should be on its own line, with at least a couple inches of space between them. The plan is to light up only the LEDs aligned with each message so the viewer sees just one message at a time.
This was my plan, at least. In prototyping, I discovered that having a curvy frame around my mirror gave me a problem: the lights were placed on a curve, so they didn't shoot "straight" into the words. The lights would illuminate the message, but also bleed into the messages above or below. I fixed this problem by cutting the sections apart on the laser, and sealing the edges with black tape. More about this on the Laser Etched Acrylic page.
To work with the thin 1/8" acrylic sheet, I decided to use ultra-skinny NeoPixel lights. They're about 1/8" wide and 150 pixels per meter, and they fit delightfully well on the edge of my acrylic without adding thickness or extra space inside the frame.
They are WICKED hard to solder or connect end-to-end. I used two strips, one for each side of the mirror, and connected both to my Sparkle Motion using JST connectors soldered to the pre-attached wires. This worked great and saved me from some tricky soldering.
If you need a more custom setup and/or are new to soldering, try the Mini-skinny NeoPixels instead.
Message Layout
I have 14 separate areas that illuminate on my mirror. I'm counting the math equations at the top as one -- the curves up there along the edge of the mirror made it impossible to light them separately.
This means I had to create 14 different light segments in WLED to light each message individually.
This is ambitious, but doable in WLED. With an ESP32, WLED will support up to 32 segments -- so limit your design accordingly.
Page last edited September 25, 2025
Text editor powered by tinymce.