So I finally got my VRBot voice recognition module working with my Arduino Duemilanove, it lights an LED plugged into serial pin 9 and ground when I say a word, and it goes out when a different word is said.

The main goal is to get it to rotate a servo 90 degrees when one word is said, and back when the next is said in order to lock and unlock a box from the inside. I am not familiar enough with electronics to know if I can just attach two things to the one 5V pin on the arduino and ground. I saw a breadboard shield that allowed two servos to be powered, but space is limited in this project and id rather just hard wire it if at all possible. I dont want to blow up my board or VRBot so I figured I'd ask for guidance first.

I am not familiar enough with electronics to know if I can just attach two things to the one 5V pin on the arduino and ground.

You can attach any number of things to the +V pin, as long as the total current draw does not exceed the capabilities of the board. Typically, though, you should not be powering the servo from the Arduino. Servos can draw more current than the Arduino should be called on to provide.

Where should I post my VRBot code? It was actually a simple fix, the PDF that came with the thing was a little ambiguous as to how things worked, but I used a lot of trial and error to figure out just how the thing connects and uses SI and SD commands.

As far as powering the servo from a separate power supply, I kind of want to keep things as simple as possible, it will be plugged into the wall using a 5v wall wart and the USB plug. The servo will only use power a small portion of the time, less than 3 seconds every few hours or so, if I am estimating correctly on revolution time with a load.

I could put a battery in for the servo, but I'd like to use that as a last measure, id like the whole thing to be powered by one plug right into the wall.

Hi JCD, I am also a newby and would really appreciate it if could share your code. I've been looking around on the net and everything I see seems to be quite complicated and people don't seem to add commentary line to explain what the seperate line mean.

This is my code below, the most important thing that wasn't too obvious to me is that you need to short pins 2 & 4 and upload this code to actually train SD commands, then short pins 2 & 3 when you want to actually use the commands.

I commented specifically on functionality using ********(Comment)********, so read that, ignore the other stuff.

I'll eventually clean up this code and get rid of everything not important to SD commands that I'm using, but as for right now it's sloppy altered code.

// Set VRbot language to English Serial.println("Setting Language to: English");

VRbot_SetLanguage(0); } }

void loop(){

// implement speaker independent recognition //SI_Recognition();

// or speaker dependent recognition ********Comment out 2 lines above to not use SI sets, and the only thing in the loop should be the one line below******** SD_Recognition(); // according to your need}

/******************************************************************************** Speaker Independent recognition function:** Wait for trigger word 'Robot'* Set wordset 1 * Wait for command MOVE or command TURN, errors or other commands are ignored* Set wordset 2* Wait for command FOWRWARD or command BACWARD for MOVE, errors or other commands are ignored* or* Wait for command LEFT or command RIGHT for TURN, errors or other commands are ignored* ********************************************************************************/

// Speaker Dependent recognition function// Wait for user trigger word set by user with VRBot GUI// Set wordset Group 1 // Wait for command 0 or command 1 set by user with VRBot GUI, other commands are ignored

void SD_Recognition(){ int cmd;

Serial.println("Say Trigger!");

//VRbot_RecognizeSD(0); // start SD trigger word recognition and wait for trigger********I commented this out as I did not want to use a trigger word******** //cmd = VRbot_CheckResult(); // check recognition result********This too, cuz there's nothing to check for********

VRbot_RecognizeSD(1); // start SD recognition group 1 and wait for a command********This uses SD commands from group 1, which is the first group of custom words that aren't trigger words******** cmd = VRbot_CheckResult(); // check recognition result