In this post I am going to show how to use an Arduino board and BitVoicer Server to control a few LEDs with voice commands. I will be using the Arduino Micro in this post, but you can use any Arduino board you have at hand.
The following procedures will be executed to transform voice commands into LED activity:
- Audio waves will be captured and amplified by the Sparkfun Electret Breakout board;
- The amplified signal will be digitalized and buffered in the Arduino using its analog-to-digital converter (ADC);
- The audio samples will be streamed to BitVoicer Server using the Arduino serial port;
- BitVoicer Server will process the audio stream and recognize the speech it contains;
- The recognized speech will be mapped to predefined commands that will be sent back to the Arduino;
- The Arduino will identify the commands and perform the appropriate action.
The video above shows the final result of this post. Note in the video that BitVoicer Server also provides synthesized speech feedback. This speech feedback is defined in the server and reproduced by the server audio adapter, but the synthesized audio could also be sent to the Arduino and reproduced using a digital-to-analog converter (DAC). In my next post, I am going to show how to use the Arduino DUE, one amplified and one speaker to reproduce the synthesized speech using the Arduino itself.
List of Materials: