Arduino Voice Control

61,706

87

60

Posted in TechnologyArduino

Introduction: Arduino Voice Control


Step 1: Part list

Step 2: The Access port

Step 3: Arduino

Step 1: Part List

Hardware:

- Voice recognition module V2 (Ebay ~22$)

- USB to TTL module (~2$)

- Arduino nano (~6$)

- Breadboard

- 3 Led

- some wire

Software:

- Serial tool (Im using Accessport, link in video description)

Step 2: Teach the Voice Module

This module can learn 3x5 voice command. (3 group, each group with 5, max 1300ms long command)

To teach, we need a serial tool: Accessport.

- Start the program, plug in the module with the USB to TTL board.

- From the Monitor/Ports menu, select the voice module. If not see, click refresh.

- In settings menu use this settings:

Baud rate: 9600

Parity bit: NONE

Data bit: 8

Stop bit: 1

Send format: HEX

Receive format: Char

Other settings as default.

- The first time, we need to choose "common" or "compact" mode.

Im using "common mode".

- For this, send "0x36" to the board.:

Just type after the "00000000" AA36, and click "Send".

If its ok, above you can see "common mode" text.

The modul now ready to learn.

- To teach the commands, send "0x11" to the module. (this mean, we record to the first group).

Type after the "00000000" AA11, and click "Send".

- After appear the "START" word above, tell the first command, repeat if ask.

"Finish one" mean, you done with the command, immediately afterwards ask the 4 other command in same way.

"Group 1 finished" mean you are done, close the app, unplug the module,

Step 3: The Arduino Code

- After disconnected the voice module, connect the arduino, and upload this code.

Or download from my google docs. (Link in the video description)

- Leds connected to the pin 9,10,11. (use resistor)

- After code uploaded, unplug the arduino, connect the voice modul:

VCC to 5V

GND to GND

Rx to Tx

Tx to Rx

- Power on the arduino, wait 3-5 sec until ready.

- Talk to your arduino :)

Code:

int redPin = 9;
int greenPin = 10;

int bluePin = 11; byte

com = 0; //reply from voice recognition

void setup() { Serial.begin(9600);

pinMode(redPin, OUTPUT);

pinMode(greenPin, OUTPUT);

pinMode(bluePin, OUTPUT);

delay(2000);

Serial.write(0xAA);

Serial.write(0x37);

delay(1000);

Serial.write(0xAA);

Serial.write(0x21);

}

void loop()

{

while(Serial.available())

{

com = Serial.read();

switch(com)

{

case 0x11:

digitalWrite(redPin, HIGH);

break;

case 0x12:

digitalWrite(greenPin, HIGH);

break;

case 0x13:

digitalWrite(bluePin, HIGH);

break;

case 0x14:

digitalWrite(redPin, HIGH);

digitalWrite(greenPin, HIGH);

digitalWrite(bluePin, HIGH);

break;

case 0x15:

digitalWrite(redPin, LOW);

digitalWrite(greenPin, LOW);

digitalWrite(bluePin, LOW);

break;

}

}

}


2 People Made This Project!

Recommendations

  • Casting Contest

    Casting Contest
  • Microcontroller Contest

    Microcontroller Contest
  • Make it Move Contest

    Make it Move Contest
user

We have a be nice policy.
Please be positive and constructive.

Tips

Questions

Hi, after you teach the board the commands, does the arduino need to stay connected to the PC, or just powered?

60 Comments

In the program,how the switch case option is fixed as 11,12,etc?

Can I upload 1 command by 4 speakers, so that 4 different speakers can give single command to arduino (like 'ON')?

Could this be used to spin a motor a set number of rotations? So, say "Spin" and it could be programmed to spin a motor a number of times?

1 reply

Yes, but need stepper motor for precision stop.

I am trying to train my vr3 module by using the library in GITHUB. When I used a sample code vr_sample_train, I am getting an error as time out. how can i solve this?

1 reply

Me too having the same problem

could we use v3 for arduino mega??????

One think I do not understand: how can you manage each voice command to select a different pin out ( e.g: pin 0) and pin level (e.g: high voltage level / binary `1`) on arduino and/or on the voice recognition module? For example the red, green and blue LEDs are connected to different pins and different voice commands control different pins and thus different LEDs. Sorry, I am so confused. Could you show me a step-by-step instruction. Thank you very much!

Hello, When I plug in the

Voice recognition module and USB to TTL module

and try to access it through the accessport or coolterm, it doesnt detect anything. I've tried this on another computer and the same thing happened. Is there a driver I have to install?

1 reply

Have you been able to find solution for that, I couldn't get mine working. :((( Red light is blinking continuously and no response to access port.

Programmed my voice module and uploaded the code to the Arduino but when I turn the Arduino on the voice module just blinks the red light and it won't go off any ideas how to fix that?

I got the module to recognize my voice. It was the microphone. But now I connect the module again to record new commands and I get @A@B and nothing else as response from the module in the serial app

I cant get my module to recognize voice commands. I get the START but when I speak, I get No Voice no matter how soft or fast or loud or slow I speak.

What is the principle used to recognize voice in this module........

i was wondering .my pc cud not recognize my module.. is there a need for drivers to install or what?

1 reply

No driver need as i know. In the system/hardware cannot see opened port when plug in the module?