Aim and scope of the Project:
The main aim of this project is to design a Voice Controlled Candy Bot using an Arduino UNO and Bluetooth communication. The bot responds to voice commands received from a smartphone application and displays different emotions and actions using an RGB LED. This project demonstrates wireless communication, voice-based control, embedded systems programming and human-machine interaction.
The system provides an interactive platform where users can control the bot through simple voice commands. It helps students understand Bluetooth communication, Arduino programming, RGB LED control and mobile-based automation. The project can be extended for smart toys, educational robots, assistive devices and interactive robotic systems.
1. Construction of the Project
This project is implemented using an Arduino UNO, HC-05 Bluetooth module, RGB LED and a smartphone running the Arduino Bluetooth Connect application.
Components Required
| Component | Purpose |
|---|---|
| Arduino UNO | Main controller |
| HC-05 Bluetooth Module | Wireless communication |
| RGB LED (Common Cathode) | Emotion indication |
| 220 Ω Resistors (3 Nos.) | Current limiting |
| Breadboard | Circuit assembly |
| Connecting Wires | Interconnections |
| Smartphone | Voice command input |
| Arduino Bluetooth Connect App | Voice control interface |
Pin Connections
The following table shows the component/device connections to Arduino UNO board pins.
| Arduino UNO Pin | Connected Device | Function |
|---|---|---|
| D2 | RGB LED Red Pin | Anger indication |
| D3 | RGB LED Green Pin | Happy indication |
| D4 | RGB LED Blue Pin | Sad indication |
| D10 | HC-05 TX | Bluetooth communication |
| D11 | HC-05 RX | Bluetooth communication |
| 5V | HC-05 VCC | Power supply |
| GND | HC-05 GND | Common ground |
Circuit Design and Construction
After collecting the required components, the circuit is assembled according to the circuit diagram designed with Cirkit Designer software.
.png)
The HC-05 Bluetooth module is connected to the Arduino UNO through Software Serial communication using pins D10 and D11.
The RGB LED is connected through current-limiting resistors to protect the LED from excessive current. Arduino hardware D2 pin is connected to RED pin, D3 pin is connected to GREEN pin and D4 pin is connected to BLUE pin .

The complete physical hardware with connections is placed inside the dancing toy as shown in the figure below.

The smartphone is paired with the HC-05 Bluetooth module. Voice commands spoken through the Arduino Bluetooth Connect application are converted into text and transmitted wirelessly to the Arduino UNO.
The Arduino continuously monitors the incoming Bluetooth data and performs the corresponding action based on the received command.
2. Programming
Flow Chart
The following flow chart illustrates the working logic of the Voice Controlled Candy Bot.
Start System
↓
Initialize Bluetooth Module
↓
Wait for Voice Command
↓
Receive Command from Smartphone
↓
Compare Command
↓
Anger → RED LED ON
Happy → GREEN LED ON
Sad → BLUE LED ON
Dance → RGB Color Sequence
Take rest → LEDs OFF
Wake Up → WHITE Color
↓
Repeat ContinuouslyArduino Program
The Arduino IDE is used to write, compile, and upload the program into the Arduino UNO board.
The program receives Bluetooth commands from the HC-05 module and controls the RGB LED according to the selected emotion or action.
Supported Voice Commands:
• Anger
• Happy
• Sad
• Dance
• Take Rest
• Wake Up
The complete Arduino program is provided in the source code section below.
#include <SoftwareSerial.h>
String value;
int TxD = 11;
int RxD = 10;
const int redPin = 2;
const int greenPin = 3;
const int bluePin = 4;
SoftwareSerial bluetooth(TxD, RxD);
void setColor(bool r, bool g, bool b)
{
digitalWrite(redPin, r);
digitalWrite(greenPin, g);
digitalWrite(bluePin, b);
}
void setup()
{
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
Serial.begin(9600);
bluetooth.begin(9600);
setColor(0, 0, 0);
}
void loop()
{
if (bluetooth.available())
{
value = bluetooth.readString();
value.trim();
value.toLowerCase();
Serial.println(value);
// ANGER = RED
if (value == "anger")
{
setColor(1, 0, 0);
Serial.println("Angry Mode");
}
// HAPPY = GREEN
else if (value == "happy")
{
setColor(0, 1, 0);
Serial.println("Happy Mode");
}
// SAD = BLUE
else if (value == "sad")
{
setColor(0, 0, 1);
Serial.println("Sad Mode");
}
// TAKE REST = OFF
else if (value == "take rest")
{
setColor(0, 0, 0);
Serial.println("Sleep Mode");
}
// WAKE UP = WHITE
else if (value == "wake up")
{
setColor(1, 1, 1);
Serial.println("Wake Up Mode");
}
// DANCE = MULTICOLOR EFFECT
else if (value == "dance")
{
Serial.println("Dance Mode");
for (int i = 0; i < 3; i++)
{
setColor(1, 0, 0); // Red
delay(300);
setColor(0, 1, 0); // Green
delay(300);
setColor(0, 0, 1); // Blue
delay(300);
setColor(1, 1, 0); // Yellow
delay(300);
setColor(1, 0, 1); // Purple
delay(300);
setColor(0, 1, 1); // Cyan
delay(300);
setColor(1, 1, 1); // White
delay(300);
}
}
}
}3. Execution and Operation
The Arduino program is uploaded using the Arduino IDE.
After uploading:
- Power ON the Arduino UNO.
- Pair the smartphone with the HC-05 Bluetooth module.
- Open the Arduino Bluetooth Connect application in Smartphone App.
- Check the Connect is establish in the App.
- Press the Voice Command button.
- Speak any supported command.
The Arduino receives the command and immediately updates the RGB LED according to the selected emotion.
Emotional Responses
• Anger → Red Color
• Happy → Green Color
• Sad → Blue Color
• Dance → Multiple Color Animation
• Take Rest → All LEDs OFF
• Wake Up → White Color
This creates an interactive Candy Bot capable of expressing emotions using color patterns.
4. Video Demonstration
The operation of the Voice Controlled Candy Bot is demonstrated through the attached video. The video shows how voice commands received through Bluetooth are processed by the Arduino UNO to generate different emotional states and actions using the RGB LED.
The demonstration highlights real-time wireless control, Bluetooth communication, and emotion-based visual interaction between the user and the Candy Bot.
Applications
The current project device is useful in different applications like
• Smart Toys
• Educational Robotics
• Interactive Learning Systems
• Human-Machine Interface Projects
• Bluetooth-Based Automation
• Smart Home Demonstrations
• STEM Education Projects
Future Enhancements
The project can be further enhanced by:
• Adding servo motors for facial movement.
• Integrating sound effects and speech responses.
• Using OLED displays for animated expressions.
• Implementing AI-based emotion recognition.
• Adding IoT connectivity for remote operation.
• Integrating gesture recognition systems.
Conclusion
The Voice Controlled Candy Bot successfully demonstrates a Bluetooth-based interactive robotic system using Arduino UNO. The project receives voice commands from a smartphone and responds by displaying different emotions and actions through an RGB LED. The implementation provides an effective demonstration of wireless communication, embedded systems programming and human-machine interaction.
The project is simple, low-cost and easy to implement while offering an engaging user experience. It serves as an excellent educational platform for learning Arduino programming, Bluetooth communication and voice-controlled automation. With additional sensors and intelligent algorithms, the system can be extended into advanced social robots, smart assistants and interactive robotic applications.
