Voice Control Candy Bot

Published Jun 11, 2026
 6 hours to build
 Intermediate

The Voice Controlled Candy Bot is an interactive Arduino UNO-based smart robot that responds to voice commands received from a smartphone through a Bluetooth module. The bot uses an RGB LED to display different emotions and actions through color patterns, creating an engaging human-machine interaction experience.

display image

Components Used

Bluetooth Module HC-05
Bluetooth is a wireless communication protocol used to communicate over short distances. It is used for low power, low cost wireless data transmission applications over 2.4 – 2.485 GHz (unlicensed) frequency band.
1
RGB LED
RGB LED
1
Resistor 1 kOhms
Metal Film Resistors - Through Hole 1K ohm 1/4W 1%
1
Male to Female Jumper Wire
Jumper Wires Mach pin jumper wires
1
Connecting Wire Jumper Wires
Connecting Wire Breadboard wires
1
Arduino UNO
Arduino UNO
1
Breadboard Half Size
Breadboard Half Size
1
5VDC Adapters Power Supply
Wall Mount AC Adapters ac-dc, 5 Vdc, 2 A, SW, wall-plug, EU, P5 center pos, level VI, black
1
Arduino IDE software
this software was used for burning the GRBL firmware into ARDUINO UNO
1
Description

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

ComponentPurpose
Arduino UNOMain controller
HC-05 Bluetooth ModuleWireless communication
RGB LED (Common Cathode)Emotion indication
220 Ω Resistors (3 Nos.)Current limiting
BreadboardCircuit assembly
Connecting WiresInterconnections
SmartphoneVoice command input
Arduino Bluetooth Connect AppVoice control interface

Pin Connections

The following table shows the component/device connections to Arduino UNO board pins.

Arduino UNO PinConnected DeviceFunction
D2RGB LED Red PinAnger indication
D3RGB LED Green PinHappy indication
D4RGB LED Blue PinSad indication
D10HC-05 TXBluetooth communication
D11HC-05 RXBluetooth communication
5VHC-05 VCCPower supply
GNDHC-05 GNDCommon ground

Circuit Design and Construction

After collecting the required components, the circuit is assembled according to the circuit diagram designed with Cirkit Designer software.

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 Continuously

Arduino 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:

  1. Power ON the Arduino UNO.
  2. Pair the smartphone with the HC-05 Bluetooth module.
  3. Open the Arduino Bluetooth Connect application in Smartphone App.
  4. Check the Connect is establish in the App.
  5. Press the Voice Command button.
  6. 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.

Codes

Downloads

circuit_image Download

Institute / Organization

SWASHAKTHI ENERGY
Comments
Ad