GithubHelp home page GithubHelp logo

smartdoorbell's Introduction

University of Rome "La Sapienza"

Master of Science in Engineering in Computer Science Pervasive Systems, a.y. 2015-16 Pervasive Systems Group Project by Marco Casini and Mattia Brunetti

logodoorbell

Welcome to the SmartDoorbell

Finally the complete solution to control your whole entrance with just one click!

SmartDoorbell allows you to

  • Communicate with your entrance system simply using telegram app
  • Take a photo, record a video, play a sound, record a voice message from the guest to the owner
  • Open the door with freehands, (using beacon)
  • Share a code to known people to enter into the house

Main Idea

Our idea is to manage basically 3 kinds of possibilities:

  • Owner
  • Friends
  • Strangers

## The Owner: This should be the owner of the house, he can simply enter using a beacon, maybe in his pocket. Using beacon he can simply stay near the door, (50 cm approx) and the door will automatically open, you do not need an app for this!

## Friends The Smartdoorbell has a numeric keypad where you can simply enter the secret code and then you are in! Usefull if you are chilling with friends and you're too busy to buy beers instead of opening the door! After the 3 failed login attempts, the keypad control system is shutted down and the owner is alerted

## Strangers This should be used for any other possible situations. Stranger or people who is not trustworthy can simply press the button, a photo is automatically taken and sent to the owner via telegram. The owner can play from remote, an audio to inform the guest about something, or can take a video (30sec) to go deeper. If the stranger press the REC button, he can also record an audio message who will be delivered to the owner.

Functionalities

Everything runs on a telegram bot, where the owner of the house can communicate just simply typing some special commands as:

  • open --> This will simply open the door from remote
  • light --> This will just switch on the lihgt. Usefull for garden door or garage door.
  • openL--> Open the door + light
  • photo --> Simply take a photo using the camera installed on the doorbell. Automatically sent to the owner via telegram
  • video --> Simply record a video of 30 sec from the camera. Automatically sent to the owner via telegram
  • sound --> Play a prerecorded from the doorbell speakers
  • reboot --> To reboot the rasberry pi and so the entire system

Architecture

Lots of single action scripts, runs on a Raspberry Pi 2 with raspbian installed.

Everything is managed by the telegram bot, which starts at the startup of the system, and there is a python script for all the actions which the system can perform. (codes on the top )

schermata 2016-07-15 alle 10 48 09

Our timeline

schermata 2016-07-15 alle 10 53 28

What you need

This is the list of the exact items that we used. Of course you can use what do you want:

schermata 2016-07-15 alle 11 01 53

Installations instructions

  • Download and install raspbian for raspberry pi
  • Set up the Raspberry Pi, Enabling SSH, drivers and updates
  • Install python 2.7 or above
  • Connect and enabling the PiCamera on Raspberry Pi
  • Set up Buttons and realy using jumpers in the breadboards
  • Read the code to get familiarity with buttons, GPIO commands, and relay

WHAT'S MISSING

Everything works fine. There just some some bugfixiing problems to improve and some new little features that should be developed.

In progress tasks:

  1. An authorization control mechanism for telegram is missing. This means that everyone can communicate to the bot if this is discovered (really simple to add)
  2. There is no way to change the secret code outside the code. This should be impletented dinamically and remotely, using a form to collect data maybe.
  3. Beacon broadcast signale range must be settled up to low meters. This means like 80cm because it will open the door everytime the raspberry catch the beacon. Everytime the raspberry catch the beacon, it opens the door, so this means that beacon must stay more than 80cm after used.

Description of files:

  • bottonerec.py --> To record a sound from mic when a button is pressed
  • button.py--> The main button, take a picture when is pressed (act as a buzzer)
  • code.py-->To unnlock the door with a secure code from keypad
  • mainbot.py-->The Brain of the system. The Telegram Bot. Used to manage all the actions and interoperate with the owner
  • search.py--> To automatically unlock the door when a beacon is catched/detected

Info & Contacts

You can find us and of course, feel free to contact for any kind of informations:

Slideshare page of Project: http://www.slideshare.net/MattiaBrunetti/smart-doorbell Slideshare of beacon used (sensoro) :http://www.slideshare.net/MattiaBrunetti/sensoro-beacon-review Slideshare of raspberry pi 2 : http://www.slideshare.net/MarcoCasini1/presentation-raspberry-pi-60819078

Some photos of the project : http://imgur.com/a/iopHl

The project was developed and has been presented within the course of "Pervasive Systems", held by Prof. Ioannis Chatzigiannakis within the Master of Science in Computer Science (MSE-CS), at University of Rome "La Sapienza".

smartdoorbell's People

Contributors

ganzino avatar mattiab31 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.