Smart Mirror

Download Full-Text PDF Cite this Publication

Text Only Version

Smart Mirror

Harshitha R

Electronics and Communication Siddaganga Institute of Technology

Abhay Simha G H

Electronics and Communication Siddaganga Institute of Technology

Purushottama T L

Assistant Professor Electronics and Communication

Siddaganga Institute of Technology

Abstract:- The project is based on the idea of making the mirror smart. This is done by displaying the information on mirror using Raspberry Pi and LCD. Time and date are displayed using sensors which are interfaced to Pi. Preloaded reminders are also displayed which keeps track of important schedules. This system checks weight, pulse rate and body temperature using load cell, pulse rate sensor and temperature sensor respectively and updates the database in cloud. A graph of body weight, temperature and pulse rate is plotted to keep track the changes. Thus, helps in maintaining better health. LCD is connected to Raspberry Pi, on which the required information is displayed. The one way mirror mounted on LCD assists in reflection as well as the display.

A one-way mirror acts as a mirror from one side and as a glass from the other. It is mounted onto the LCD screen such that the glass side is facing the LCD screen. This assists in reflection as well as the display. The system is efficient for personal use especially for people who have busy schedules. Smart Mirror can be installed in homes and offices.

Keywords- Raspberry Pi, Mirror, Pulse rate, Body Weight, Temperature.

Processor powered Single Board Computer running at 900MHz, which has on chip 1GB RAM. It has 40 GPIO pins out of which 17 pins can be interfaced with sensors. The main GPIO connectors are shown in Table 3.1. Keyboard, mouse and other devices can be connected through four USB2.0 ports. The video output can be accessed by Composite video port supported by 3.5mm audio jack. It also has a full size HDMI port through which LCDs of larger sizes can be connected. Micro SD port expandable to 32GB is used for loading the operating system and storing data. The Raspberry Pi is powered by Micro USB power source.


    A smart mirror which reflects and at the same time displays the required information is the objective of the project. A Raspberry Pi controller interfaced with a Liquid Crystal Display (LCD) screen is used to display. One way mirror is mounted on to the LCD screen such that the screen of LCD is behind the reflecting surface. When LCD lights up, the numerical and alphabet glows and the rest of the screen is dark. The mirror allows the light from the display to pass through from one side and on the other side reflects the light incident on it. Thus, appearing that the mirror displays the information.


    Smart Mirror implementation requires Raspberry Pi as the processor which is powered using 5V dc power supply. Pulse is measured using pulse rate sensor. A real time clock circuit keeps track of the time even when the system is powered off. The body temperature is measured when a person holds the temperature sensor. The weight of the person standing on the load cell is converted into voltages which is amplified by the instrumentation amplifier and converted into digital form. The one-way mirror assists in reflection where the LCD displays the required information. The detailed description of the hardware is given below.

      1. Raspberry Pi

        The Raspberry Pi shown in Fig. 1 is a system on chip which uses Broadcom BCM2836 Arm7 Quad Core

        Fig. 1. Raspberry Pi

      2. Pulse Rate Sensor

        Please Heart Beat can be measured based on optical power variation as light is scattered or absorbed during its path through the blood as the heart beat changes. The pulse rate sensor is based on the principle of photo phlethysmography. It measures the change in volume of blood through any organ of the body which causes a change in the light intensity through that organ (a vascular region). The flow of blood volume is decided by the rate of heart pulses and since light is absorbed by blood, the signal pulses are equivalent to the heart beat pulses.

        The block diagram of pulse rate sensor shown in Fig. 2 consists of a light emitting diode and a detector a photodiode. The heart beat pulses causes a variation in the flow of blood to different regions of the body. When a tissue is illuminated with the light source, i.e. light emitted by the led, it either reflects or transmits the light. Some of the light is absorbed by the blood and the transmitted or the reflected light is received by the light detector. The amount of light absorbed depends on the blood volume in that tissue. The detector output is in form of electrical signal and is proportional to the heart beat rate.

        Fig. 2. Block diagram of Pulse Rate Sensor

      3. Real Time Clock Circuit

        The DS1307 serial real-time clock (RTC) shown in Fig. 3, is a low-power, full binary-coded decimal (BCD) clock/calendar. Address and data are transferred serially through an I²C, bidirectional bus. The clock/calendar provides seconds, minutes, hours, day, date, month, and year information. The end of the month date is automatically adjusted for months with fewer than 31 days, including corrections for leap year. The clock operates in either the 24-hour or 12-hour format with AM/PM indicator. The DS1307 has a built-in power-sense circuit that detects power failures and automatically switches to the backup supply. Timekeeping operation continues while the part operates from the backup supply.

        Fig. 3. Real Time Clock Circuit

      4. Temperature Sensor

        The DS18B20 digital thermometer provides 9-bit to 12-bit Celsius temperature measurements. It communicates over a 1-Wire bus that by definition requires only one data line (and ground) for communication with a central microprocessor. In addition, the DS18B20 can derive power directly from the data line ("parasite power"), eliminating the need for an external power supply.

        The digital thermometer DS18B20 used as temperature sensor is connected to the Raspberry Pi GPIO pins as shown in the Fig 4. VDD pin of the sensor to pin number 1 and GND pin to pin number 6 of the Raspberry Pi. A pull up resistor of 4.7K ohms is used between DQ pin of the sensor and GPIO pin of the Raspberry Pi.

        Fig. 4. Temperature Sensor and connections

      5. Load Cell

        Strain gauge load cells convert the load acting on them into electrical signals. The gauges themselves are bonded onto a beam or structural member that deforms when weight is applied. The strain gauge measures the deformation (strain) as a change in electrical resistance, which is a measure of the strain and hence the applied forces. The electrical signal output is typically in the order of a few millivolts and requires amplification by an instrumentation amplifier before it can be used.

        Load Cell SPL550H is designed for direct mounting of large weigh platforms. The rugged construction offers high immunity to side forces making it suitable for a wide range of weighing applications, including bench scales, check weighing and process weighing. A special humidity resistant protective coating assures long term stability over the entire compensated temperature range. The signal from the load cell is amplified using instrumentation amplifier (AD620). Amplified signal is converted in to digital form using A/D converter (MCP3008). The output from A/D converter is given to Raspberry Pi. Connections from load cell to amplifier and to A/D converter is as shown in Fig. 5.

        Fig. 5. Circuit diagram of Load Cell sensor

      6. One Way Mirror

        A one-way mirror is a mirror that is partially reflective and partially transparent. When one side of the mirror is brightly lit and the other is dark, it allows viewing from the darkened side but not vice versa.

      7. Liquid Crystal Display (LCD)

    The Raspberry Pi supports composite video (National Television System Committee and Phase Alternating Lines) display output via High Definition Multimedia Interface (HDMI) 1.3a standard output. These interfaces allow the use of a broad range of displays; including Televisions (HDMI or composite) and computer monitor. Video Graphics Array (VGA) monitors would require either a composite or HDMI to VGA converter box. A LCD television or monitor with a minimum resolution of 1024 x 768 is used to display.


    Raspberry Pi requires an Operating System (OS) for its operation. The first step before using Raspberry Pi is to load an OS to it. Rasbian OS provides a built in platform for Python programming. Measurement of pulse rate, temperature, weight and interfacing RTC is coded using Python.

      1. Booting Raspberry Pi for the first time

        NOOBS which has Rasbian OS is loaded on to SD card with a minimum capacity of 8GB. Keyboard, mouse and monitor cables are plugged in and Raspberry Pi is powered using micro USB power cable. The Raspberry Pi boots up automatically. The installation process as soon as we click on "install". When the install process has completed, the Raspberry Pi configuration menu (raspi-config) will load.

      2. Python Programing

        Once the Raspberry Pi is booted Python programming can be done either by using Python2 or Python3. The Python program can be typed using the command nano which opens the script editor. The python files should be saved an extension ".py". To run the Python program can be executed by typing "python filename".

      3. Cloud Database

        The Raspberry Pi is connected to the internet and on a suitable cloud platform a database is created using SQL which stores the values of body weight, temperature and pulse rate measured, along with time. These values are plotted in the form of a graph. The database and the graph can be accessed remotely using internet.


    The Smart Mirror reflects and displays time, date and reminders. On requirement, pulse rate, body temperature and body weight is measured and displayed. The remainders can be edited to display the required information. The entire system is mounted in a wooden cabin. The Raspberry Pi and other circuits are placed below the LCD. The pulse rate sensor, temperature sensor and push buttons are placed in front of the display. The load cell is placed on the floor in front of the Smart mirror. The snapshots of the display and the hardware are shown below.

        1. Time and date is shown in right top corner of the mirror, as shown in Fig. 6.

        2. Reminders are displayed on the left side of the mirror; this is shown in Fig. 6.

        3. When a person holds the temperature, the body temperature is displayed as shown in Fig. 6.

          Fig. 6. Display of Reminders, Time and Date, Body Temperature

        4. When a person inserts finger in to pulse rate sensor, the pulse rate is displayed as shown in the Fig. 7.

          Fig. 7. Display of Pulse Rate

        5. The weight of the person is displayed as shown in Fig. 8.

    Fig. 8. Display of Body Weight

    The data is pushed to the cloud every time body weight, temperature and pulse rate are measured and the corresponding time is also recorded. The screenshots of the database, as shown in Fig. 9 and the graph plotted is shown in Fig. 10. The database and graph can be accessed remotely using the internet.

    Fig. 9. Database on the Cloud

    Fig. 10. Graph of body weight, temperature and pulse rate


    The Smart Mirror displays the predefined information and also does the job of a mirror i.e. reflection. Along with the reflection, time and reminders are displayed which helps in keeping track of important events or schedules. When required, weight, pulse rate and body temperature of a person is measured and displayed. This helps in better maintenance of health. The system is efficient for personal use especially for people who have busy schedules. Smart Mirror can be installed in homes and offices.


  1. Rasp-Pi based Remote Controlled Smart Advertising of Still and Moving Images- International Journal Of Engineering And Computer Science ISSN: 2319-7242 Volume 4 Issue 9 Sep 2015, Umakant B. Gohatre, IJECS Volume 04 Issue 09 September, 2015.

  2. PC Based Weight Scale System with Load Cell for Product Inspection- Wendi Usino Faculty of Information Technology Budi Luhur University,Jakarta,Indonesia.

  3. Eben Upton and Gareth Halfacree Raspberry Pi User Guide Kindle Edition, Wiley Publication, 2014.

  4. Kevin Partner Raspberry Pi for Beginners Dennis Publication, 2013.

  5. H S Kalsi Electronic Instrumentation Third Edition, Mc Graw Hill, 2010.

  6. Simon Monk Raspberry Pi Cookbook OReilly Publications, 2014.

Leave a Reply

Your email address will not be published. Required fields are marked *