[Solved] Kitt_ai wakeword engine still not working on Matrix VOICE

I think that also happened to me at some point. I wanted to fix it without starting from scratch, removing the /db/cblAuthDelegate.db file did the trick.

Yoel

No, just modify the script.

Re-build is needed just when switching between wakeword engines (Sensory and Kitt_ai).

I think I deleted the db directory but it didn’t rebuild it. Whoops! So I just re-did everything.

Working now.

Kenny

I meant just the /db/cblAuthDelegate.db file :slight_smile:

Working now! My errors:

  1. just the Client_ID needs to be updated (“Other devices and platforms”), NOT the Product_ID
  2. while startsamp.sh is running, go to https://amazon.com/us/code to input the code that startsample.sh gives on screen

Next hurdle change wakeword to “Computer” and activate sounds for “start, stop and error”

1 Like

I would be interested in knowing how you implement this.

Also a way to turn the lights off so they don’t stay on all night. I’m always afraid of premature failure because of leaving them on 24 hours a day.

I’m working on my own skills now. What a challenge that’s been.

Kenny

@yoelrc88 any tips to get a new wakeword functioning ok? “Computer” works somewhat, but it keeps registering sounds, also when it’s silent. And I cant find (recent) instructions anywhere… Has nobody done this??

Do you mean you are getting a lot of false positive triggering?
I tested with provided models I was really good. For new created models I haven’t done too much test but tested once and it worked.

I did see some false triggers but I though with a little adjustment in the sensitivity I could solved it. See here:
http://docs.kitt.ai/snowboy/#what-is-detection-sensitivity
Inthe SampleApp thats hard coded in the KWD/KWDProvider/src/KeywordDetectorProvider.cpp file.

Give it a try and let us know if you can improve the performance.

-Yoel

Best results for me:

  1. use alsamixer to set to 80% recording
  2. use matrix voice board to record model and upload to snowboy
  3. in ./avs-device-sdk/KWD/KWDProvider/src/KeywordDetectorProvider.cpp
    static const double KITT_AI_SENSITIVITY = 0.5;
    static const float KITT_AI_AUDIO_GAIN = 1.0;
    static const bool KITT_AI_APPLY_FRONT_END_PROCESSING = false;

@yoelrc88 Any hints on how&where to embed audio for start/stop/error sounds. Perhaps together with the led color changes? Too bad (for me) all is in C++, that is not my strong suit…

Great to hear that it worked!

Regarding the audio feedback, I haven’t played with that but will look at the SDK to see if there is a faster and nicer way.

Here are official sounds I think

Go to Alexa Voice Service > Resources > Alexa Sound Library for AVS

Hope it helps

@yoelrc88 Great some mp3&wav files… :wink:
Please allow me to be more clear: I want to play certain sounds when Alexa has successfully received my question; when Alexa has successfully NOT received my question;And when Alexa is ready to receive a question. So a sound alongside the blue, green & red leds.
Do you have any guidance on how to make that work?

Ideas here:

  • Option A ( Easy / Not Elegant):

    Insert simple code for playing the sounds you want in the EverloopControl class I’ve made for managing the LEDs from the SDK. More specifically, go to SampleApp/src/EverloopControl.cpp and put the audio playing lines in the different cases of the switch statement. I think this could work. The simplest way of playing that I can think of is using a system() call and aplay software to play the sounds.

  • Option B ( More code / Nicer )

    Create a class based on the EverloopControl but for your purpose. So, look for how the class is been use in the SampleApp project (includes, CMakeList etc…) and replicate that.

  • Option C ( Nicest / Should take more time)

    Look in the SDK documentation and code, and find how the SampleApp uses the SDK and how different components are “connected”. Try to find if there is already a component meant for that. I would’ve guessed that it is, but I haven’t found it yet :slight_smile: .

Help it helps !

Big thanks, those are excellent options. I looked into SSML code in “speak” sections (https://developer.amazon.com/docs/custom-skills/speech-synthesis-markup-language-ssml-reference.html), but the amount of options seem endless…

Could you in the same spirit please also point me towards getting sound out of the Matrix Voice little speaker connections?

Wow this looks really good, looking forward to see you integrate something like this, and share it here !

Sadly C is the isue here. If only it was Python… I will keep investigating though :slight_smile:

Any tips on setting the initial volume level?

I searched the SDK many times looking for the place where the volume is set, but couldn’t find it.

Whenever Alexa starts, I always have to say “Alexa, set Volume to 2”. It would be nice if she started at that level (or any configurable level).

Kenny

Use alsamixer from cli, set volume and escape? It remembers the settings.

I’ve tried that.

alsamixer
then
sudo alsactl store 0 and sudo alsactl store 1

You have to store the settings separately because MATRIXIO SOUND causes an error.

Kenny

Good solution for now! Can you share that here for other users?

Thanks