Iāve been seeing magic mirrors around the internet for a bit now and have been thinking of making one for months.Ā With the pi 4 dual monitor support it seemed like a perfect time for aĀ project
Materials * 24ā³x36ā³Ā acrylic mirror * 2 monitorsĀ - Iām very happy with these monitors.Ā Theyāre very thin and light, I didnāt even need to remove them from the casing * raspberry pi 4, heatsink * wood frame kitĀ - This is actually for an art canvas, so it definitely isnāt going to provide the necessary support we need, so weāll have to build it in the back * 1ā³x3ā³ piece of wood to cut to build the support structure for the back.Ā Youāll need a total of 96ā³ to build out 4 24 support pieces.Ā I also cut the corners into smaller blocks that angle perpendicular to the top bar * black board - I got this at an arts and craft store, a sturdy light board painted black or painted cardboard would work, the lighter the better and easy to cut * black felt * clamps * handsaw - I hope you got a circular saw * Sandpaper - Most of my day was spent sanding and dreaming of power tools * Glue - wood + superglue or gorilla glue * Paint if you want * Right angle ruler * Power drill and screws
A picture of all the materials App * BaseApp * Spotify * Googlephotos * Systemstats * Webview - this runs all the tumblr tv which powers the gifs.Ā Webviews out to tumblr.com/tv/simpsons for example
The cutting of the wood and painting were done prior to the build.Ā The assembly andĀ installation of modules and the app were a 1 day build
Building!
Squaring things off to cut
Nothing like handsawing barefoot
Lots of sanding ahead...
Watching paint dry...
More drying paint... The white is the outer frame the black is the back structure pieces
I actually bought 2 of the 24ā³ frame kits to glue 2 sides together to act as one of the support beams.Ā Ā The frame portion became a nice holder for the top monitor
Build the frame and place the mirror in.Ā Use wood glue on theĀ corners, mallet the plastic corners in that it comes with.Ā Dont skimp on glue
Theres a small gap around the sides of the mirror and the frame that I padded with felt
Start lining things up and marking off exact mount points, also removed the protective stickers
Add the bottom monitor reversed and cut out the black board, we will need to cover the entire area that isnāt covered by monitor with board
Add the two support beams,Ā Stabilize with wood glue and screws.Ā This should be packed such that the monitors wonāt move. Where monitor meats board, cover with the black felt held to the blackboard with wood glue.Ā I left a gap near the edges of each monitor with felt flaps that I can lift up later to place a motion detection camera for future use Glue in the corner squares and clamp them in place
Add the middle supports
Use the pi as a template to cut out a board and drill holes where the pi mount screws go.Ā The board is about an inch or so bigger than the pi.Ā Its from some packaging material I had at my apt, any small board will due, this gets glued to the backboard
After all the glue has dried.Ā Added some metal hooks to help support some wiring
Final product Backside
Overall Iām pretty happy with how reflective it is and Iām very happy with how sturdy it is.Ā From certain angles you can kind of see the outline of the monitor but its not much.Ā One thing is I totally didnāt cover up the monitor lights lol, so theres 2 dots - so cover those, I just say it adds to the aesthetic :)
Future things
I need to push some code changes to the magicmirror because it doesnāt support dual monitors.Ā Iām actually running two apps on different ports for each monitor and some hacking of the js/electron.jsĀ to change the x position.Ā But the app itself should be able to support extended displays, doesnāt seem like much code change iāll make a pr when I get around to it.Ā This was for hackday and I was running out of time, gimme a break
Add motion camera, not really sure what itāll do but i imagine itāll turn on different modules
Hookup to bluetooth.Ā I plan on automating turning on and off the monitors and apps when it detects my phone connects to its bluetooth or is in range of it or something along those lines
Cheers!
Cheers!














