Raspberry Pi-powered magic mirror
We’re not quite old enough to remember a time when the thought of automatic doors was science fiction, but we do remember wondering if we’d ever see magic mirror technology become a reality within our lifetime. Maker Becky Stern makes it look easy with this Raspberry Pi-powered smart mirror.
- Raspberry Pi 4 Model B (Raspberry Pi 3 will also work for this build)
- An old computer monitor or other HDMI display
- Power strip
- Two-way mirror glass
- Sturdy frame
- 3/4″ plywood
- LED strip with its own power supply (optional)
Becky used open source MagicMirror2 software, which has hundreds of IoT applications to choose from. You can display everything from the local weather and public transport options to your own personal calendar. There is a really nice easy-to-follow walkthrough on magicmirror.builders.
Magic Mirror was also a winner in The MagPi’s special 50th issue celebrating the greatest Raspberry Pi projects.
How is it made?
An old Dell monitor is used to display all the smart data. Becky followed tips in this video to strip the bezel, leaving a thinner piece of kit to work with. She also rerouted the buttons under the original bezel so they could still be used once the monitor was inside its new magic casing.
Plywood strips fill the gaps between the monitor and the frame, and a 12V LED strip is tucked in around the edges to illuminate the magic mirror from behind.
With the two-way mirror glass and everything else packed into the frame, the whole build weighs 40lbs, so you’ll need a really sturdy TV mount to secure it safely to the wall.
Thanks for making everything look so easy, Becky. And for the great photos borrowed from your website.
This sounds like an good project, but I’m wondering how many people that have made a smart mirror are still actually using it?
This monitor (dell u2711b) uses 60w of electricity per hour. That’s 1.4kw per day, 511kw per year, at say 25 pence per kw = £127.75 in electricity per year just for the monitor.
Yes the monitor can use less in power saving, but there’s no opportunity in the design to wake the monitor up.
yes power consumption is definitely a problem. Your energy prices are pretty expensive these days. That’s why I ordered a PIR. The plan is a simple python script which is just enabling the signal for 1 minute, while motion gets detected. In the beginning I thought of just cutting the HDMI signal to let the monitor go into standby mode. But now I’m planning to wire the pi to the monitors input buttons. That way I can turn it completely off and on again. If you want I can share my progress, but I have to wait a few days for the PIR’s delivery.
You could always have it plugged into a smart plug or outlet that automatically turns on and off at the same times everyday. So it could be set to turn on for an hour when you’re getting ready for work in the morning and automatically turns off. Could even have it set to come on in the evening before bed as well. It’s not like it NEEDS to be powered on at all times.
Becky’s from the other side of the pond – her contraption weighs 40lb, not 40kg!
Raspberry Pi Staff Ashley Whittaker — post author
You’re dead right. Let’s hope no one scrolls this far and just accepts that it said lbs all along 🤞
That should be one-way mirror glass. Two-way is just plain glass.
Nope. A quote from an expert:
A two-way mirror is often called a “one-way mirror” by members of the general public. The misconception is that such a mirror acts as a mirror from one side, and acts as a window (letting light through) from the other side. Actually, the two-way mirror is letting about half of the light through, and reflecting the other half of the light, from both sides. it is also called a half-silvered surface, as just enough reflecting metal film is deposited on the glass so that about half of the light is reflected.
We are using a Raspberry, it is not just a monitor. I think there is no need to use buttons. A motion sensor can do the job.
Great tutorial on making a smart mirror,
I noticed that you attached a monitor to the back, is that necessary or can I make it without one?
Comments are closed