Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Smart DoorBell - Make your door smart with Raspberry Pi!


Published on

A project based on Raspberry Pi to have a remote control of your door, simply using your smartphone!

Published in: Engineering
  • Login to see the comments

Smart DoorBell - Make your door smart with Raspberry Pi!

  1. 1. Master of Science in Computer Engineering Class of Pervasive System by: Ioannis Chatzigiannakis 1
  2. 2. Mattia Brunetti in/mattiabrunetti Marco Casini n/marcocasini2 m ABOUT US 2
  3. 3. THE PROBLEM To control the door when you are not at home. To control the hall of an office without need to be there. To control automatic gate without to be in the range. 3 There are many situation where is hard to control your «door»!
  4. 4. OUR SOLUTION We developed a «SmartDoorBell», a device that is always connected to internet, to have a remote control of your door, simply using your smartphone! 4 There are some similar solutions but: 1) Really expensive – more than 200 $ 2) Need a special app to work 3) Are not flexible (e.g. you can’t turn on lights)
  5. 5. POSSIBLE SCENARIOS The purpose of this device is to help people to have easly access at their house and to have a remote control of a door. The focus of this project is about the domestic use of this product. 5
  6. 6. 6 POSSIBLE SCENARIOS We found three main situations: 6 Owner: with beacon Friends: with code Strangers: ring the bell
  7. 7. 7 POSSIBLE SCENARIOS 1/3 7 Owner: with beacon Owner of the house has a beacon device that works like a real key. When he comes back home the «SmartDoorBell» recognise him and unlock the door.
  8. 8. 8 POSSIBLE SCENARIOS 2/3 8 Friends: with code Friends or everyone that would enter in the house, and know the security code, can do that simply typing the code on the numeric keyboard on the door.
  9. 9. 9 POSSIBLE SCENARIOS 3/3 9 Strangers: ring the bell Every time that someone ring the bell the owner receives a Telegram message with a photo and he can decide to take some decisions using Telegram (e.g. take a photo, send/receive vocal messages…)
  10. 10. THE HARDWARE 10
  11. 11. THE SOFTWARE 11 Script Button Script OpenDoorScript Secure Code Our BOT Telegram runs on Raspberry Pi Script Multi-Media
  12. 12. BOT COMMANDS /roll  reply with a random integer, used for test /time  reply with a current time, used for test /photo  take a photo and send it to the owner /video  take a video and send it to the owner /sound  play an audio message from the Raspberry speaker /open  unlock the door /openL  unlock the door and turn on the light for 10 seconds /light  turn on the light for 10 seconds /reboot  reboot the Raspberry Pi /shutdown  shutdown the Raspberry Pi /help  send a document with the list of commands 12
  14. 14. WHAT’S MISSING – THE OWNER For the owner side we want that when he comes back home the door will automatically open. We tried to send an automatic message to our bot with the Telegram API but it’s not so easy to use. 14 We decided to change the implementation of this part.
  15. 15. WHAT'S WRONG WITH TELEGRAM? wrong-telegram-open-api/ 15 1. Telegram’s source code is not an SDK or a library. 2. Strange pieces of code, like setTextColor(0xff757575). 3. Magic numbers for int values like “42540” which are passed as flag values. 4. “If-Else” statements that are too long and too, and really long methods. (i.e. 300 lines of code in one method). 5. Spaghetti code and copy-paste. 6. Only three Activities in such a huge project. 7. Many classes *activity, which extendBaseFragment, which is not actually a Fragment.
  16. 16. HOW TO SOLVE - CASE 1 We developed a simple application for Android that allow the owner to open the door, with just few click, when he enters in the range of the beacon. 16 We would use an App like a real key! PROS Easy to implement Don’t need additional hardware CONS It’s not completly automated Need to have a special app
  17. 17. HOW TO SOLVE - CASE 2 We use Raspberry Pi as a beacon reciever, and the beacon of the owner as a trasmitter. When the Raspberry catches the signal, it performs an action. 17 We would use a Beacon like a real key! PROS Completly automated Don’t need special app CONS Hard to implement You must have a beacon to enter
  18. 18. 18
  19. 19. FIRST PROTOTYPE 19
  21. 21. THIRD PROTOTYPE 21
  22. 22. LAST PROTOTYPE 22
  23. 23. THE «FINAL» PRODUCT 23
  24. 24. 24