Controlling Arduino Using Voice


Controlling a Maker UNO using voice seems difficult and impossible. But no worries, now we can control the Maker UNO using our voice with the help of Arduino Voice Control Apps and Bluetooth HC-06. This apps is free and available in playstore. Now let’s have a look on how to do it! 


This tutorial use :

  1. Maker UNO
  2. Bluetooth HC-06
  3. Red LED
  4. Green LED
  5. Yellow LED
  6. 220 ohm Resistor x 3
  7. Male to Male Jumper Wire
  8. Breadboard

You can make the hardware connection based on the diagram and table below.

HC-06 : VCCMaker UNO: 5V
HC-06 : GNDMaker UNO: GND
HC-06 : RXMaker UNO: pin 10
HC-06 : TXMaker UNO: pin 11
Yellow LED (+)Maker UNO: pin 4
Red LED (+)Maker UNO: pin 5
Green LED (+)Maker UNO: pin 6
Yellow LED (-)Maker UNO: GND with Resistor
Red LED (-)Maker UNO: GND with Resistor
Greed LED (-)Maker UNO: GND with Resistor
Figure 1 : Circuit Connection


This is step by step on how to use the apps. Check it out!

Figure 2 : Arduino Voice Control App


These are the output of the Arduino based on the voice input through the apps.

onAll LED turn on
offAll LED turn off
yellow onYellow LED turn on
yellow offYellow LED turn off
red onRed LED turn on
red offRed LED turn off
green onGreen LED turn on
green offGreen LED turn off


This is the sample code used for this tutorial. Try it!

This example code is for Controlling Arduino Using Voice Tutorial.
Product page:
Maker UNO:
Created by:
16/07/18 Suad Anwar, Cytron Technologies
#include <SoftwareSerial.h>
SoftwareSerial HC06Serial(11, 10); // (RX,TX)
String value;
int yellow = 4;
int red = 5;
int green = 6;
void setup() {
pinMode(yellow, OUTPUT);
pinMode(red, OUTPUT);
pinMode(green, OUTPUT);
Serial.begin(9600); // start serial communication at 9600bps
void loop() {
if (HC06Serial.available())
value = HC06Serial.readString();
if (value == "on") {
digitalWrite(yellow, HIGH);
digitalWrite(red, HIGH);
digitalWrite(green, HIGH);
if (value == "off") {
digitalWrite(yellow, LOW);
digitalWrite(red, LOW);
digitalWrite(green, LOW);
if (value == "yellow on") {
digitalWrite(yellow, HIGH);
if (value == "red on") {
digitalWrite(red, HIGH);
if (value == "green on") {
digitalWrite(green, HIGH);
if (value == "yellow off") {
digitalWrite(yellow, LOW);
if (value == "red off") {
digitalWrite(red, LOW);
if (value == "green off") {
digitalWrite(green, LOW);
view raw voice_bluetooth.ino hosted with ❤ by GitHub

Thank you

Thank you for reading this tutorial and we hope it helps your project development. If you have any technical inquiry, please post at Cytron Technical Forum.


Circuit Digest


Leave a Comment

Your email address will not be published.

Share this Tutorial

Share on facebook
Share on whatsapp
Share on email
Share on print
Share on twitter
Share on pinterest
Share on facebook
Share on whatsapp
Share on email
Share on print
Share on twitter
Share on pinterest

Latest Tutorial

DIY Digital Alarm Clock Using REKA:BIT With Micro:bit
Display Internet Time (NTP) on micro:bit
DIY Interactive Robot Using REKA:BIT With Micro:bit
BLTouch Installation for Ender 3 with 32-bit V4.2.2 Board
Pick and Send Random Meal’s Option and Locations through Telegram Bot Using Grove WiFi 8266 on micro:bit
Tutorials of Cytron Technologies Scroll to Top