كل يوم أقوم بنشر معلومة مفيدة أو فكرة جديدة أو نشاط جديد أو ابتكار . ستجد معلومات عن القراءة والكتابة والابتكارات والرياضة والطبيعة والزراعة وكل ماهو مفيد وجديد . ستجد معلومات عن طائرات الكوادكوبتر ومكوناتها وأحدث التقنيات الجديدة فى هذا المجال. This is my outlet to the world. Here I put new post everyday.

tank offer

Monday, April 2, 2018

Arduino Speech Recognition Module Made Simple

Arduino is the easiest and most popular embedded systems development platform.

Most developers think of Arduino as the first to come in mind when they are in phase of prototyping or trying new concepts on their projects.

Magic of speech control

Have you ever dreamed of controlling your stuff with voice commands?

This may seem like part of sci-fi movie, but in these days this is not a big deal. Long time ago computers has used speech recognition for voice command and for voice typing.

Also mobile phones have seen more advancements in speech recognition through Google and Apple sophisticated speech engines.

But sure voice controlling physical stuff around your home may still have its own magic touch.

What about Amazon Alexa?

Many people may have used Amazon Alexa as their smart home and entertainment platform.

They have seen how it can be used for voice controlling many device since it’s compatible with large number of manufacturers and brands in smart home arena.

But sure Amazon Alexa still doesn’t have that worldwide popularity especially in developed countries due to its expensive price.

With Arduino, you can make your own speech recognition project on the budget and with so little coding and programming experience.


Today I’ll show you how I managed to connect Arduino to a speech recognition module.
All you need for the moment is Arduino board and speech recognition module. 

All the rest are some connections, wire and relays to control your real world.

How it connects to Arduino?

Speech recognition module connects to Arduino through serial port. So you don’t need to waste your time making a lot of connections with Arduino.

At the beginning, I had a hard time figuring how to connect the speech recognition module to Arduino. Serial communication is really simple thing but the problem is the module documentation is not so clear at this point.

When the module is serially connected to Arduino, it affects its connection to the PC for programming and the Serial Monitor application.

SoftSerial() Function

What I had figured out is that the Arduino module connects to speech recognition module through the SoftwareSerial() function.

This acts as virtual serial port. In fact you can have many serial ports in Arduino that can connect to other devices using serial protocol over TTL Transistor to Transistor Logic.

How to program the module?

I have found out that the module can be used as a stand-alone device. It can be also programmed using Arduino, any other microcontroller or even just a PC.

That’s because the module can store a preset database of speech commands to use them in real time application.

This database can be recorded and stored through the training process. This training process is controlled using commands serially sent to the module.


For example, you can send a command to the module to start recoding the voice command. And you can send another serial command to playback the voice command.

You can manage all stored voice commands, add or erase anyone of them as you like.

All those facts has been hidden for me just until I found out that the module connects to Arduino using the SoftSerial()


Pitfall and Solution

Due to unclear information in the module datasheet and documentation, I connected it to Arduino through the serial port. It didn’t work because that serial port was connected to the PC.

Only when I knew that I had to connect the module to pins of Arduino other than those of the serial port, all functions worked fine.

I could connect it to my laptop using FOCA circuit that converts USB signals into TTL.

I used it to configure the module Baud Rate to initialize its communication with Arduino.


And then I started storing voice command into the module useing Arduino libraries and connected it to real devices like LEDs and motors.

I’ll be building more applications using this module, stay tuned.















No comments:

Post a Comment