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

micro:bit Quick Start Kit
Design 3D Model Using TinkerCAD and Print
3D Print Lithophane for Hari Raya Aidilfitri
With Raspberry Pi Imager, you can write Raspberry Pi OS and remote SSH easier
3D Printing Pelita Raya
Tutorials of Cytron Technologies Scroll to Top