Things used in this project

Schematics

SMART HOME SECURITY SYSTEM
Untitled iddtenjwiv

Code

SMART HOME SECURITY SYSTEMPython
Its a python code that can be run in Python 3 IDLE
#!/usr/bin/env python
# encoding: utf-8

import os
import smtplib
from email import encoders
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart

COMMASPACE = ', '

def main():
    sender = 'projectteamgeck@gmail.com'
    gmail_password = '9620955777'
    recipients = ['mtech.kiran@gmail.com']
    
    # Create the enclosing (outer) message
    outer = MIMEMultipart()
    outer['Subject'] = 'mail'
    outer['To'] = COMMASPACE.join(recipients)
    outer['From'] = sender
    outer.preamble = 'You will not see this in a MIME-aware mail reader.\n'

    # List of attachments
    attachments = ['/home/pi/image/image1.jpg']

    # Add the attachments to the message
    for file in attachments:
        try:
            with open(file, 'rb') as fp:
                msg = MIMEBase('application', "octet-stream")
                msg.set_payload(fp.read())
            encoders.encode_base64(msg)
            msg.add_header('Content-Disposition', 'attachment', filename=os.path.basename(file))
            outer.attach(msg)
        except:
            print("Unable to open one of the attachments. Error: ", sys.exc_info()[0])
            raise

    composed = outer.as_string()

    # Send the email
    try:
        with smtplib.SMTP('smtp.gmail.com', 587) as s:
            s.ehlo()
            s.starttls()
            s.ehlo()
            s.login(sender, gmail_password)
            s.sendmail(sender, recipients, composed)
            s.close()
        print("Email sent!")
    except:
        print("Unable to send the email. Error: ", sys.exc_info()[0])
        raise

from gpiozero import MotionSensor
from picamera import PiCamera
from datetime import datetime

camera = PiCamera()
pir = MotionSensor(4)
while True:
    pir.wait_for_motion()
    print ("motion detected")
    camera.capture('/home/pi/image/image1.jpg')
    filename = datetime.now().strftime("/home/pi/videos/%Y-%m-%d_%H.%M.%S.h264")
    camera.start_recording(filename)
    pir.wait_for_no_motion()
    camera.stop_recording()
    main()
Buzzer ModulePython
Its a python code that can be run remotely through a VNC Viewer in a Python 3 IDLE to alert the neighbors about the intrusion
from gpiozero import Buzzer
from time import sleep
buzzer = Buzzer(17)
while True:
    buzzer.on()
    sleep(1)
    buzzer.off()
    sleep(1)

Credits

Img 20161214 135201 evxfxpw8c4
Kiran M P

Assistant Professor

Contact

Replications

Did you replicate this project? Share it!

I made one

Love this project? Think it could be improved? Tell us what you think!

Give feedback

Comments

Similar projects you might like

Chicken Coop Livestream
Easy
  • 2,740
  • 10

Full instructions

We have two chickens, and their coop is located at the back of the garden. I decided to build a Pi-based streaming device to check on them.

Test Your Internet Speed Using a Raspberry Pi + Ubidots
Easy
  • 392
  • 5

Protip

Use your Raspberry Pi to measure any internet connection speed with Ubidots.

Dataplicity “Custom Actions" for controlling RPi GPIOs
Easy
  • 44
  • 1

Protip

With this example you will control GPIOs on your Raspberry Pi from the Dataplicity Mobile app using "Custom Actions" feature.

Raspberry Pi Shutdown / Restart Button
Easy
  • 5,342
  • 20

Full instructions

Building an installation project? Shut down or reboot your project safely, without a keyboard or SSH!

DIY Raspberry Pi Indoor Outdoor Webcam
Easy
  • 1,609
  • 6

Full instructions

Ever want to monitor your home but don't want to buy a $100 1080p webcam? Well I did, and you can too!

How to interface Arduino with RaspberryPi
Easy
  • 82
  • 1

Protip

In this I have shown how to send data from temperature sensor which is connected to Arduino and send data to Rpi database.

Sign up / LoginProjectsPlatformsTopicsContestsLiveAppsBetaFree StoreBlog