We are all fairly aware of the typically wired doorbells that require wires and suitable outlets to operate. As this doorbell system requires wires to assemble, an experienced electrician is also required to do that work properly. Another important problem is that if you have an existing house and need to install a wired doorbell, it needs time and drilling hole which is a hard job. On the other hand, a wireless doorbell is easier to install than a wired doorbell. Although the cost of wireless doorbells is high, it is much better in terms of maintenance than wired doorbells.
Since it does not have a wired system, it does not require an experienced person to install it and can be installed anywhere in the house. Some of the more expensive wireless doorbell systems are equipped with a camera, microphone and other extra facilities but wired doorbells do have not any features like this. But if we customize the wired doorbell like this, it can be costly enough and also it requires more time and wirings.
In today’s project, we are gonna implemented and designed a very simple wireless doorbell system using Arduino and RF modules. We are using a 433 MHz RF module for wireless connectivity purposes. Every wireless system needs an encoder and decoder system. But in this case, we are using two microcontrollers (Arduino) as encoder and decoder.
Must Read Ding Dong Calling Bell Circuit
Project

Circuit Diagram

Components Required
- Arduino (x2)
- 433 MHz RF Module
- 10KΩ Resistor
- Push-Button
- Buzzer
- Breadboard
- Wires
- 5V Power Supply
About Parts of Wireless Doorbell System
433 MHz RF Module
RF module is a radio frequency module which consists of two-part. One is the transmitter part which transmits the encoded radio signal and another is the receiver part which receives the encoded signal. Here I use a 433 MHz RF module for our purpose.
Circuit Connection of Wireless Doorbell System
RF Transmitter Circuit

In this part, we will discuss the circuit connection of the RF transmitter. The block diagram for the doorbell transmitter is shown below.
A doorbell switch is connected between the Arduino pin D5 and the power supply voltage. A pull-down resistor of 10KΩ is connected to pin D5 as shown in figure 1. Pin D11 is connected to the data pin of the RF transmitter module. Lastly, connect VCC to the supply voltage and the ground pin of the transmitter module to the ground.
In here I used a breadboard for connecting the modules, and a push-button is used as a doorbell switch for demo purposes.
RF Receiver Circuit

Similarly, the transmitter part, also need a receiver to set up communication between each other. Here we need to use another Arduino for the RF receiver module.
A +5V voltage is given to the RF receiver module VCC, and the GND pin of the RF module is connected to the ground. The out pin of the RF receiver module is connected to the D12 pin of the Arduino.
The receiver module consists of 4 pins: one pin is grounded, and another pin is for the VCC power supply.
Lastly, to get the output, we use a buzzer as an alert system. Here, we connect pin D7 of the Arduino to the buzzer positive terminal, and the negative terminal is grounded. In the above diagram, a buzzer is connected to pin D7 of the Arduino, and pin D12 of the Arduino is connected to the RF receiver module output pin.
PCB Design
For removing messy wiring and giving a clean look, I designed a PCB prototype for this project. It is also helpful for troubleshooting that runs great without any errors. To design this PCB board, I used EasyEDA as it is too easy to use. For ordering PCB for this, I prefer PCBWay.
Gerber file for Wireless Doorbell RF Transmitter Gerber.
Gerber file for Wireless Doorbell RF Transmitter Gerber.
PCB View


Order PCB From PCBWay
There are so many forums or communities for electronics online in today’s technical world, and one of the famous ones for PCB manufacturing is PCBWay. PCBWay is a place that brings manufacturers and customers together. They have more than a decade of experience in this field of fabrication, prototyping, and assembling PCBs. PCBWay has proved its focus on its customers’ needs in terms of cost-effectiveness, delivery, and quality.
How PCB Manufacturing Process Done in PCBWay
Standard quality for any product needs to be maintained using some parameters. PCBWay gives that opportunity through quality control in designing and manufacturing. At first, they ensure the accuracy, clarity, and validity of the PCB files that we sent to them.
Then all the boards will go through the most stringent tests other than the basic visual check. They adopt most of the testing and inspecting equipment used in the industry, such as Flying Probe Tester, X-Ray Inspection Machine, and Automated Optical Inspection (AOI) Machine. PCBWay has 50+ new engineers on a daily basis around the world using PCBs for their work, who trust for their reliable quality. They produce high-quality pink, orange, grey, and even transparent solder mask. Moreover, according to people’s needs, they can also provide Black core PCB. Check it out for a High-Quality PCB solder mask. There are some pictures below of the new colours of solder musks.



Features of PCBWay
PCB Prototyping & Manufacturing: PCBWay produces FR-4 and Aluminum boards and advanced PCBs like Rogers, HDI, and Flexible and Rigid-Flex boards, at a very reasonable price. Just check this Instant Quote to order premium PCBs for your hobby projects.
PCB Assembly: It not only offers PCB Prototyping but also offers PCB Assembly service. You can order a full PCB board with attached components by uploading your file. SMT & THT assembly starts from only 30$ including free stencil and worldwide shipping. The components can be sourced and provided by PCBWay, or by clients themselves.
Open Source Community: It not only offers PCB Prototype & Assembly service but also gives opportunities to students for sponsorships. I think this is so great. They feature their projects on the website also.
3D Printing & CNC: It also produces Rapid Prototyping like 3D printing, CNC Machining, Sheet Metal Fabrication, and Injection Molding. The quality of the product is too premium and reliable. And also the best part is that you will receive your order within a minimum of 3 days.
PCBWay Store: More boutique gift modules are waiting for you to discover, giving your creativity wings. You can order all types of electronic equipment, components, and many more with exciting offers. Go with the link and buy your needs, PCBWay Store.
Services: PCBWay offers great servicing of its products. According to courier service, it takes only 3 to 15 days to deliver your products. Also, it has a live support facility. Whenever you have any problems, you can always reach a live customer service person to respond to your emails or me.
Guide for Ordering PCB From PCBWay
Working Principle of Wireless Doorbell System
To know how a wireless doorbell system works, first come to the point of the RF Transmitter working.
RF Transmitter
RF Transmitter consists of a SAW resonator, which is tuned to 433MHz frequency, a switching circuit, and a few passive components.
When the input is HIGH, the switch will act as a short-circuit and the oscillator produces a fixed amplitude carrier wave and a fixed frequency for some period of time ‘t’. When the input is LOW, the switch acts as an open circuit and the output will be zero. This is also known as Amplitude Shift Keying.
RF Receiver
RF receiver consists of an RF tuned circuit, an amplifier circuit, and a phase lock loop circuit.
An RF tuner is generally used to tune the circuit to a particular desired frequency, which needs to meet the transmitted frequency. An amplifier circuit is also used here to amplify the particular frequency from all other distorted signals and to increase the sensitivity of the particular frequency.
Phase Lock Loop Circuit
A phase lock loop circuit is a circuit also called PPL that is used in types of equipment in which we want a highly stable frequency from a low-frequency signal. A PLL is a negative feedback system that consists of a voltage-controlled oscillator and a phase comparator. It is connected in such a way that the oscillator frequency always matches the input signal.
In this PLL circuit, two signals i.e., the reference signal and the signal from the voltage-controlled oscillator, is given as inputs to the phase detector and the output from the phase detector the difference between both the inputs, and this output is the phase difference of both the signals. This output contains frequency components, which are the sum and difference of the signals. So, this output is given as input to the low pass filter, which allows only low frequencies, and doesn’t allow the high-frequency signals to pass through. The output of the low pass filter is fed to a voltage-controlled oscillator (VCO), and this input acts as a value to the VOC, which must be changed to decrease the phase difference between both signals. The change in the VCO takes place until the phase difference is minimal, or the output of the phase detector has a constant error output. This results in the loop lock situation.
With all these components, the receiver receives the signal from the antenna which is then tuned by RF tuned circuit and this weak signal is amplified using OP-Amp, and this amplified signal is further used as input to PLL, which makes the decoder lock onto the incoming digital bits which gives an output which is less in noise.
Arduino Code For Transmitter
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <SPI.h> RH_ASK driver; void setup() { Serial.begin(9600); pinMode(5,INPUT); if (!driver.init()) Serial.println("init failed"); } void loop() { if(digitalRead(5)==HIGH) { const char *msg = "a"; driver.send((uint8_t *)msg, strlen(msg)); driver.waitPacketSent(); delay(200); } } |
Arduino Code For Receiver
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | #include <RH_ASK.h> #include <SPI.h> #include "pitches.h" //Frequency for music #include "themes.h" //Add note vale and duration RH_ASK driver; void setup() { Serial.begin(9600); if (!driver.init()) Serial.println("Init Failed"); else Serial.println("Done"); } void Play_Pirates() { for (int thisNote = 0; thisNote < (sizeof(Pirates_note)/sizeof(int)); thisNote++) { int noteDuration = 1000 / Pirates_duration[thisNote]; //Convert duration to time delay tone(8, Pirates_note[thisNote], noteDuration); int pauseBetweenNotes = noteDuration * 1.05; delay(pauseBetweenNotes); noTone(8); } } void loop() { uint8_t buf[1]; uint8_t buflen = sizeof(buf); if (driver.recv(buf, &buflen)) { Serial.println("'He is a Pirate' "); Play_Pirates(); Serial.println("Stop"); } } |