✨ Use RCAPP and get 5% off 👇
Skip to content
Free Delivery on Orders Above Rs 999/- Pan-India
Cash on Delivery Available for Orders above Rs.500/- and Upto Rs 3000/-
SAVE more when you BUY more. Upto 30% Off on BULK PURCHASE
GST Invoices for Your Business
Dedicated Technical Support Team
Safely Delivering Genuine Products PAN INDIA

Build a Smart Doorbell Using Arduino

Build a Smart Doorbell Using Arduino
-
Written By - Robocraze -
📅 Updated on 16 Jul 2026
Summarize with AI
✅ Prompt copied

Summary

A doorbell is one of the most common electronic devices found in homes, but with a microcontroller like Arduino, it can become much more than a simple push-button circuit. By integrating sensors, buzzers, and programmable logic, you can build a smart doorbell that not only alerts occupants when someone is at the door but can also be expanded with features such as visitor detection, wireless notifications, cameras, and IoT connectivity.

This project is an excellent introduction to Arduino because it combines digital input handling, output control, debouncing techniques, and simple embedded programming into a practical home automation project. It also serves as the foundation for more advanced smart home systems.

In this tutorial, we'll build a Smart Doorbell using an Arduino Uno, a push button, an active buzzer, and an LED status indicator. The design can later be upgraded with PIR sensors, cameras, Wi-Fi modules, or mobile notifications.

Build a Smart Doorbell Using Arduino - Cover image

How Does a Smart Doorbell Work?

The system continuously monitors the state of a push button installed near the entrance.

When the button is pressed:

  • The Arduino detects the button press.
  • The buzzer produces a doorbell sound.
  • An LED lights up to indicate that the doorbell has been activated.

Once the button is released, the buzzer stops and the LED turns OFF.

Smart Doorbell using Arduino

Although this project uses a simple push button, the same logic can later be extended to include:

  • Motion detection
  • Face recognition
  • Smartphone alerts
  • Visitor logging
  • Smart locks

Components and Supplies

💥 Hot deal
Original Arduino Uno R3 microcontroller board with ATmega328P and USB port - Arduino Uno Board -RobocrazeOriginal Arduino Uno R3 microcontroller board with ATmega328P and USB port - Arduino Uno Board -Robocraze

    Arduino Uno R3 Original

    Arduino UNO R3 Original The Arduino Uno R3 is a microcontroller board based on the ATmega328P chip and is widely recognized as the best original Arduino Uno board for beginners and projects. This board has 14 digital I/O pins (6 support PWM), 6 analog...
    Rs 2,619/-
    Rs 2,619/-
    Rs 2,649/-
    Save Rs 30/-
    HCSR501 PIR Motion Sensor (Passive Infrared Sensor)HCSR501 PIR Motion Sensor (Passive Infrared Sensor)

      HCSR501 PIR Motion Sensor (Passive Infrared Sensor)

      HCSR501 PIR Motion Sensor The HC-SR501 PIR Motion Sensor Module is used to detect the motion of a human body within the sensor’s range. It is often referred to as a PIR sensor, “Pyroelectric”, “Passive Infrared” and “IR motion sensor” device. This PIR motion...
      Rs 64/-
      Rs 64/-
      Rs 85/-
      Save Rs 21/-
      🔥 Trending
      ESP32 NodeMCU (38-Pin) WiFi + BLE – Ideal for IoT. -Nodemcu ESP Board -RobocrazeESP32 NodeMCU (38-Pin) WiFi + BLE – Ideal for IoT. -Nodemcu ESP Board -Robocraze

        ESP32 (38 Pin) WiFi + Bluetooth NodeMCU-32 Development Board

        ESP32 (38 Pin) WiFi + Bluetooth NodeMCU Development Board The ESP32 (38 Pin) WiFi + Bluetooth NodeMCU Development Board is a powerful microcontroller designed for IoT, home automation, robotics, and embedded system development. Built around the ESP-WROOM-32 module, it combines a high-performance dual-core processor...
        Rs 381/-
        Rs 381/-
        Rs 599/-
        Save Rs 218/-
        A6 GSM Module - A6 GSM Module for SMS, voice & GPRS applications. -RobocrazeA6 GSM Module - A6 GSM Module for SMS, voice & GPRS applications. -Robocraze

        A6 GSM Module

        A6 GSM Module The GPRS Pro Serial A6 GPRS GSM Module Core DIY Development Board is a professional-grade development board that allows you to create your own IoT projects using the GPRS A6 module. The board supports dual-band GSM/GPRS networks and can be used...
        Rs 683/-
        Rs 683/-
        Rs 769/-
        Save Rs 86/-
        ESP32 CAM WiFi Module + OV2640 Camera – AI & streaming-ready. -Nodemcu ESP Board -RobocrazeESP32 CAM WiFi Module + OV2640 Camera – AI & streaming-ready. -Nodemcu ESP Board -Robocraze

          ESP32 CAM WiFi Module with OV3660 Camera Module 3MP

          ESP32 CAM WiFi Module with OV3660 Camera Module 3MP The ESP32 development board with Cam WiFi Module is a powerful and versatile solution for IoT enthusiasts and developers in India. Featuring a high-quality 3MP OV3660 camera, it delivers reliable performance for real-time image capture...
          Rs 723/-
          Rs 723/-
          Rs 780/-
          Save Rs 57/-
          Arduino UNO+WiFi R3 – Smart Arduino Board with ATmega328P & ESP8266 for IoT. -Arduino Boards -RobocrazeArduino UNO+WiFi R3 – Smart Arduino Board with ATmega328P & ESP8266 for IoT. -Arduino Boards -Robocraze

            Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G Compatible Board

            CH340G Board compatible with Arduino The Uno+WiFi R3 is a fully integrated board that combines the Uno R3 ATmega328 microcontroller with the WiFi ESP8266 chip, along with 8Mb of memory, all on a single board. Inspired by the widely used arduino uno, this board...
            Rs 459/-
            Rs 459/-
            Rs 749/-
            Save Rs 290/-
            RC522 RFID 13.56MHZ Reader Writer Module - RC522 RFID Module 13.56MHz for contactless card reading & writing. -RobocrazeRC522 RFID 13.56MHZ Reader Writer Module - RC522 RFID Module 13.56MHz for contactless card reading & writing. -Robocraze

              RC522 RFID 13.56MHZ Reader Writer Module

              RC522 RFID 13.56MHZ Reader Writer Module This RC522 RFID Card Reader Module 13.56MHz is an MFRC522-based Module that can be used in a wide range of applications. RC522 is the highly integrated RFID card reader and writer that works on non-contact 13.56mhz communication, is...
              Rs 89/-
              Rs 89/-
              Rs 114/-
              Save Rs 25/-

              Components Required

              Electronics

              Optional Components

              • PIR Motion Sensor
              • ESP32 Development Board
              • OLED Display
              • Relay Module
              • RFID Module
              • Camera Module
              • Wi-Fi Module
              • GSM Module

              Understanding the Components

              Arduino Uno

              The Arduino Uno is the controller of the project.

              It continuously monitors the push button and controls the buzzer and LED whenever the button is pressed.

              Push Button

              The push button acts as the doorbell switch.

              When pressed, it completes the circuit and sends a HIGH signal to one of the Arduino's digital input pins.

              A pull-down resistor is used to ensure the input remains LOW when the button is not pressed.

              Active Buzzer

              An active buzzer contains an internal oscillator.

              Unlike a passive buzzer, it only requires a HIGH signal from the Arduino to generate sound, making it ideal for beginner projects.

              LED

              The LED provides a visual indication whenever the doorbell is activated.

              It can also be used for debugging during testing.

              Circuit Connections

              Arduino Doorbell Circuit Connections

              Push Button Connections

              • Connect one terminal of the push button to the 5V pin on the Arduino.
              • Connect the opposite terminal of the push button to Digital Pin 2 on the Arduino.
              • Connect one end of a 10kΩ resistor to Digital Pin 2.
              • Connect the other end of the 10kΩ resistor to the GND pin on the Arduino.

              The resistor acts as a pull-down resistor, ensuring that the input remains LOW when the button is not pressed.

              LED Connections

              • Connect the anode (positive leg) of the LED to one end of a 220Ω resistor.
              • Connect the other end of the resistor to Digital Pin 8 on the Arduino.
              • Connect the cathode (negative leg) of the LED to the GND pin on the Arduino.

              Buzzer Connections

              • Connect the positive terminal of the active buzzer to Digital Pin 9 on the Arduino.
              • Connect the negative terminal of the buzzer to the GND pin on the Arduino.

              Arduino Power

              • Connect the Arduino to your computer using a USB cable for programming.
              • Alternatively, power the board using a regulated 7–12V DC adapter.

              Building the Project

              Step 1: Assemble the Breadboard

              Place the Arduino Uno next to the breadboard.

              Arrange the push button across the center gap of the breadboard so that each pair of terminals sits on opposite sides.

              Step 2: Connect the Push Button

              Wire the push button according to the circuit connections.

              Ensure that the 10kΩ pull-down resistor is connected correctly.

              An incorrect resistor connection is one of the most common causes of unreliable button readings.

              Step 3: Connect the LED

              Install the LED and its current-limiting resistor.

              Check the LED polarity before powering the circuit.

              The longer leg is the anode, while the shorter leg is the cathode.

              Step 4: Connect the Buzzer

              Wire the active buzzer to Digital Pin 9 and GND.

              If using a passive buzzer instead, the programming logic will need to use the tone() function.

              Step 5: Verify All Connections

              Before powering the Arduino:

              • Check every jumper wire.
              • Verify resistor values.
              • Confirm LED polarity.
              • Ensure the button is correctly positioned.
              • Make sure there are no loose connections.

              Arduino Code

              Upload the following sketch to your Arduino Uno.

              
              // Smart Doorbell Using Arduino 
               
              const int buttonPin = 2; 
              const int ledPin = 8; 
              const int buzzerPin = 9; 
               
              int buttonState = 0; 
               
              void setup() { 
               
                pinMode(buttonPin, INPUT); 
                pinMode(ledPin, OUTPUT); 
                pinMode(buzzerPin, OUTPUT); 
               
                Serial.begin(9600); 
               
              } 
               
              void loop() { 
               
                buttonState = digitalRead(buttonPin); 
               
                if(buttonState == HIGH){ 
               
                  digitalWrite(ledPin, HIGH); 
                  digitalWrite(buzzerPin, HIGH); 
               
                  Serial.println("Doorbell Pressed"); 
               
                } 
               
                else{ 
               
                  digitalWrite(ledPin, LOW); 
                  digitalWrite(buzzerPin, LOW); 
               
                } 
               
                delay(50); 
               
              } 
              

              How the Code Works

              The Arduino continuously checks the status of the push button connected to Digital Pin 2.

              If the button is pressed:

              • The LED is switched ON.
              • The buzzer is activated.
              • A message is displayed in the Serial Monitor.

              When the button is released:

              • The LED switches OFF.
              • The buzzer stops.

              A short delay of 50 milliseconds is included to reduce switch bouncing and improve reliability.

              Testing the Project

              After uploading the code, verify that the system behaves correctly.

              Button Not Pressed

              Expected Result:

              • LED remains OFF.
              • Buzzer remains silent.

              Button Pressed

              Expected Result:

              • LED turns ON immediately.
              • Buzzer produces sound.
              • Serial Monitor displays:

              Doorbell Pressed

              Repeated Button Presses

              Expected Result:

              The doorbell should respond consistently without false triggering or delayed responses.

              Common Problems

              Button Does Not Respond

              Check:

              • Push button orientation
              • Digital Pin 2 connection
              • Pull-down resistor wiring
              • Loose jumper wires

              Buzzer Does Not Produce Sound

              Verify:

              • Buzzer polarity
              • Correct Arduino pin
              • Active buzzer is being used
              • Wiring continuity

              LED Does Not Illuminate

              Check:

              • LED polarity
              • 220Ω resistor
              • Pin assignment
              • Breadboard connections

              Serial Monitor Shows Random Triggering

              This usually indicates a floating input.

              Ensure the 10kΩ pull-down resistor is connected correctly between Pin 2 and GND.

              Doorbell Triggers Multiple Times

              Mechanical push buttons naturally bounce when pressed.

              If multiple triggers occur:

              • Increase the software debounce delay.
              • Implement a proper debounce routine using millis().
              • Use the Arduino Bounce2 library for improved performance.

              Improving the Smart Doorbell

              Once the basic project is working, several enhancements can make it much more useful.

              Motion Detection

              Add a PIR Motion Sensor to detect visitors before they press the doorbell.

              The Arduino can automatically illuminate an entrance light or activate a camera.

              Wireless Notifications

              Replace the Arduino Uno with an ESP32 Development Board.

              This allows the system to send notifications to a smartphone whenever the doorbell is pressed.

              Visitor Display

              Connect a 16×2 LCD or OLED display to show messages such as:

              • Welcome
              • Please Wait
              • Door Open
              • Visitor Detected

              Smart Lock Integration

              A relay module can be used to control an electronic door lock.

              Combined with RFID or keypad authentication, this creates a basic smart access control system.

              Camera Integration

              A camera module can automatically capture an image whenever the button is pressed.

              This forms the basis of a smart video doorbell system.

              Cloud Logging

              Using an ESP32, every doorbell event can be logged to an IoT platform.

              The system can record:

              • Time of visitor arrival
              • Number of button presses
              • Visitor history
              • Remote alerts

               

               

              Final Thoughts

              A Smart Doorbell is one of the most practical Arduino home automation projects because it introduces digital input handling, output control, and event-driven programming through a familiar real-world application. While the basic version uses only a push button, buzzer, and LED, the same architecture can be expanded into a fully connected smart home device with motion sensing, wireless notifications, access control, and cloud connectivity.

              For anyone looking to build a smart doorbell project in India, this tutorial provides a solid foundation in Arduino programming and hardware interfacing while leaving plenty of room for future upgrades as your embedded systems skills grow.

              Excerpt

              Start your home automation journey! Build a simple Arduino smart doorbell with a buzzer, LED, and push button. Get the full circuit diagram and free code here.
              Prev Post
              Next Post

              Leave a comment

              Please note, comments need to be approved before they are published.

              Thanks for subscribing!

              This email has been registered!

              Shop the look

              Choose Options

              Edit Option
              Back In Stock Notification
              Compare
              Product SKU Description Collection Availability Product Type Other Details

              Choose Options

              this is just a warning
              Login
              Shopping Cart
              0 items
              FREE SHIPPING!
              ₹100 OFF
              ₹200 OFF
              ₹999
              ₹2500
              ₹4900
              WhatsApp Chat Chat