Legacy Forum: Preserving Nearly 20 Years of Community History - A Time Capsule of Discussions, Memories, and Shared Experiences.

VRbot - Voice Recognition Module for RN-1 now in stock

Hitec robotics including ROBONOVA humanoid, HSR-8498HB servos, MR C-3024 Controllers and RoboBasic
29 postsPage 1 of 21, 2
29 postsPage 1 of 21, 2

VRbot - Voice Recognition Module for RN-1 now in stock

Post by PedroR » Wed Sep 30, 2009 4:59 pm

Post by PedroR
Wed Sep 30, 2009 4:59 pm

Hi all

Following up to our previous announcement we have already got the new VRbot Voice Recognition module for RN-I in our store.

It is available here http://robosavvy.com/store/product_info ... cts_id/571

The module is capable of working with any device that has a UART at TTL level (where Robonova is included).

What makes it so special for Robonova is that the manufacturer was careful enough to develop and polish the whole pack so that assembling and using it with RN-I is very easy and straightforward.

Image

phpBB [media]


Full specs including protocol definition, VRbot GUI and quick start guides are available at the store page.

Cheers
Pedro.
Hi all

Following up to our previous announcement we have already got the new VRbot Voice Recognition module for RN-I in our store.

It is available here http://robosavvy.com/store/product_info ... cts_id/571

The module is capable of working with any device that has a UART at TTL level (where Robonova is included).

What makes it so special for Robonova is that the manufacturer was careful enough to develop and polish the whole pack so that assembling and using it with RN-I is very easy and straightforward.

Image

phpBB [media]


Full specs including protocol definition, VRbot GUI and quick start guides are available at the store page.

Cheers
Pedro.
Last edited by PedroR on Thu Oct 22, 2009 4:35 pm, edited 2 times in total.
PedroR
Savvy Roboteer
Savvy Roboteer
Posts: 1199
Joined: Mon Jun 16, 2008 11:07 pm

Post by PedroR » Thu Oct 22, 2009 4:31 pm

Post by PedroR
Thu Oct 22, 2009 4:31 pm

Hi

Just a quick stop to let you know we have updated the product page for VRbot.
It was looking a bit too technical when that's not the case at all! VRbot is actually quite user friendly.
http://robosavvy.com/store/product_info ... cts_id/571


Here are some recent vids from VRbot (a Boe-Bot controlling a Robonova via audio).
phpBB [media]



As I side note, I believe VRbot will be featured on the next issue of Robot Magazine.

Regards
Pedro
Hi

Just a quick stop to let you know we have updated the product page for VRbot.
It was looking a bit too technical when that's not the case at all! VRbot is actually quite user friendly.
http://robosavvy.com/store/product_info ... cts_id/571


Here are some recent vids from VRbot (a Boe-Bot controlling a Robonova via audio).
phpBB [media]



As I side note, I believe VRbot will be featured on the next issue of Robot Magazine.

Regards
Pedro
PedroR
Savvy Roboteer
Savvy Roboteer
Posts: 1199
Joined: Mon Jun 16, 2008 11:07 pm

VRBot Success and problems

Post by profmason » Tue Oct 27, 2009 2:14 am

Post by profmason
Tue Oct 27, 2009 2:14 am

My VRBot board arrived today. I immediately tried the arduino demo and found that the included Arduino code needs to be fixed up a bit to run. The protocol header file has spare line feeds floating around which will give your compiler strange fits.
To fix this go ahead and edit the protocol.h file to remove the spare line feeds(IE some of the comments wrap around and the compiler tries to interpret them.

It should be mentioned that the arduino sample code assumes you have a POP-BOT and targets a serial LCD. It is fairly easy to replace the LCD calls with serial port calls, but the code does some funny business about how it passes the serial commands from one port to another which is very timing dependent. After getting it to successfully detect the VRBot board and tell me to "Say Trigger" it starts running the recognizer. At this point I was a bit stymied because I was getting nothing back from the recognizer despite my best imitations of an italian accent saying "robot".

I fought with this for a while before deciding to read through the serial protocol. I was able to connect to the board with hyperterm through a level shifter and message it. The big gotcha with this is that when you pass parameters, they don't start with 0,1 etc but A,B,C (A = 0 and B = 2 up to 31.) This is documented by not intuitive. The serial protocol is pretty easy to use once you get your head around it. I would be tempted to implement this directly in your code. (IE just passing the commands through a UART instead of doing the strange bits in the arduino code)

Anyway so I can talk to the board and I set the timeout to 5s. I tell it to start listening again for the trigger "Robot" On each of a dozen tries it times out.

I manage to get the included VRBot GUI working. (It doesn't like the USB to serial port which works fine for messaging, but I do manage to get a serial port that it is happy with. I connect to the board and I add a new trigger and then TRAIN. Uh Oh, the same timeouts I saw when going in through the serial. I try it a dozen of so times and get the same timeouts.

I inspect the board... Hmmm.. That resistor in what I think is the output of the mic is on crooked. My eyes are not that great, but is that a bad solder joint? Hmm, the board is covered with a fair bit of black smoo where the compound over the sensory chip spread over the board, and the board is still covered with flux. Hmm maybe it isn't something I am doing.

Overall a bit frustrating (Ok maybe a lot frustrating), my board doesn't look nearly as pretty as the ones in the pictures. Still no response after about six hours. Is there a bad portion of the board? (It is hard to check the mike since the preamp is onchip. The little electrets only give +- 20 mV which isn't going to show up noticeably on my scope? Any ideas?
My VRBot board arrived today. I immediately tried the arduino demo and found that the included Arduino code needs to be fixed up a bit to run. The protocol header file has spare line feeds floating around which will give your compiler strange fits.
To fix this go ahead and edit the protocol.h file to remove the spare line feeds(IE some of the comments wrap around and the compiler tries to interpret them.

It should be mentioned that the arduino sample code assumes you have a POP-BOT and targets a serial LCD. It is fairly easy to replace the LCD calls with serial port calls, but the code does some funny business about how it passes the serial commands from one port to another which is very timing dependent. After getting it to successfully detect the VRBot board and tell me to "Say Trigger" it starts running the recognizer. At this point I was a bit stymied because I was getting nothing back from the recognizer despite my best imitations of an italian accent saying "robot".

I fought with this for a while before deciding to read through the serial protocol. I was able to connect to the board with hyperterm through a level shifter and message it. The big gotcha with this is that when you pass parameters, they don't start with 0,1 etc but A,B,C (A = 0 and B = 2 up to 31.) This is documented by not intuitive. The serial protocol is pretty easy to use once you get your head around it. I would be tempted to implement this directly in your code. (IE just passing the commands through a UART instead of doing the strange bits in the arduino code)

Anyway so I can talk to the board and I set the timeout to 5s. I tell it to start listening again for the trigger "Robot" On each of a dozen tries it times out.

I manage to get the included VRBot GUI working. (It doesn't like the USB to serial port which works fine for messaging, but I do manage to get a serial port that it is happy with. I connect to the board and I add a new trigger and then TRAIN. Uh Oh, the same timeouts I saw when going in through the serial. I try it a dozen of so times and get the same timeouts.

I inspect the board... Hmmm.. That resistor in what I think is the output of the mic is on crooked. My eyes are not that great, but is that a bad solder joint? Hmm, the board is covered with a fair bit of black smoo where the compound over the sensory chip spread over the board, and the board is still covered with flux. Hmm maybe it isn't something I am doing.

Overall a bit frustrating (Ok maybe a lot frustrating), my board doesn't look nearly as pretty as the ones in the pictures. Still no response after about six hours. Is there a bad portion of the board? (It is hard to check the mike since the preamp is onchip. The little electrets only give +- 20 mV which isn't going to show up noticeably on my scope? Any ideas?
profmason
Robot Builder
Robot Builder
Posts: 7
Joined: Tue Oct 27, 2009 1:38 am

Post by PedroR » Tue Oct 27, 2009 1:28 pm

Post by PedroR
Tue Oct 27, 2009 1:28 pm

Hi profmason

I am sorry to hear about your issue.
It is the first time we at Robosavvy are hearing from a customer with such a complaint.

We have already sold quite a few and they have all been working nicely.

There is however, a pertinent point in your text: the Arduino sample was written for POPbot.
This has raised a couple of questions from customers but the solution is a quick fix to the code, never required a complete rewrite.

The issue is that on the POPbot, one of the boards has a button wired to a one of the Inputs. The code relies on presisng that button to switch between bridge mode and operation mode.
Because the normal Arduino USB board doesn't come with a button on that specific IO pin, you need to change the code so that the trigger between Bridge Mode and Operation Mode is something different.

I post bellow what's being revised in the docs:
The following warnings are being added:
• The program has been developed for the Arduino POP-168 board used in combination with the RBX-168 robot controller board provided with the PopBot robot.

• One of the buttons of the RBX-168 board is connected to the Di2 input of the Arduino POP-168 board and this button is used to switch between normal functioning mode and bridge mode for programming the VRbot module.
Di2 is configured as “input” in the program code with the instruction “pinMode(2,INPUT);” and its value is tested at the beginning of the program to switch between normal functioning mode and bridge mode according to the status of the button.

• If you are using other boards or a native Arduino board, it is important to note that the value of Di2 INPUT is what makes the program switch between Bridge Mode and Operation Mode.
If you wish to implement another button or input as the trigger to switch between the two modes, please review the code around line 52 of the sample.


Other than this we have not seen any other issue with the module and therefore I have asked the manufacturer to review your post here.

Bottom line, if you got the module from us (Robosavvy), you can contact sales@robosavvy.com and we'll offer tech support for it (and a replacement if necessary).

Regards
Pedro.
Hi profmason

I am sorry to hear about your issue.
It is the first time we at Robosavvy are hearing from a customer with such a complaint.

We have already sold quite a few and they have all been working nicely.

There is however, a pertinent point in your text: the Arduino sample was written for POPbot.
This has raised a couple of questions from customers but the solution is a quick fix to the code, never required a complete rewrite.

The issue is that on the POPbot, one of the boards has a button wired to a one of the Inputs. The code relies on presisng that button to switch between bridge mode and operation mode.
Because the normal Arduino USB board doesn't come with a button on that specific IO pin, you need to change the code so that the trigger between Bridge Mode and Operation Mode is something different.

I post bellow what's being revised in the docs:
The following warnings are being added:
• The program has been developed for the Arduino POP-168 board used in combination with the RBX-168 robot controller board provided with the PopBot robot.

• One of the buttons of the RBX-168 board is connected to the Di2 input of the Arduino POP-168 board and this button is used to switch between normal functioning mode and bridge mode for programming the VRbot module.
Di2 is configured as “input” in the program code with the instruction “pinMode(2,INPUT);” and its value is tested at the beginning of the program to switch between normal functioning mode and bridge mode according to the status of the button.

• If you are using other boards or a native Arduino board, it is important to note that the value of Di2 INPUT is what makes the program switch between Bridge Mode and Operation Mode.
If you wish to implement another button or input as the trigger to switch between the two modes, please review the code around line 52 of the sample.


Other than this we have not seen any other issue with the module and therefore I have asked the manufacturer to review your post here.

Bottom line, if you got the module from us (Robosavvy), you can contact sales@robosavvy.com and we'll offer tech support for it (and a replacement if necessary).

Regards
Pedro.
PedroR
Savvy Roboteer
Savvy Roboteer
Posts: 1199
Joined: Mon Jun 16, 2008 11:07 pm

Post by PedroR » Thu Oct 29, 2009 12:48 pm

Post by PedroR
Thu Oct 29, 2009 12:48 pm

Hi profmason

We have received your email with the additional details of the issue.

In any case, I would like to post here the reply we got from the in the event that this issue affects other users:

1) The program has been compiled using the Arduino IDE version 0017 (as in the YouTube video "VRbot with Arduino"). The file "protocol.h" in the zip archive "VRbot-ARDUINO_DEMO.zip" was corrupted in the initial archive that we received from the supplier. The file http://robosavvy.com/RoboSavvyPages/VRbot/protocol.h is correct.

2) In the bridge mode, in order to allow the VRbotGUI software to communicate with VRBot module, the program transmits bits from one serial port to the other: this simple implementation is due to some limitations of the Arduino Software Serial Library.

In the normal functioning mode the program uses read and write functions from the Arduino software serial library (see SoftwareSerial.cpp lib in the Arduino libraries) to communicate with the VRbot module.


I will update the Arduino DEMO library in the product page.
With regards to your concerns about hardware I would like to ask you to send us a picture of the module that shows the damage to sales@robosavvy.com so we can confirm if it's a manufacturing defect and get RMA authorization from the supplier to exchange your module.

Regards
Pedro.
Hi profmason

We have received your email with the additional details of the issue.

In any case, I would like to post here the reply we got from the in the event that this issue affects other users:

1) The program has been compiled using the Arduino IDE version 0017 (as in the YouTube video "VRbot with Arduino"). The file "protocol.h" in the zip archive "VRbot-ARDUINO_DEMO.zip" was corrupted in the initial archive that we received from the supplier. The file http://robosavvy.com/RoboSavvyPages/VRbot/protocol.h is correct.

2) In the bridge mode, in order to allow the VRbotGUI software to communicate with VRBot module, the program transmits bits from one serial port to the other: this simple implementation is due to some limitations of the Arduino Software Serial Library.

In the normal functioning mode the program uses read and write functions from the Arduino software serial library (see SoftwareSerial.cpp lib in the Arduino libraries) to communicate with the VRbot module.


I will update the Arduino DEMO library in the product page.
With regards to your concerns about hardware I would like to ask you to send us a picture of the module that shows the damage to sales@robosavvy.com so we can confirm if it's a manufacturing defect and get RMA authorization from the supplier to exchange your module.

Regards
Pedro.
PedroR
Savvy Roboteer
Savvy Roboteer
Posts: 1199
Joined: Mon Jun 16, 2008 11:07 pm

Post by Crenwick » Thu Oct 29, 2009 4:12 pm

Post by Crenwick
Thu Oct 29, 2009 4:12 pm

Hi Pedro,

Another question about VRbot, should it be possible to know when other SI voices will be available (french). Should it be possible to upgrade the old one or will it be an other ordercode ?

Regards,

Bernard
Hi Pedro,

Another question about VRbot, should it be possible to know when other SI voices will be available (french). Should it be possible to upgrade the old one or will it be an other ordercode ?

Regards,

Bernard
Crenwick
Robot Builder
Robot Builder
Posts: 16
Joined: Thu Oct 08, 2009 11:38 am

Post by PedroR » Thu Oct 29, 2009 4:27 pm

Post by PedroR
Thu Oct 29, 2009 4:27 pm

Hi Bernard

I don't have any news regarding the date when other languages will be available.
The manufacturer just states "in the near future" but I have no additional details. I can try and check.

In any case, the module supports recording your own custom voice commands (SD commands).
Therefore you can choose to record your own commands with your own voice (up to 32 commands supported) and there is no language limitation here; you can record any sound and use it.

Therefore in reality the module is supposed to be compatible with everybody despite their native language.
I have revised the "Features" section of the VRbot page to make this information about supporting all languages clear.

Was there any particular reason why you specifically needed the SI commands?

Regards
Pedro.
Hi Bernard

I don't have any news regarding the date when other languages will be available.
The manufacturer just states "in the near future" but I have no additional details. I can try and check.

In any case, the module supports recording your own custom voice commands (SD commands).
Therefore you can choose to record your own commands with your own voice (up to 32 commands supported) and there is no language limitation here; you can record any sound and use it.

Therefore in reality the module is supposed to be compatible with everybody despite their native language.
I have revised the "Features" section of the VRbot page to make this information about supporting all languages clear.

Was there any particular reason why you specifically needed the SI commands?

Regards
Pedro.
PedroR
Savvy Roboteer
Savvy Roboteer
Posts: 1199
Joined: Mon Jun 16, 2008 11:07 pm

Post by Crenwick » Thu Oct 29, 2009 6:22 pm

Post by Crenwick
Thu Oct 29, 2009 6:22 pm

Was there any particular reason why you specifically needed the SI commands?


No, just that these SI commands aren't user dependent (that's easyer).

Can you try to check, should be nice :wink:

Bernard
Was there any particular reason why you specifically needed the SI commands?


No, just that these SI commands aren't user dependent (that's easyer).

Can you try to check, should be nice :wink:

Bernard
Crenwick
Robot Builder
Robot Builder
Posts: 16
Joined: Thu Oct 08, 2009 11:38 am

Post by PedroR » Thu Oct 29, 2009 6:26 pm

Post by PedroR
Thu Oct 29, 2009 6:26 pm

I'll check and get back to you as soon as I have more information.

Regards
Pedro.
I'll check and get back to you as soon as I have more information.

Regards
Pedro.
PedroR
Savvy Roboteer
Savvy Roboteer
Posts: 1199
Joined: Mon Jun 16, 2008 11:07 pm

Post by PedroR » Fri Oct 30, 2009 3:32 pm

Post by PedroR
Fri Oct 30, 2009 3:32 pm

Hi Bernard

I have checked with the manufacturer and French and Spanish will be next languages to be added to VRbot.

This should happen by Jan/Feb.

The new languages will be included in the new batch of modules.
Existing modules can't be updated to add the new SI languages.

I have also inquired about making the SD commands more tolerant to other voices (therefore mimicking the addition of other SI commands). However this is not possible. The information I got was that the SD commands were designed to be specifically capable of identifying the voice of the person who created the SD command.

They do this to implement what's called a "Voice Password" and also to enable the use of multiple modules on the same room without too much risk of cross interaction between the robots (ie having the wrong robot react to the wrong voice/owner).

I hope this clears things up :)

Regards
Pedro.
Hi Bernard

I have checked with the manufacturer and French and Spanish will be next languages to be added to VRbot.

This should happen by Jan/Feb.

The new languages will be included in the new batch of modules.
Existing modules can't be updated to add the new SI languages.

I have also inquired about making the SD commands more tolerant to other voices (therefore mimicking the addition of other SI commands). However this is not possible. The information I got was that the SD commands were designed to be specifically capable of identifying the voice of the person who created the SD command.

They do this to implement what's called a "Voice Password" and also to enable the use of multiple modules on the same room without too much risk of cross interaction between the robots (ie having the wrong robot react to the wrong voice/owner).

I hope this clears things up :)

Regards
Pedro.
PedroR
Savvy Roboteer
Savvy Roboteer
Posts: 1199
Joined: Mon Jun 16, 2008 11:07 pm

Post by Gort » Wed Nov 11, 2009 4:06 am

Post by Gort
Wed Nov 11, 2009 4:06 am

I just got the voice module in the mail. The only computer that I have right now is a new laptop with Windows 7 on it. When I tried to connect to the RN I get the error: Could not detect device connected to port "COM5". Has anyone else try to use Vista or Windows 7 with the VRbot GUI?
I just got the voice module in the mail. The only computer that I have right now is a new laptop with Windows 7 on it. When I tried to connect to the RN I get the error: Could not detect device connected to port "COM5". Has anyone else try to use Vista or Windows 7 with the VRbot GUI?
Gort
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 555
Joined: Wed May 31, 2006 1:00 am
Location: KC, MO, USA

Post by Crenwick » Wed Nov 11, 2009 9:22 am

Post by Crenwick
Wed Nov 11, 2009 9:22 am

Hi,

If you have Win7 64bits then you can install the XPshell on it and try.

I tried VRbot GUI on Vista and gives errors but with XP no problem for the SW and COM. I have not yet the module but it will come :wink:

Bernard
Hi,

If you have Win7 64bits then you can install the XPshell on it and try.

I tried VRbot GUI on Vista and gives errors but with XP no problem for the SW and COM. I have not yet the module but it will come :wink:

Bernard
Crenwick
Robot Builder
Robot Builder
Posts: 16
Joined: Thu Oct 08, 2009 11:38 am

Post by PedroR » Wed Nov 11, 2009 12:35 pm

Post by PedroR
Wed Nov 11, 2009 12:35 pm

Hi Gort

I will investigate that issue of Win7 with the manufacturer.

Have you tried running the software in compatibility mode by setting Windows XP Sp2 and setting it to run with administrator rights?
Sometimes it fixes things (an example I can think of is the HaViMo modules where the callibration program won't open the com port in Vista unless you put in this compatibility mode).

Regards
Pedro.
Hi Gort

I will investigate that issue of Win7 with the manufacturer.

Have you tried running the software in compatibility mode by setting Windows XP Sp2 and setting it to run with administrator rights?
Sometimes it fixes things (an example I can think of is the HaViMo modules where the callibration program won't open the com port in Vista unless you put in this compatibility mode).

Regards
Pedro.
PedroR
Savvy Roboteer
Savvy Roboteer
Posts: 1199
Joined: Mon Jun 16, 2008 11:07 pm

Post by Gort » Sat Nov 14, 2009 3:38 am

Post by Gort
Sat Nov 14, 2009 3:38 am

I am not sure what I did differently but I just connected to my robot using the VRbot GUI? I will post more as I play around with it.
I am not sure what I did differently but I just connected to my robot using the VRbot GUI? I will post more as I play around with it.
Gort
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 555
Joined: Wed May 31, 2006 1:00 am
Location: KC, MO, USA

Post by Gort » Sun Nov 22, 2009 5:35 am

Post by Gort
Sun Nov 22, 2009 5:35 am

I am now back to not connecting. I am at a lose as to what to do.
I am now back to not connecting. I am at a lose as to what to do.
Gort
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 555
Joined: Wed May 31, 2006 1:00 am
Location: KC, MO, USA

Next
29 postsPage 1 of 21, 2
29 postsPage 1 of 21, 2