My MagicMirror
Nov 2, 2016 00:00 · 694 words · 4 minute read
About a year ago, I discovered an awesome project by Michael Teeuw - the MagicMirror.
I was instantly hooked and wanted to build my own mirror. Over time I bought piece by piece and when I had everything together, I started building my own MagicMirror. This is a small documentation of my mirror. I’m going to add more features to the mirror in the (near) future. Once new components are added, I’ll update this blog post and add the new features.
List of components
Hardware
Here’s a list of the used components including price and a link to the product where I bought it:
Component | Name | Price | Bought at | Remarks |
---|---|---|---|---|
Display | Second hand 27’’ display - Philips 273E3L | 100€ | eBay | |
Mirror | Observation mirror | 67,15€ | myspiegel.de | |
Body | Wooden frame, self made | - | - | |
Frame | Custom made wooden picture frame “Kaffa” | 41,58€ | myspiegel.de | |
Raspberry Pi | Raspberry Pi 3 Model B | 39,99€ | amazon.de | |
OneNineDesign case for Raspberry Pi 2,3 | 6,94€ | amazon.de | ||
9,99€ | amazon.de | Died after 3 years of service | ||
Motion sensor | RobotBase PIR motion sensor | 12,89€ | amazon.de | |
HDMI cable | HDMI cable 0,5 metres | 4,99€ | amazon.de | |
Sum: | 283,53€ |
Software
All of the Software is free and Open Source, so here’s just a list:
- Raspbian
- MagicMirror
- Various modules for the MagicMirror
- A script to automatically turn of the display when no movement is detected for a given time (Works with a PIR motion sensor)
The display
I bought a second hand 27’’ Philips 273E3L display on eBay Kleinanzeigen and removed the original housing to safe space in the body of the mirror. After disassembling the housing, the screen looked like this:
I also added a PIR motion sensor to my mirror. When no motion is noticed for a period of time, the display is powered off. This is managed through a small Python script. You can grab the code on GitHub.
Frame and body
After disassembling the housing of the display I cut some strips of wood to fit the actual screen size and screwed them together to have a “body” for the mirror.
For the visible frame, I chose a custom sized wooden frame from myspiegel.de and screwed the rectangular body to the frame:
The mount of the mirror is a simple strip of wood with holes connected to the body frame, like the one on Michael Teeuws mirror. Four small pieces of wood screwed to the body frame hold the display in place.
Additionally, I drilled some holes into the top of the body to ensure that warm air can escape.
The wiring
For the power supply, there is a main power line that arrives in a luster terminal at the bottom of the mirror (left hand side of the image). From there, a cable is connected to 3 WAGO connectors which then distribute the power to the screen and the Raspberry Pi (inside the orange clamp in the top of the picture). The black box in the bottom left is the Raspberry Pi. I simply hot glued the case to the display. A short HDMI cable connects the Pi to the back side of the display.
The Pi’s power supply is at the top right side. This one is quite special. The plug itself is fixed with a screw. So you can easily access the circuit board inside. I simply cut the plug and soldered new wires to the circuit board. The two wires are connected to the corresponding WAGO connectors for N and L conductors.
Here’s a detailed view of the power distribution. The three yellow connectors are for stiff cables and the grey ones can handle stiff cables on the left side and soft cables on the right. I simply cut a rubber connector cable and tin-coated the ends of the three wires inside to supply power to the display.
This way I saved a lot of space between the mirror and the wall, because there was no need to use power plugs at all.
The final mirror
So this is my mirror: