Do you make time to talk to your Arduino? Maybe you should! The EasyVR Shield 3.0 is a voice recognition shield for Arduino boards integrating an EasyVR module. It includes all of the features of the EasyVR module in a shield form factor that simplifies connection to the Arduino main board and PC.
EasyVR 3.0 is a multi-purpose speech recognition module designed to add versatile, robust and cost effective speech and voice recognition capabilities to virtually any application. EasyVR is the third generation version of the successful VRbot module and builds on the features and functionality of its predecessor. In addition to the EasyVR 3.0 features like up to 32 user-defined Speaker Dependent (SD) commands and 26 built-in speaker independent (SI) commands for ready to run basic controls, the shield has an additional audio line-out/headphone jack, and access to the I/O pins of the EasyVR module.
Note: Unlike V2.0, the EasyVR Shield 3.0 does not come preassembled and will require some soldering and assebly before operation.
It is stated on a footnote page 5 of the user manual that the Quick T2SI Lite License is not included with the EasyVR shield. The license is sold separately. Here is the Quick T2SI Lite product page: http://www.veear.eu/products/quickt2si-lite/ . Customers can purchase the license directly from VeeaR ( ).
The best would be to use the EasyVR Commander software that is on the product page under Documents https://www.sparkfun.com/products/13316 . To connect, you would need to upload the EasyVRBridge.ino example code to the Arduino. The EasyVR Commander software is used to train your EasyVR shield to recognize your voice with a keyword. From there, you can generate custom Arduino code with the “File>Generate Code…” option in the menu. This is why we did not provide the code in a GitHub repository from the video demo https://www.sparkfun.com/videos#all/GyxdT6wTfEE/74 .
You would need a microcontroller to control the shield and the I/O pins. We used a basic circuit and code to turn on an LED (experiment 1) and DC motor (experiment 12) from the SIKv3.2 https://learn.sparkfun.com/tutorials/sik-experiment-guide-for-arduino—v32 . The code was integrated in the generated code to turn on the LED and DC motor based on the voice commands.
Example Tutorials and Resources
EasyVR 3 Voice Recognition Shield Using the Arduino Uno video tutorial by “Scott Mon” => https://www.youtube.com/watch?v=QytK7Reo1gY
Arduino: Speech control with the EasyVR Shield => http://tinkr.de/blog/arduino-speech-control-easyvr-shield/
Tutorial: Voice Recognition with Arduino => http://garagelab.com/profiles/blogs/tutorial-voice-recognition-with-arduino.
TEP: Getting Started with EasyVR Commander => http://www.theengineeringprojects.com/2013/04/getting-started-with-easyvr-commander.html.
VeeaR Demos => http://www.veear.eu/demos/
VeeaR App Note => http://www.veear.eu/files/easyvr_appnote_si2function.pdf .
VeeaR Downloads => http://www.veear.eu/downloads/
VeeaR Frequently Asked Questions => http://www.veear.eu/faq/
Looking for an example project? Try hooking a lamp to a relay and control it with your voice!
1.) EasyVR Commander Error Message
If you see this error with the “EasyVR Commander” software:
"A 'EasyVR Shield/Bridge' device has been found, but the 'bridge" software is not responding or it is outdated. You need to manually download the updated "bridge" software to the device (see instructions)."
Try adjusting the MODE jumper as explained in the last thread of this forum post => http://forum.arduino.cc/index.php?topic=198322.0 . The jumper must be in a certain position in order to connect the EasyVR module to the EasyVR Commander software.
It can also be an issue with the solder joints. There were a few customers that did not solder the module or the header pins sufficiently to the board. This is probably the reason why the EasyVR is not detected are not able to connect to the module.
2.) Arduino Error Output
If you see this error message in the Arduino’s output serial monitor:
Bridge not started! EasyVR not detected! . . .
It might not be due to the jumpers not being connected correctly or there is a bad connection from the EasyVR Shield’s header pins to the Arduino microcontroller https://forum.arduino.cc/index.php?topic=345010.0 .
3.) Testing Arduino EasyVR Shield Library below v1.8.0
When using the Arduino EasyVR shield Library below v1.8.0, I’m not exactly sure why the serial output says:
“Bridge not started!”
After extensive testing and analysis with the EasyVRBridge.ino file, it looks like it is setting up the pins to pass the serial data to the EasyVR module. It’s possible that the output means that the bridge has not started between your Arduino and EasyVR Commander. If you are able to connect to the EasyVR Commander software, it might just be an output.
Looking further at the datasheet, it looks like the SW mode uses the EasyVRBridge.ino software as a serial passthrough for pins 12 and 13. When you place the jumper on the PC Mode, this places the Arduino in reset mode for a direction connection on the hardware serial UART pins. Both seem to give you the ability to connect to the EasyVR shield upon testing, observing, and reading the user manuals.
The TestEasyVR.ino file uses the trigger and grouped words that have been trained on the EasyVR module. To train the trigger and grouped words, you need to configure the EasyVR module through the EasyVR Commander software. If you place the jumper on any of the modes besides the SW mode, the Arduino will not execute the code because it disables the Arduino. By removing the jumper the TestEasyVR.ino will begin to execute the code and not detect the EasyVR module. Therefore, the serial output will display ( “EasyVR not detected!” ) in the Arduino Serial Monitor.
4.) Testing Arduino EasyVR Shield Library v1.8.0
When testing the Arduino EasyVR Shield Library v1.8.0, this serial output is normal:
--- Bridge not started! EasyVR detected, version 8 Sound table: n/a Custom Grammars: n/a . . .
It should not affect the EasyVR module. I tested the TestEasyVR.ino file and was seeing the same output. it could be a timing issue when the Arduino starts up to connect to the EasyVR module. The EasyVR module was able to recognize the trigger and group words that were trained. it took a few tries before the EasyVR module could recognize my voice when it was listening.
We learned that the previous release of the EasyVR Shield https://www.sparkfun.com/products/retired/12656 could be used as a stand-alone system by integrating all the training phases in your Arduino code, and believe this should be transferable to the EasyVR Shield 3.0. If you train the EasyVR to recognize the words with the EasyVR Commander software, it will remember it when it is not connected to your computer.
After training the EasyVR shield just as the manual states, we were able to test this shield out using the TestEasyVR.ino sketch file and an Arduino Uno. The example code outputs messages to the Arduino Serial monitor after initializing to indicate the state that it is in or any errors. There is also a beep that I heard when plugging my headphones into the 3mm audio jack connector indicating that the trained words were recognized by the shield and Arduino. Using a 9V battery and unplugging the Arduino Uno from the computer, the EasyVR was still able to recognize the trained messages from memory.
You just need to connect to the computer to train the EasyVR, configure the example code, and upload the code to the Arduino Uno. We recommend looking at the demo tutorial named EasyVR Shield for Arduino - Access Control Demo => http://youtu.be/SThR-jyoplk. We used the demo as a guide to train the EasyVR shield that we had on hand. We changed the variable named “group = 0” to “group = 1” on line 185 of the sketch file in order to test the trained word in the Arduino example code.
3D models are listed on the product page from the manufacturer http://www.veear.eu/downloads/ .
This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.
Skill Level: Rookie - The number of pins increases, and you will have to determine polarity of components and some of the components might be a bit trickier or close together. You might need solder wick or flux.
See all skill levels
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels
Based on 9 ratings:
3 of 3 found this helpful:
Not for the faint at heart. Read the user manual before you buy it. Your video made it seem a lot easier. It could’ve been broken up into better sections.
1 of 1 found this helpful:
It is very easy to use. I like the way of code generation using Easyvr3 commander. I appreciate the Tech support guys…
0 of 1 found this helpful:
I loved ! I am having fun with this shield ! I recommend
0 of 1 found this helpful:
Ótimo produto muito bom, comprei chegou em cinco dias pela UPS, e é excelente.
I had a hard time getting the EasyVR to connect at first, which was solved by proper soldering. User manual could be better if it had section with common errors and resolutions. Not for beginners but very good overall.
We ordered and received two (2) units in order to evaluate them for use in one of our product lines. It does not come with the USB-to-2x3 cable, so that set us back several days (as a product development lab, lost time is always a negative). Assembling the shield was simple and straightforward. We then wasted several man-hours attempting simple communications with the first board via the USB-to-PC interface, and then with an Arduino platform (Arduino is never our first preference) - no success. At that point we visually inspected the pre-assembled EasyVR3 board using 10x magnification and located a solder short on one of the fine-pitch parts, which had to have occurred during PCB reflow during manufacturing, indicating that these boards are not tested before shipping. After removing the short, the module was successfully tested using both the USB-to-PC and Arduino communications/interface methods. The PC-driven menus make additional testing pretty straightforward. However, migrating to a PIC-based platform has not been easy, which means that most users will be married to Arduinos. That’s fine for the hobbyists and this will be a great module for them, but it is a negative factor for serious product development companies. Final Note: If you’re a hobbyist, you will love this product. I would have given it 5 stars if the product had been inspected and tested prior to shipment.
I bought this product to assist a tetraplegic who has very little movement. It worked perfectly. He can now call for assistance, control his t.v. and air conditioning, and we will add more features as time allows.
This is awesome! Please keep us posted on how your project progresses. Helping people solve day to day problems with technology is one of the most upright pursuits. I hope that you had some fun along the way!