I read the data sheets and went over any other info given on the product. First off, I think this is pretty slick with a bunch of pre-determined phrases but also 30-something user defined phrases and triggers. I would love to get one of these guys and start playing with it but I am a little weary about the "picaxe issue". I have played with and coded a number of serial or i2c items that were really designed with a arduino or other processor in mind. These items have worked with the picaxe chips that I use however, almost all have requrired tweaking: I have had to bump up processor speed for high baud rates, and done some hex/dec/etc conversions to keep the picaxe from throwing any fits. Most everything I have used has worked with only small issues. I.e. my blinkm's at times require a negative number to be sent which a picaxe can't do.
Now back to this voice recognition module...
I saw the little video included on the spark fun website and was a bit confused. It seemed that the software included with the product is designed to work specifically with thier microprocessor board in addition to other instructions/ info that seems to show the same.
Question: If anyone has the time or is curious, please go through the data sheets, etc and see what you see in terms of setting up and running this guy in more of a stand alone mode. I would give my left nut for a walk through on this one. Let us all know what you find as I would assume that many people here would be curious about a $60 solution to a voice command problem.
Upon power up, the supplied VRbotGUI software automatically downloads a roboBASIC bridge program to the controller board, which will allow immediate voice control of the robot with the built-in SI command set.
It seems that the GUI on the computer talks to their controller board. Thier controller board is programmed with a supplied code. My question really is that if I don’t use thier board, can I still use thier GUI? I can’t imagine that I would be able to modify their code or in any other way, get my controller board to work with thier GUI.
As if you have to use their board as a voice interface. It’s the board that recognises voice and translates this to a set of commands. These commands go from the voice board (for want of a better term) to your controller board. It’s then up to your controller to act accordingly. Using the Arduino example, the roboBASIC bridge is a software bridge between the PC and Arduino (via UART by the looks of it) and the voice board. I assume this is to let you train the board to your voice and make your own set of voice commands (e.g., the “dance” and “sing” part in the video).
In short you need their board to do the voice recognition, the PC bits to train it up.
Sorry if this isn’t too much help. Doubt I can go further without gaving one to play with; which is tempting I must admit.
I have no problem going through data sheets to “picaxe’ify” some serial commands but this is looking like more of a pain in the ass. I have gone through all the information again and (correct me you see different) that their processor board, a pic or arduino is needed to work with the code they supply on thier website. Without it, one can not train it. Is this what you are understanding as well? I would wonder if I could “teach” it and then use it as a stand alone…
Man, this is driving me nuts. 60 bucks for (albeit slow and simple) voice control and I can’t just get one of my brains to talk to it!
Chris, my robot MiniEric uses this voice recognition module. I am using it with Arduino, but here are my findings. The Bridge code did not work for me, so I used the FTDI Basic module that I use to program my self made Arduino boards to link the VRbot module to the PC. It gets power from the USB, so you don’t need an extra regulated power. You have to use their PC software to train the new commands that can be in any language. Why? Because the board records a sample sound and later it compares any recognized sound to the samples stored onboard. On the microcontroller part, you can use the UART or a software serial port, whatever you like. There are some functions that actually talk to the board that you need to convert to picaxe basic (I wish you good luck with that, I’m not a picaxe fan…). The commands are stored in the VRbot module in different sets. The most important set is the trigger, that has the SI word “Robot” and you can add yours (mine is MiniEric). Then you have to train commands and then arguments for the commands and store them in different sets (Robot = trigger, Fetch = command, a Beer = argument). When you want the robot to listen for voice commands, you ask the VRbot module to listen for the trigger word. When a successful return happens, you ask the module to listen for the command, and after that is recognized, you ask it to listen for the argument. After the argument is recognized, the robot can proceed with the proper action (go to the fridge and get that beer). If you use the UART, you may be able to use an interrupt to detect when the successful return comes in, so the robot can go about and do things while waiting for a voice command. Take a look at my SpeechController module for my MiniEric robot attached on his page.