This is my take on the popular Magic Mirror DYI project floating around the web

Sources on GitHub

Update 1.2.2017 – Added ventilation monitoring

Update 8.7.2017 Added Solar energy production info (Emphase Envoy-s)

I built this mirror mainly for my own home automation needs:

To monitor ground heat pump statistics (Thermia ground heat pump) To see humidity/temperatures inside/outside of the house (TODO: to add more wireless sensors around the house ) To see both mine and SO’s calendar easily. To monitor electricity usage of the House Monitor sleep statistics (Beddit) To see weather forecasts Ventilation monitoring/statistics (Enervent pingving) Solar energy: 4 x Emphase M250 microinverters with Envoy-s metering integration

and on my TODO list are:

Add Robomow robo lawn mower integration for schedule and notifications (Bluetooth integration)

Add more wireless temperature/humidity sensors (more rooms, greenhouse)

Building the mirror/monitor frame

Source codes are available in GitHub: magicaespeculo

Materials:

(Prices are converted to usd on May, 2016)

Total price: 256€ ($288)

Workbench

I’m not in any way professional so my tools/skills are quite elementary.

Mirror, monitor and frame setup:

Removed the bezel from monitor with knife very carefully. It was very tight so needed to use quite much force to remove it. After the frame was built I just inserted the mirror against the wooded frame and added sofa leg paddings to the sides so it would hold the mirror better as there were 2mm extra room in the sides. (sofa leg paddings are those white rectangle pads) To hold the mirror I added wooden blocks which had again the sofa leg paddings against the mirror and clued and screwed them to the frame Then inserted monitor on top of the mirror and used housing brackets with sofa leg paddings to be tight fit. also the wood blocks were fitted so the monitor could not move sideways

The PIR sensor detects human presence and turns monitor on/off. This was done using PIR connected to Raspberry PI 3 Model B GPIO ports with interruptions (instead of polling and wasting CPU cycles)

Software:

Source codes can be downloaded from GitHub: here. This project is for my home automation monitoring. You can take what you need and modify as you need. I will continue to add features to this according my todo list and try to make it more robust for other projects as well. The Github page has all relevant information for setting up, running and configuring the code.

Note: This is not production level code, and was intended to use in my home network only. So haven’t thought about security aspects at all yet. Also this was just to meant to show calendar and date/weather so the Architecture was not thought from the start to cover all the things I ended up adding. Maybe some refactoring on the next versions (at least to come up with better database structure and maybe MQTT messaging)

I wanted to learn Node.js & JavaScript stuff more so I build it from scratch. I borrowed some ideas from existing “Magic Mirror” projects here and here

This is my home automation setup (will update the image when adding more stuff)

Please leave a comment/question.