[Beta test] Universal Wake Words

Disclaimer: This part of the documentation is dedicated on our beta test of the universal wake word "Hey Snips". Install this at your own risk. If you need more information, you can reach our Wake Word category on our Forum.

Once you have successfully installed Snips on your Raspberry Pi, you can go through the following steps. It will set up the automatic dumping of 5 second audio files ending in *-hotword.wav every time a wake word is detected, making sure the service restart at each reboot of your Raspberry Pi (if you unplug it for instance). It will also dump audio files with what the ASR transcribed after the wake word is detected, but we don't need it for our current test. If you are using a server/satellites setup, please refer to the last section of this documentation.

Step-by-step guide

  1. Git clone the audio dumping service on your laptop: $ git clone https://github.com/yxdunc/snips-wakeword-dumper.git

  2. Go to the folder and run the install script (from your computer or directly on your Raspberry Pi) which will make sure the audio dumping service restart at each reboot/unplug: $ cd snips-wakeword-dumper $ sh install_service_ssh.sh wakeword_dumper_package pi@<pi-name>.local

  3. Send the new custom_hotword folder (Hey Snips v3) we provided you with for this Beta to your Raspberry Pi: $ scp -r <path-to-new-custom-hotword-folder> pi@<pi-name>.local:/home/pi

  4. Access your Raspberry Pi via ssh and place the new custom_hotword folder in /usr/share/snips/assistant after having renamed your old custom_hotword folder for backup: $ ssh pi@<pi-name>.local $ (pi) sudo mv /usr/share/snips/assistant/custom_hotword /usr/share/snips/assistant/custom_hotword_old $ (pi) sudo mv /home/pi/custom_hotword /usr/share/snips/assistant/

  5. Restart the wake word service to use the new Hey Snips v3:$ (pi) sudo systemctl restart snips-hotword

You're all set! You can try it out by saying "Hey Snips" out load, you should see several *.wav files whose names are appended with the corresponding timestamps in /usr/share/snips/audio_dumps

The audio files are NOT sent to us

Please note:

  • 5 second audio files ending in *-hotword.wav will be dumped locally on your Raspberry Pi every time the wake word is detected, you can find them at /usr/share/snips/audio_dumps/.

  • For the current beta test, we are only interested in files ending in *-hotword.wav, and not in the others which are the ASR transcription.

  • At any moment, you may stop the audio dumping service and prevent it from restarting at the next reboot by running the following commands on your Raspberry Pi: $ (pi) sudo systemctl stop wakeword_dumper.service $ (pi) sudo systemctl disable wakeword_dumper.service If you want to relaunch it, just repeat step 2. above.

Server/satellite setup

You may encounter issues in this setup as snips-watch listen to the server by default, and not the satellites. A quick hack is to edit the snips-wakeword-dumper/wakeword_dumper_package/wakeword_dumper.shfile by specifying your satellite with the --dump-audio-siteflag. Thanks @Greg for pointing that out!