Speech Recognition with BitVoicer and Arduino

The "BitVoicer11.h" library can be found in the "Library" folder located inside the BitVoicer's installation folder.
Yes, you can use your computer's mic. Just set it as the audio input in the preferences.

the code written is giving error and #include<BitVoicer.h> is not poping up in a different colour in arduino editor
i have interfaced the library of bitvoicer to arduino and will this problem be solved if i buy the product key for bit voicer?

please respond as fast as possible :slight_smile:

I have already answerd this question, but ...

If you downloaded the 1.1 version of BitVoicer, you have to use the BitVoicer11.h library. Also, The code in this sketch is no longer supported by the new version. Use the code in this post instead: http://arduino.cc/forum/index.php/topic,140766.msg1072337.html#msg1072337; but if you are not using an electret microphone, you will have to make some changes to the code.

Dear BitVoicer Guru,

I downloaded your product last night and have been working with it a little bit. I noticed from the other posts that you have upgraded to the mic attached to the board and gone wireless. I eventually want to get to that point but I'm going to have to wait on parts to arrive in the mail. I did however want to try to get this to work as you had in your first example (mic on the computer with usb connection etc...) The problem is (as mentioned before) that the code has changed. Im new to arduino and I wouldn't mind trying to tear apart the code, and compare to the old code so that I can use the mic on the computer and the newer BitVoicer 1.1 download. I'll probably start on tearing it apart tomorrow, just wondering if you had any suggestions as to where to start and as to what changes to make to the newer code, so that I can use the mic on the computer. Also do you think it would work if instead of the mic (newer version) I could replace it with an audio jack and plug in a headset with a mic?

Thanks for anyone who wants to comment on this.

After going through a bunch of the code I think I found something. Let me know if you think this is the right way to go about it.

In the wireless version:
BitVoicerSerial bvSerial = BitVoicerSerial(); // Instantiates the BitVoicerSerial class

And in the older version:
BitVoicerSerial bvSerial = BitVoicerSerial(0); // Instantiates the BitVoicerSerial class and sets serial to port 0

Could I make the change (adding in the 0) to the wireless version and have it read in the mic data that my computer sends it from BitVoicer?

nvm, ran it on the arduino checker and there is no BitVoicerSerial(int) function. Was there one in the older version?

The new version of the BitVoicerSerial class does not take any parameters, so you can not add 0 to the wireless version of the code. Only the old version would take an int value.

I found the code bellow in the BitVoicer's user manual. It uses the computer's mic to capture audio and does not use a wireless connection (the simplest setup possible). They have another sample code in the manual. I think you should take a look at it (section 5.5).

//Imports the BitVoicer library to the sketch
#include <BitVoicer11.h>

//Instantiates the BitVoicerSerial class 
BitVoicerSerial bvSerial = BitVoicerSerial(); 

//Stores the data type retrieved by getData() 
byte dataType = 0; 
//Stores the state of pin 4 
byte pinVal = 0; 

void setup() 
{ 
  //Starts serial communication at 9600 bps 
  Serial.begin(9600); 
  //Sets digital pin 4 as OUTPUT 
  pinMode(4, OUTPUT); 
  //Turns off pin 4 
  digitalWrite(4, pinVal); 
} 

void loop() 
{ 
  //Updates the state of pin 4 on every loop 
  digitalWrite(4, pinVal); 
} 

//This function runs every time serial data is available 
//in the serial buffer after a loop 
void serialEvent() 
{ 
  //Reads the serial buffer and stores the received data type 
  dataType = bvSerial.getData(); 

  //Checks if the data type is the same as the one in the 
  //Voice Schema 
  if (dataType == BV_BYTE) 
  { 
    //Checks the stored value in byteData by getData() and 
    //changes the value of the pin 
    if (bvSerial.byteData == 0) 
      pinVal = LOW; 
    else 
      pinVal = HIGH; 
  } 
}

is there a free trial? I tried to record something and it says i have to activate the program first.

Here's an Alternative that is free:

You can try BitVoicer if you use the computer's microphone as the input device, but you will need to activate it to be able to send commands to the microcontroller.

Hi, what's the range of the microphone? From how far away does is it able to pick up (and recognize) commands? Thanks.

HELLO try to download and does not open the page

http://www.justbuss.xpg.com.br/BitVoicerTest.zip

please can you send me the file, thanks

email: OESTE24@HOTMAIL.COM

Well, I just tried the link and it works perfectly. I think you should try it again.

Hi,
I'm a beginner to Arduino and I am looking to build something along the lines of your project. I have downloaded and activated Bitvoicer. But for your uploaded Bitvoicer Schema, the link doesn't work for some reason. It eventually shows a domain for sale and is unable to be saved as. Is there any other place where I can take a look at the schema used? Or is there instructions on how to build it? I have a windows computer if that is relevant.

Thanks.

I also uploaded the file to http://www.4shared.com/zip/Q6uYrzguba/BitVoicerTest.html

Questions: Does the software work with the Arduino Due? Also, the sample code with the new BitVoicer software and #include <BitVoicer11.h> doesn't compile at all. Also, I am using a 64-bit version of BitVoicer. Please help asap. Thanks.

I found that it doesn't work with the Due, but I still have compilation problems with the Uno. Please help.

I recently installed the last version of the Arduino IDE and had the same problem. The developer support told me to install the previous version of the Arduino IDE (not the new beta one) which solved the problem. I could also download a new installation package from their site and reinstall BitVoicer.

So I've installed the latest version of Bitvoicer, and am trying to use an Arduino board to do what you accomplished. But there is a problem with the code here:

BitVoicerSerial bitVoicer = BitVoicerSerial(0);

It says "no matching function for call to 'Bitvoicer::BitvoicerSerial(int)'

What does this mean and how can I fix it? I'm using the Bitvoicer11.h library, which I believe is the latest one.

Also, when I try your schema, this message pops up:
"No recognizer of the required ID found."
What does this mean? Am I missing something?

Have you copied the library files to the correct folder in the Arduino IDE installation folder? There are instructions about it in the manual.

I cannot help you with the second error you mentioned. Maibe their support can help.

I had the same errors you are seeing.

I put the .h and .cpp files from the BitVoicer library in the arduino project folder and reopened my project. It now has both files shown as tabs. I then changed the include from <> to "" (double quotes) to include it as a cpp file.

#include <BitVoicer.h> --> #include "BitVoicer.h"

I don't have the bits to make this work yet but I am able to compile the code. Hope this helps.