EasyVr Timeout-function

Hey guys,
I'm working with an arduino uno and the EasyVr Shield. My program itself is finished and working exactly as it should be. But while checking the serial monitor I had to realise that the easyVr Shield times out after
a certain amount of time. I tried to alter the timeout period or turn it off completly. But I haven't found any clue to do so. There is an easyvr.setTimeout(5) function written inside the code which I thought to be the guilty one here. But any changes in that seem only to affect the group commands not the waiting period for the trigger command. If I alter the number inside the brackets the timeout period for the groupcommands change but I cannot turn it off completly or influence the timeout period for the trigger command. Thats why I'm not sure if this line of code is the right way to approach this problem. Furthermore I'm not even sure what's the purpose of this timeout function is. Anyone can help me with that? Measurement with an oscilloscope shows that the power supply voltage of the microphone is cut off for about 0,5s and thats why this function is very disturbing for me. When I try to give a command I sometimes hit exactly that moment when the serial monitor shows: "... timed out..." and so the command doesn't get recognised. So my questions:

Whats the purpose of the timeout function? Can it be turned off (without consequences) and if yes how can i do that? Anyone else experiences problems with the timeout function?

Thx for all the help

Tykor

Tykor:

Interesting shield, had not seen this one; therefore, no personal experience. Seem that SparkFun carries the board manufactured by:
http://www.veear.eu/products/easyvr-arduino-shield/

I would recommend leaving a message on their support forums (both) for assistance. You may get lucky here, but I do not think this is a common product with a large experience base.

Ray

I had to realise that the easyVr Shield times out after
a certain amount of time.

  1. What does that mean? what amount of time?
  2. What does it take to get it running again?
  3. Are you providing power for that board from the arduino? I didn't find the current requirement for that board, do you know?
  4. Does it work as expected for "a certain amount of time"?

Hey, I'm using that shield myself for a project and was wondering much the same as you are as this timeout function is annoying... . From using it for the past few months I can only guess at this...

It seems once the shield is active it's constantly listening and refreshes its listening every now and again.. . . In the library h file there is this:

Sets the timeout to use for any recognition task.
@param seconds (0-31) is the maximum time the module keep listening
for a word or a command
@retval is true if the operation is successful
*/
bool setTimeout(int8_t seconds);

Also this:

enum
{
NO_TIMEOUT = 0, INFINITE = -1,
DEF_TIMEOUT = EASYVR_RX_TIMEOUT,
WAKE_TIMEOUT = EASYVR_WAKE_TIMEOUT,
PLAY_TIMEOUT = EASYVR_PLAY_TIMEOUT,
RESET_TIMEOUT = 40000,
};

I just tired it setting the timeout to zero and it seemed to work for me even for the trigger group which seems to be different from the regular groups so give that a shot, if not maybe try -1

(Hopefully I haven't done any damage!)

Hi guys,
thx for your answers.
To Tman0708:
I'll give your advices a try in the next days when i restart work on this project. I will keep you informed wether it works (hopefully :wink: ) or not. Never tried setting it to 0 or -1. Will give it a shot.
To jack wp:

  1. By default the time out period is 5seconds. I can vary it for the command groups but not for the trigger group. Maybe tman's tips will help.
  2. I don't have to do anything to get it running again. It does it by itself. It's just very annoying because for a short time the system is not fully operational and can't recognize given commands.
  3. Yes the board is providing power for the EasyVR Shield. No external power supply neccessary. The power supply for the mic is provided by the shield but during the timeout gets cut off for a moment and needs about 0,5sec to reach the maximum of 2,5V again.
  4. The code i wrote and recognition works totally fine. But if I give a command exactly during this 0,5sec it cant get recognized by the shield and I hit this moment very often ;).

Hope that answers your questions.

Thx for answers, hopefully more will come :P.

Tykor

I am thinking on the line of the power supply. If it is getting over loaded and causing an interruption.
Is the arduino still running (blink without delay)?
Can you put a meter on the 5V pin to see if there may be an interruption there?
I am probably completely off track, but who knows?