Bluetooth-Controlled Garage System
For this week's assignment, I am working on a Bluetooth-controlled smart garage door system that allows users to open or close the door remotely using a mobile app (Arduino BlueControl). The system also includes a buzzer alarm for security purposes.
I enjoy building practical solutions that integrate wireless communication and automation. This project is a real-world application of IoT and embedded systems, making it both engaging and functional. Additionally, smart home technology is growing, and automated garage doors are a key feature of modern homes.
Software:
Tinkercad which is a free, web-based application that allows users to create 3D designs, circuit simulations, and code-based projects.
Arduino IDE a software platform used for writing, compiling, and uploading code to Arduino boards. I used it to upload the code to my Arduino Uno.
Arduino BlueControl mobile app which enables users to wirelessly control an Arduino board via Bluetooth communication.
Electronic components
Mini breadboard – A platform to connect all components without soldering.
Jumper Wires – Connects the components and ensures proper electrical flow.
Arduino Uno – Acts as the brain of the system, processing LDR sensor data and controlling the servo motor.
USB Cable.
Buzzer – Provides an alert or emergency signal when activated.
Servo Motor – Adjusts the angle of the solar panel based on LDR readings to maximize sunlight exposure.
Bluetooth module (HC-05) – enables wireless communication between the Arduino and a mobile app, allowing users to remotely send commands to open or close the garage door and activate the alarm system.
Arduino BlueControl
Mini Breadboard
Arduino Uno
Jumper wires
Buzzer
Servo motor
Bluetooth module
(HC-05)
USB Cable
Circuit simulation on TinkerCAD
Circuit Design & Simulation:
I used Tinkercad to simulate the wiring of the HC-05 Bluetooth module, servo motor, and buzzer with the Arduino UNO.
P.S. I simulated the HC-05 Bluetooth module on TinkerCAD using the Timer
This helped ensure proper pin connections and tested how the components interacted before building the actual circuit.
Once the code and circuit simulation worked correctly, I wired the actual components on a breadboard, ensuring all connections matched the simulated design. I tested the system multiple times to check for stability, adjusting resistor values and sensor placement for optimal performance.
The code was developed to enable wireless control of a servo motor (garage door) and buzzer (alarm) using Bluetooth communication through the Arduino BlueControl app.
1️⃣ Setting Up Bluetooth Communication
The HC-05 Bluetooth module was configured using SoftwareSerial BT(0, 1);, where pin 0 (RX) and pin 1 (TX) are used for serial communication.
The BT.begin(9600); function initializes Bluetooth at 9600 baud rate, ensuring proper data transmission between the mobile app and Arduino.
2️⃣ Servo Motor Control for Garage Door Movement
The servo motor is attached to pin 9 and starts at angle 0° (closed position).
The code allows the user to send commands via Bluetooth to increase or decrease the angle by 60° per press, controlling the door's movement.
3️⃣ Buzzer Integration for Security Alarm
If the user presses button ‘3’, the buzzer activates for 1 second, simulating an alarm system.
This can be used as an emergency alert feature in case of unauthorized access.
1️⃣ Simulation & Initial Code Testing
The code was first written and tested using the Arduino Serial Monitor to ensure that the received Bluetooth commands matched user input.
Serial.println(command); was used to display the received command, allowing debugging of Bluetooth communication.
2️⃣ Servo Motor Calibration
The servo was tested to ensure smooth motion between 0° and 180°.
The increment/decrement step was adjusted to 60° to match the expected door movement while preventing unnecessary mechanical strain.
Hardware Implementation & Circuit Assembly
To bring the project from concept to reality, I followed a structured approach in designing, wiring, and programming the system.
1️⃣ Component Selection & Circuit Assembly
I used an Arduino UNO as the main microcontroller, connected to:
✅ HC-05 Bluetooth module for wireless communication.
✅ Servo motor (pin 9) to control the garage door's movement.
✅ Buzzer (pin 7) for the alarm system.
The components were wired on a breadboard, ensuring correct VCC (5V) and GND connections before testing.
2️⃣ Programming & Software Integration
The Arduino IDE was used to write and upload the C++ code, defining functions for:
✅ Receiving Bluetooth commands from the Arduino BlueControl app.
✅ Controlling servo movement for opening and closing the door.
✅ Activating the buzzer when the alarm function is triggered.
3️⃣ Bluetooth Module Configuration & Testing
I ensured the HC-05 Bluetooth module was paired with a friend's smartphone before integrating it into the system.
The Arduino BlueControl app was programmed to send '1' for opening, '2' for closing, and '3' for triggering the alarm.
4️⃣ Physical Testing & Adjustments
The system was tested in real-time by pressing buttons in the Arduino BlueControl app and verifying:
🔹 The servo moved smoothly between locked and unlocked positions.
🔹 The buzzer activated correctly when triggered.
🔹 Bluetooth connection remained stable and responsive.
Circuit connection & implementation
Control Your Door with a Tap!
Title of Media
Bluetooth Module Troubleshooting
Initially, the Bluetooth module was interfering with serial communication, as pins 0 and 1 are used for USB communication.
Solution: The module was disconnected while uploading the code, then reconnected after the upload.
iOS Users
As an iOS user you will struggle finding an alternative for the mobile app on App store.
Solution: Look for a cool friend to borrow their phone just as I did.
Serial Monitor
At the beginning the servo motor were not responding to the mobile application through the bluetooth module, so I added [serial.begin()] to my code and [serial.println()] to debug.
Bluetooth module error
Title of Media
Title of Media
Title of Media