Introduction: The Cheapest Smart Mirror!


My name is Nil and I am fifteen years old. This is my first instructable, ever. I really do hope that you enjoy this and I would be really happy for you to give me any sort of feedback, whether that would be positive or negative. Thanks you for taking the time to read this and I hope it helps you or inspires you.

I stumbled across this project and was determined to make my own...for the lowest possible cost. This is how I made an incredibly cheap smart mirror for just £61!

A huge thanks you to all the following people for the contributions, inspiration and help:

Components List:

  • Monitor (£15.00)
  • Raspberry Pi 3 or 2 (£30.00)
  • Short HDMI Cable (£2.99)
  • Double-Sided Acrylic Mirror (£17.90 excluding delivery)
  • Wood (£0 got it for free)
  • Screws (£0 got it for free)
  • Moulding for Frame (£6)

Tools List:

  • Screwdriver
  • Saw
  • File
  • Keyboard and Mouse (this is for setting up so not a component)
  • Hot-glue Gun
  • Jigsaw
  • Silicone
  • Gorilla Glue (or any strong wood glue)

Step 1: The Monitor

There are some key features that the monitor must have:

  • All of the inputs must be to the side or bottom.
  • The screen must be fully functional.
  • The screen must have a HDMI input.

I had kept this in mind when I bought my monitor. I had purchased mine for only £15 from Gumtree as someone was trying to get rid of it. It is a UMC monitor, very cheap but it has the basic features for this smart mirror to work.

I carefully unscrewed the bolts of the monitor and opened the frame up to find a whole lot of electronic boards. I am not a professional in the area of electronics (then again, I am only fourteen), but I managed to take out the unnecessary DVD player and its wires.

I then carefully removed the inner white frame and the outer black frame from the screen and circuit boards to leave me with a screen and a couple of circuits. I made sure that the screen still functioned properly.

Step 2: Minor Problem

As I tested the screen again I was fiddling around with some of the buttons and suddenly there was smoke coming from one of the circuit boards and a strong scent of burnt rubber. I switched off the power immediately looked to see what has happened.

There was a small burn. I had a feeling it was something to do with a loose wire.

I went to my uncle and he helped me figure out what was wrong and we fixed it. I even managed to remove another unnecessary circuit board.

Step 3: Securing It Together

I made a mount from the scrap bits of plastic that I had removed earlier on from the monitor. I used a saw and file to use the existing screw holes and mounted the circuit boards onto that. This is so that the the metal on the screen doesn't touch the metal on the back of the circuit boards. I used hot glue to secure it.

I then started to make a side support frame using bits of wood left over from some Ikea shelving. I needed four pieces in total, two pairs being identical. The longest pair were 47 x 2 x 5. The shortest pair were 28 x 2 x 5.

I cut the pieces using a jigsaw, then sanded them using a file. I then made screw holes with the drill and fitted the screws together, leaving me with a pretty cool support frame.

Step 4: Configuring the Raspberry Pi

I attached the raspberry pi to the monitor with the HDMI cable and the OS Raspbian booted up onto desktop mode. I opened the terminal and began to type in the code:

sudo raspi-config

This made a menu pop up and I had to edit the following:

3 Boot Options -> B4 Desktop Autologin
5 Internationalisation Options -> 12 Change Timezone -> (Choose your timezone)
9 Advanced Options -> A3 Memory Split -> 128

Now, set up the network connection. If you're using a Raspberry Pi 2, get a USB Wi-Fi Adaptor and set up the network. If you're using a Raspberry Pi 3 (which has a build in Wi-Fi adaptor), like me, just click the network options button on the desktop and connect to your home Wi-Fi.

Now, type the following into the terminal:

sudo leafpad /boot/config.txt

This will make the file open in a text editor. Add the following to it:


Next, on the same file, uncomment (remove the @) from this:


Save and exit. Now reboot the Raspberry Pi and make sure the screen has rotated sideways.

Now, to install the actual MagicMirror software, type in the following:

curl -sL <a href="" rel="nofollow"></a> | bash

Now that the software is installed, it's time to make sure the application runs automatically when you switch on the Raspberry Pi. Install PM2 by typing in this code into the terminal:

sudo npm install -g pm2

To make sure it starts on boot, type this in:

pm2 startup

PM2 will now show you a command you need to execute.

To use PM2 in combination with MagicMirror, type this line in:

cd ~<br>nano 

Add the following lines:

cd ~/MagicMirror
DISPLAY=:0 npm start 

Save and close, using the commands CTRL-O and CTRL-X. Now type this:

chmod +x 

Now that the Raspberry Pi will auto-start, it's time to configure the actual interface.

Go to the File Manager on the desktop and go to the "Magic Mirror" folder. In there you will see another folder, this time called "Config". Open this and duplicate the file:


Rename it to:


You're done! This is the basic Magic Mirror.

I was messing around with the configuration settings and added a couple of useful modules to suit my lifestyle. I made the calendar sync to Google Calendar on my phone and added a To-Do list ( I also moved the compliments down so that it wouldn't block too much of the screen and bam! That's the personalised version.

Step 5: The Mirror

I ordered my mirror from Cut Plastic Sheeting, It came in 8 days. It was £17.90, the cheapest I could find for a specialist mirror. It arrived after about 8 days.

I decided to secure the mirror to the supports I had just made. I used some silicone for this. It had dried after 24 hours.

Step 6: Making the Front Frame

I used some moulding that I got from B&Q to create a frame that would wrap around both the mirror edge and the side support frame, ensuring both a secure support and a pleasing finish.

I used a jigsaw to cut the pieces at a 45 degree angle to create a professional frame look. I then used some very strong wood glue (Gorilla Glue) to attach it to the mirror and side support. I filled small gaps with some wood filler.

I needed a way to secure the mirror to the wall. I had considered various options but the smart mirror was too heavy (one of the disadvantages of buying a cheap monitor). I needed some sort of heavy duty bracket that wall-mounted TV's use to attach my smart mirror to the wall. When I did this the mirror was complete!


mattboo1318 (author)2016-08-19

When I typed in the command to install the magic mirror software, (... </a> | bash), I got a message saying bash:syntax error near unexpected token '|'. How would I fix the error?

Nil Varu (author)mattboo13182016-08-20

What Raspberry Pi version do you have? Also have you made sure you typed the entire thing correctly? I made several syntax errors due to my typing.

dmayer125 (author)Nil Varu2017-04-03

I'm having the same issue as matt. I'm running Noobs 2.3.0. (can be found here: I'd appreciate any help! Thanks!

SandisY (author)2017-03-13

If you need to transport your items -

JellyBelly2o (author)2016-10-22

Nice work Nil

Lady Microfleegie II (author)2016-08-08

Really awesome and I think sometime I'll approach this project. One dumb question though because I never knew anything about these kinds of things, how do you interact with it, is anything changed remotely via smartphone? What would it take to make it also a touchscreen? :O


Thanks! The To-Do list and the Calendar are all controlled via my smartphone - anything, for example events on the calendar, automatically show up on the smart mirror. Also i'm not too sure about touchscreen.

Aneriah (author)2016-08-03

Hey man great project. I just have a few questions... Did you already write the code for it? If so where can I find it? Also what are all the things it is capable of doing?

Nil Varu (author)Aneriah2016-08-04

Thanks! I had accessed the code from here and the mirror is capable of so many things. I have synced it to my Google Calendar on my iPhone, this is just an example. In the code the interface is very customisable.

deepeshsolanki15 (author)2016-08-02

Very impressive hope you will update the new one soon



DIY Hacks and How Tos (author)2016-08-01

Awesome smart mirror. This is way cheaper than using any of the commercial tool systems.


Thank you!

About This Instructable




More by Nil Varu:The Cheapest Smart Mirror!
Add instructable to: