Find all your DIY electronics in the MakerShed. 3D Printing, Kits, Arduino, Raspberry Pi, Books & more!

Make: Projects

Notifying Doorbell with PushingBox

Use an Arduino and an optional IP camera to build a doorbell that sends you a Push notification on your phone and an email with a picture of the person at the door.

Notifying Doorbell with PushingBox

connectedhome_banner

This project will help you to hack your doorbell to send Push notification and an email with an attached picture when somebody’s at the door. It use the free PushingBox service to delegate all the programming part and make things easy.
UPDATE (July 2013) : For those who don’t know how to program an Arduino, there is a new Internet Of Things wireless device called Notifon, preprogrammed and ready to use. More information at http://www.notifon.net.

Steps

Step #1:

PrevNext
Notifying Doorbell with PushingBox
  • How does it work ?
  • 1. When the doorbell is pushed, the Arduino sends an HTTP request to the PushingBox API.
  • 2. PushingBox launches the user's scenario and gets a picture from the web camera.
  • 3. PushingBox sends a Push notification to the user's phone and a mail message with the picture attached.

Step #2:

PrevNext
Notifying Doorbell with PushingBox
  • Prepare your material. You need:
  • An Arduino + Ethernet Shield
  • A Doorbell
  • A soldering iron
  • A 10K resistor
  • A web camera (optional)

Step #3:

PrevNext
Notifying Doorbell with PushingBoxNotifying Doorbell with PushingBoxNotifying Doorbell with PushingBoxNotifying Doorbell with PushingBox
  • Open your doorbell.
  • Solder wires to the button's terminals.
  • Close the doorbell.

Step #4:

PrevNext
Notifying Doorbell with PushingBox
  • Plug the wires into the Arduino.
  • One wire on the 5v pin;
  • One wire on the 3rd input pin;
  • The 10K resistor between GND and the 3rd pin.

Step #5:

PrevNext
Notifying Doorbell with PushingBox

Test the connectivity with a simple Arduino program.

Step #6:

PrevNext
Notifying Doorbell with PushingBox
  • The hardware part is finished. Let's define the way you will be notified.
  • Go to http://www.pushingbox.com.
  • Login with your Google account.
  • Go to the My Services page.
  • Click on Add a service.

Step #7:

PrevNext
Notifying Doorbell with PushingBoxNotifying Doorbell with PushingBoxNotifying Doorbell with PushingBox
  • Click on the service by which you want be notified.
  • Use Prowl or Pushme.to for iPhone Push notification;
  • Notifry for Android Push notification;
  • Toasty for Windows Phone Push notification.
  • Enter the name of your new service and fill in the API that this application gave you when you installed it.
  • Click Submit.

Step #8:

PrevNext
Notifying Doorbell with PushingBoxNotifying Doorbell with PushingBoxNotifying Doorbell with PushingBox
  • Now, go to the My Scenarios page.
  • Create a scenario called "Somebody's at the door".
  • Click on Create scenario.
  • Click on Add an Action.

Step #9:

PrevNext
Notifying Doorbell with PushingBoxNotifying Doorbell with PushingBoxNotifying Doorbell with PushingBoxNotifying Doorbell with PushingBox
  • First, add an action using the Email Service.
  • Fill in the mail Subject and the Body.
  • The third field is optional and is for attaching a shot from your IP camera to the email. Fill in the URL (publicly reachable) of your web camera. The camera's output must be a picture less than 100KB in size.
  • Do the same with your Push notification service and click the Back button.

Step #10:

PrevNext
Notifying Doorbell with PushingBox
  • Your scenario is now created.
  • Click on "Test" to test the scenario.
  • You should receive a Push notification on your phone and an email.
  • Make a note of the "DeviceID" value of this scenario. You will paste it into the Arduino code.

Step #11:

PrevNext
Notifying Doorbell with PushingBox
  • Download the Arduino source code from the PushingBox API page and open it.
  • In the #define DEVID1 line, paste the DeviceID of your scenario. Make sure you enclose it in quotes as shown.
  • Compile the code and program your Arduino.
  • You're done! Test it, install it on your door and enjoy! :)

Comments

  1. Jake McMillian says:

    The Arduino Uno should work great for this job: http://amzn.to/ItkkQT
    You’ll also need an Arduino Ethernet Shield: http://amzn.to/JZxI1a
    And an Internet-enabled webcam: http://amzn.to/JZxKWU

    1. Rafael Gervásio says:

      Ei amigo, para fazer esse projeto é necessário o Arduino Uno e o Arduino Ethernet Shield?

    2. Milan D says:

      >And an Internet-enabled webcam: http://amzn.to/JZxKWU
      As far as I see the cam you posted here is not an IP cam. I’m not sure you can access those images via web services.

  2. Goli Mohammadi says:

    We also have a great selection at the Maker Shed: http://www.makershed.com/SearchResults.asp?Search=arduino&Submit=Search

  3. Eric Koelle says:

    *Update* – Figured it out. This is how you do it using a Foscam camera:

    http://URL:PORT/snapshot.cgi?user=USERNAME&pwd=PASSWORD

    Just replace the URL, PORT, USERNAME and PASSWORD with your own and you should be good to go.

  4. Brian Isenstein says:

    Looks like it’d still ring the bell, as they didn’t disconnect any part of the doorbell circuit. Just added the 2 wires to read if the button is open (not pressed) or closed (pressed).

  5. Jay Bryon says:

    For a wireless doorbell, it’s pretty much that simple, but if you’re old-school with a wired doorbell and transformer off house current, you’ll want to check voltage first. You could get away with just reading the terminals with the Arduino, but if there’s a common ground between the Arduino and the doorbell, you might get excessive voltage to the board and let out the magic smoke, so to speak. This is where I’d opto-isolate it, something as simple as a voltage-appropriate bulb facing a cds, in a tube of black heat-shrink or electrical tape, with the CDS (photoresistor) read by the Arduino. But that’s just one approach.

    1. Milan D says:

      connecting my arduino to the bell actually makes the bell ring constantly. Anyone knows how i could solve this?

  6. Boj says:

    Look for a WiFly shield or similar (not to advertise, but they sell it on SparkFun [only place I know of that sells one])

  7. Bader Rashed says:

    same my Question is it Ethernet or WiFi or Bluetooth to the adurino which is attached to the doorbell?

  8. Tommy Inglis says:

    I bought the camera here http://amzn.to/JZxKWU and was curious if you could offer any insight into discovering the URL?

    1. Milan D says:

      this is not what you need. you need an ip cam

  9. Petar says:

    Hi Brian, i would like to talk to you about ARM, cose like you im also trying to use it instead of a micro, and have problems. btw how did you develop the knocking sensor, and what language did you use?

  10. Loved this user guide, one of the best I have come across! With that being said, I am confused about one aspect of this.
    Not sure why Prowl and Notify My Android (NMA) are being used in this process. These apps are completely unnecessary and complicate this process. PushingBox allows you to send emails directly to ANY email account and twitter (tested this and it works). Most people have email/twitter notification already on their phones so not sure why anyone would need a specialized notification app. Not only that, but the PushingBox Email service allows you to send a photo where Prowl and NMA do not. Also checked the user reviews for NMA and there are known issues with notifications not showing up (experienced this myself on one occasion). Whereas I have never had notification problems with my email. Simplify, simplify; best to use apps and services which are highly reliable and the user is already familiar with whenever possible.

    1. Milan D says:

      >Not sure why Prowl and Notify My Android (NMA) are being used in this process. These apps are completely unnecessary and complicate this process.

      The prowl service sends a notification immediately (+/- 4 seconds) after the button was pressed.

      You would get a notification from your mail only when the mail was downloaded. But e-mail clients on cell phones usually check only every minute for mail so it’s theoretically possible that you got the notification 1 min after the button was pressed.

  11. Rafael says:

    Onde encontro essa mesma campainha?

  12. Michael says:

    I want to do this with a hard-wired doorbell using an opto-isolator. Would the wiring scheme be the same? Also, can someone tell me what the 10K resistor does in this example?

    1. omlow says:

      Hi michael,
      The 10k resistor is there to debonce the input & having a stable reading from the switching.

  13. Mc says:

    Sir, what exact Arduino boards did you used for this project???

  14. CloudyStrife says:

    Hello.
    I am interested in this project. However, I dont see any web camera connection and code. Please give me a full schematic diagram including web camera connection and also full code. Thanks

  15. Excellent idea. Now, smartphones are getting more smarter :-)

  16. sanket says:

    I am doing this project and i purchased ip camera(d-link dcs-930L)..but i am not able to configure it to get image from ip camera from other pc with same ip address.but i am able to access from my pc. pushing box is showing image url not found error.I think i have to assign public ip address to but.but i dont know how to do it.can anybody please help me..?? thanks in advance.:)

  17. Dave Gaffin says:

    I feel goofy for even asking since I am an engineer and this DIY should be straightforward to me…anyway…

    Any chance someone may have out together a VIDEO tutorial on building this out?

    Have a great day and thanks for informing us about this this far.:-)

  18. Raj says:

    i have used this guide and the notifying doorbell is working perfectly except for one problem. i am getting random fake notifications even when nobody has pressed the bell. these notifications occur when i switch on/off a tube light or fan. Please help

    1. Milan D says:

      Hi Raj, I had the same pretty much the same problem and solved it by putting another pull-down resistor (10k) between the Bell wire and Pin 3. Good luck!

  19. Xavi says:

    Can the Arduino Yun be used for this project?

  20. Nathan says:

    Since a Raspberry Pi, has a Ethernet port built into it would this work for the project?

  21. Shap says:

    Hye, can anybody explain to me how to configure my IP cam? how do i make any picture that captured from my cam goes directly to internet and became publicly reachable? if i able to do so, and then how does that picture automatically appears in my notification email? need any help or any slightest clue could give me an idea to further my work on it.. thank you.

    1. Milan D says:

      You first need to find out what the url is to make a snapshot with your ip cam. Something like http://XXX.XXX.XXX.XXX:PORT/snapshot.cgi?user=LOGIN&pwd=PASSWORD

      Then you paste this link in your pushingbox scenario event

  22. Xavi says:

    Hi, I have a Lorex Wireless Network Camera and I have no idea how to find the “picture URL” Can anybody help out on how to obtain this I’ve looked through all the settings and I found nothing. There is a folder with the snap shots saved in it but how do I access them through the push notification??? Any help is greatly appreciated. you can reach me at jleon209@yahoo.com
    with suggestions. Thanks,