Introduction: Home Security Email Alert System Using Raspberry Pi
In this tutorial we will look at how to setup up your raspberry pi to take picture of the intruder who enters your home and send an email to you whenever you are not at your home.
Step 1: What You’ll Need
- Raspberry Pi running Raspbian
- USB Camera
- PIR Sensor
- USB Wi-Fi Module for internet access ( optional, if you connect your Ethernet cable for internet, USB Wi-Fi Module is not needed )
- Power Adapter to power the Rsapberry Pi
Step 2: Setting Up Your Raspberry Pi With Raspbian
First you need to install Raspbian on your micro sd card that you will be using in your Raspberry Pi.
You can download the latest image of Raspbian from Raspberry Pi website at:
You will need to use an image writing tool to install the image on your SD card. You can find the steps to do that at:
Step 3: Install OpenCV and Required Libraries
There are lots of methods to do this. But I would prefer using the simplest method that is available in OpenCV website at http://docs.opencv.org/doc/tutorials/introduction/...
Open the terminal of your raspberry pi and execute the following commands...
$ sudo apt-get install build-essential
Install required packages
$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
Install optional packages
$ sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
Now download OpenCV to wherever you want to compile the source.
$ mkdir xxx
$ cd xxx
$ git clone https://github.com/Itseez/opencv.git
Create and build directory and onfigure OpenCV with cmake. Don't forget the .. part at the end of
$ cd OpenCV-2.4.*
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
Now compile it
And finally install OpenCV
$ sudo make install
Step 4: Python Code
Use the attached Python code after editing the following lines
gmail_user = "email@example.com" #Sender email address
Enter your email address in the above line using which the Photo captured will be sent
gmail_pwd = "xxxx" #Sender email password
Enter the password of the sender email address
to = "firstname.lastname@example.org" #Receiver email address
Enter the email address to which the email with the picture captured will be sent...
Step 5: Make Necessary Connections and Test the Setup
Now connect the USB camera and PIR sensor to the Raspberry Pi.
Using three female-to-female jumper cables, you'll need to connect each of the PIR sensor's connectors to the appropriate pins on the Raspberry Pi.
Connect the top one labelled VCC on the PIR sensor to the 5V pin on the Raspberry Pi, connect the middle one labelled OUT to GPIO pin 4, and connect the bottom one labelled GND to a ground pin also marked GND.
Now you run the python code with sudo to check the setup. Whenever there is a movement it detected by the PIR sensor, an image is captured and email is set the to email address you entered as the receivers email address.
Step 6: How the Final Setup Looks and Output
Now, if you put the setup infront of your home door and run your python code and leave your home. If someone opens the door, you will get an email alert.
Step 7: Adding Wi-Fi Support to Raspberry Pi
Clear steps to setup Wi-Fi on Raspberry Wi-Fi is given at the official guide at
Step 8: Raspberry Pi Auto Login and Auto Start and Run the Python Code
To auto run the python code at start up just by powering up the raspberry pi use the following steps.
sudo nano /etc/inittab
Scroll down to:
1:2345:respawn:/sbin/getty 115200 tty1
and change to
#1:2345:respawn:/sbin/getty 115200 tty1
Under that line add:
1:2345:respawn:/bin/login -f pi tty1 /dev/tty1 2>&1
Ctrl+X to exit, Y to save followed by enter twice
Auto run the python code
sudo nano /etc/rc.local
Scroll to the bottom and add the following above exit 0:
sudo python /directory/pythonfile.py
Press Ctrl+X to exit, Y to save followed by Enter twice.
If you face any issues in the steps, look at http://elinux.org/RPi_Debian_Auto_Login
Now reboot the system and you will see that the python code has started running automatically and will send you an email if it detects a movement using the PIR sensor.
Now you can turn on the setup whenever you leave your home locked to make sure you get an email alert whenever someone enters your home when you are not there...