Introduction: Wireless Doorbell With Email Notification

This is an Internet connected wireless doorbell system that sends an email notification to the user whenever someone rings the doorbell. Whether, you are waiting for an important package to arrive by courier or just don't hear the door bell ringing, this project will work for you!

Step 1: BoM

* Arduino 101 (or Arduino + Bluetooth Module)

* Push Button Switch

* 10kΩ resistor

* Jumper Wires

Step 2: Wiring

* Connect the 10kΩ resistor to one of the pins of the switch - signal pin

* Connect the signal pin to 2 pin 2 on the Arduino.

* Connect the second pin of the switch to GND not he Arduino.

Step 3: Code

#define BLYNK_PRINT Serial
/* Set this to a bigger number, to enable sending longer messages */
//#define BLYNK_MAX_SENDBYTES 128
#include 
#include 
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "YourAuthToken";
BLEPeripheral  blePeripheral;
void emailOnButtonPress()
{
  // *** WARNING: You are limited to send ONLY ONE E-MAIL PER 15 SECONDS! ***
  // Let's send an e-mail when you press the button
  // connected to digital pin 2 on your Arduino
  int isButtonPressed = !digitalRead(2); // Invert state, since button is "Active LOW"
  if (isButtonPressed) // You can write any condition to trigger e-mail sending
  {
    Serial.println("Ding Dong, door bell was pressed"); 
    // Or, if you want to use the email specified in the App (like for App Export):
    //Blynk.email("Subject: Button Logger", "You just pushed the button...");
  }
}
void setup()
{
  // Debug console
  Serial.begin(9600);
  delay(1000);
  blePeripheral.setLocalName("Blynk");
  blePeripheral.setDeviceName("Blynk");
  blePeripheral.setAppearance(384);
  Blynk.begin(blePeripheral, auth);
  blePeripheral.begin();
  Serial.println("Waiting for connections...");
  // Send e-mail when your hardware gets connected to Blynk Server
  // Just put the recepient's "e-mail address", "Subject" and the "message body"
  Blynk.email("your_email@mail.com", "Subject", "My Blynk project is online.");
  // Setting the button
  pinMode(2, INPUT_PULLUP);
  // Attach pin 2 interrupt to our handler
  attachInterrupt(digitalPinToInterrupt(2), emailOnButtonPress, CHANGE);
}
void loop()
{
  blePeripheral.poll();
  Blynk.run();
}

Comments

About This Instructable

474views

20favorites

License:

Bio: Aerospace Engineer working in Software Development with a passion for Hardware.
More by TechMartian:Flying Captain America's Shield - RC PlaneWide Angle ShotsLED Ping Pong With Shift Register
Add instructable to: