Home Automation System Using Bluetooth Control Report
Home Automation System Using Bluetooth Control Report
Abstract
The growing demand for smart home solutions has driven the need for cost-effective and user-
friendly automation systems. This paper presents the design and implementation of a Bluetooth-
controlled home automation system. Utilizing an Arduino-based microcontroller, a Bluetooth
module, and relay circuits, the system provides wireless control of household appliances via a
smartphone application. The results demonstrate the system's effectiveness in providing reliable
and seamless operation within a 10-meter range. Potential future enhancements include the
integration of Wi-Fi or IoT technologies to expand functionality and communication range.
Keywords
I. Introduction
Home automation systems aim to enhance the comfort, convenience, and energy efficiency of
modern households. Traditional automation solutions often rely on expensive components and
complex installations. In contrast, the proposed system leverages Bluetooth technology, which is
readily available in most smartphones and is cost-effective. This project is intended to control
household devices, such as lights, fans, and other appliances, using a simple Android application.
A. Hardware Components
1. Microcontroller: The core of the system is the Arduino UNO, which processes
commands and controls connected devices.
2. Bluetooth Module: HC-05 is used to enable wireless communication between the
smartphone and the microcontroller.
3. Relay Modules: These are employed to interface the low-power control signals from the
microcontroller with high-power appliances.
4. Power Supply: A regulated power supply ensures stable operation of the entire system.
B. Software Components
1. Android Application: A custom-built application facilitates user interaction, allowing
users to send control commands to the Bluetooth module.
2. Microcontroller Programming: The Arduino IDE is used to program the
microcontroller, implementing a simple protocol for command recognition and device
control.
C. System Architecture
The system operates by receiving commands from the smartphone via Bluetooth. The
microcontroller decodes these commands and triggers the appropriate relay to turn appliances on
or off. Feedback mechanisms ensure reliable operation.
D. Schematic Diagram
The schematic diagram of the system, designed using Proteus software, illustrates the
connections between the Arduino UNO, HC-05 Bluetooth module, relay modules, and household
appliances.
III. Implementation
The circuit consists of an Arduino UNO connected to an HC-05 Bluetooth module and multiple
relays. Each relay is linked to an appliance. The system was simulated in Proteus software to
validate the design before hardware implementation. The Proteus simulation demonstrates the
functionality of the system under different scenarios.
Figure 2. Proteus Simulation Screenshot
B. Hardware Assembly
The Arduino code implemented for this project is included in Appendix D. It enables Bluetooth
communication, relay control, and state memory using EEPROM.
#include <EEPROM.h>
#include <SoftwareSerial.h>
SoftwareSerial BT_Serial(2, 3);
#define Relay1 4
#define Relay2 5
#define Relay3 6
#define Relay4 7
char bt_data;
int load1, load2, load3, load4, power;
void setup() {
Serial.begin(9600);
BT_Serial.begin(9600);
pinMode(Relay1, OUTPUT); digitalWrite(Relay1, 1);
pinMode(Relay2, OUTPUT); digitalWrite(Relay2, 1);
pinMode(Relay3, OUTPUT); digitalWrite(Relay3, 1);
pinMode(Relay4, OUTPUT); digitalWrite(Relay4, 1);
load1 = EEPROM.read(1);
load2 = EEPROM.read(2);
load3 = EEPROM.read(3);
load4 = EEPROM.read(4);
power = EEPROM.read(5);
delay(500);
}
void loop() {
if (BT_Serial.available() > 0) {
bt_data = BT_Serial.read();
}
if (bt_data == 'A') { load1 = 0; EEPROM.write(1, load1); }
if (bt_data == 'a') { load1 = 1; EEPROM.write(1, load1); }
if (bt_data == 'B') { load2 = 0; EEPROM.write(2, load2); }
if (bt_data == 'b') { load2 = 1; EEPROM.write(2, load2); }
if (bt_data == 'C') { load3 = 0; EEPROM.write(3, load3); }
if (bt_data == 'c') { load3 = 1; EEPROM.write(3, load3); }
if (bt_data == 'D') { load4 = 0; EEPROM.write(4, load4); }
if (bt_data == 'd') { load4 = 1; EEPROM.write(4, load4); }
if (bt_data == 'E') { power = 0; EEPROM.write(5, power); }
if (bt_data == 'e') { power = 1; EEPROM.write(5, power); }
bt_data = '0';
if (power == 1) {
digitalWrite(Relay1, 1);
digitalWrite(Relay2, 1);
digitalWrite(Relay3, 1);
digitalWrite(Relay4, 1);
} else {
digitalWrite(Relay1, load1);
digitalWrite(Relay2, load2);
digitalWrite(Relay3, load3);
digitalWrite(Relay4, load4);
}
BT_Serial.print(power);
BT_Serial.print(";");
BT_Serial.print(load1);
BT_Serial.print(";");
BT_Serial.print(load2);
BT_Serial.print(";");
BT_Serial.print(load3);
BT_Serial.print(";");
BT_Serial.print(load4);
BT_Serial.println(";");
delay(500);
}
D. Key Features
IV. Results
The system was tested with various household appliances, successfully controlling devices
wirelessly within a range of 10 meters. The response time was minimal, ensuring seamless
operation. Results are summarized in Table 1.
V. Conclusion
The authors would like to thank their mentors and peers for their guidance and support during
this project. This work was carried out by [Ahmed Hussain] and [Muhammad Atif] as part of a
group effort in the Department of Electrical Engineering, [Nust], [Islamabad], [Pakistan].
References
1. John, D., & Smith, A. (2020). Home Automation Systems: Principles and Practices.
IEEE Press.
2. Brown, R. (2019). "Wireless Control of Home Appliances Using Bluetooth," Journal of
Smart Systems, 34(2), 123-130.
3. Arduino. (2023). Arduino UNO Documentation. [Online] Available:
https://www.arduino.cc
4. HC-05 Bluetooth Module Specifications. (2023). [Online] Available:
https://www.electronicsforu.com
Appendices