Troubleshooting

1
Last updated 2 months ago

Troubleshooting Common Snips issues

I have installed an app, Snips detects my hotword but doesn't answer anything after my question, why?

First and foremost, keep in mind that an app must have at least one action assigned to it to perform any response to voice input, please read that part of the Actions documentation. If there isn't any actions linked to the app, you will have to write your own and make it speak.

Snips can only answer if:

For an overview of a complete app and how it handles scripts, you can check this tutorial made by a community member and if things are still unclear, feel free to read this other tutorial also made by a community member

Quickcheck

Before anything else, please start with this step first!

1) Check if packages are installed correctly with

dpkg -l | grep snips

2) Check if you have an audio configuration

cat /etc/asound.conf
It will output something close to this \(if you have the default audio configuration\)
pcm.!default {
type asym
playback.pcm {
type plug
slave.pcm "hw:0,0"
}
capture.pcm {
type plug
slave.pcm "hw:1,0"
}
}
Additionnaly, check if audio devices have the correct configuration with `arecord -l` `aplay -l` \(device, subdevice number should be replicated in `asound.conf` in place of `hw:1,0`

3) If you have another application using the audio, it could potentially block the access to the audio device.

See if you can record / play audio with arecord / aplay

4) Check if your assistant is installed correctly in /usr/share/snips/assistant/ :

It should contain this :
/usr/share/snips/assistant/
|-- assistant.json
|-- custom_asr
| |-- a.snips
| |-- b.snips
| |-- config.json
| `-- w.snips
|-- custom_dialogue
| |-- sound
| | |-- config.json
| | |-- end_of_input.wav
| | |-- error.wav
| | `-- start_of_input.wav
| `-- speak
| |-- de.json
| |-- en.json
| `-- fr.json
|-- custom_hotword
| |-- config.json
| |-- model.pb
| `-- thresholds_curve.json
|-- dataset.json
`-- trained_assistant.json

5) Check that all services are active and running:

systemctl status 'snips-*'

For a shorter version:

systemctl status -n 0 'snips-*'

6) If a service is not running or continuously rebooting, then you can check its logs with:

journalctl -f -u <snips_service_name>

7) If the error is not clear from the output, stop the service and launch it manually, it will output more precise info (here snips-asr):

sudo systemctl stop snips-asr
snips-asr -vv
Don't forget to relaunch the service once you're done fixing it:
sudo systemctl start snips-asr

Installation

apt-get fails

  • server is down (unlikely), try again later

  • gpg-key couldn't be downloaded, try another server (cf doc for this) or just try again

  • we could be updating the platform at this time, try again in a couple of minutes

MQTT

If you have an already working MQTT installation on the same device or on the network, you can point Snips to it by editing `/etc/snips.toml` `[snips-common]` section. Don't forget to relaunch the whole platform or the corresponding service when you finished editing the file.

No audio, no mic

If you use a specific mic \(microphone array or something fancy\) check with the manufacturer if you need to install specific drivers. Check if your mic is recognized with `arecord -l`
  • check asound -l for speakers device,subdevice

  • check arecord -l for mics device, subdevice

  • check /etc/asound.conf to have the corresponding hw:<device,subdevice>

Updating

Updating snips-platform can also trigger system packages update or update your local distribution. It can render other parts of your setup unstable, microphone mainly. **Be advised**.
We could also update the `/etc/snips.toml` format. During the apt update, the system will tell you about this.

Technical FAQ

Q: How can I get multi-room running?

You can read about it here, you can also find a tutorial from a community member.

Q: How is audio transmited from the satellite to the RPI3?

Default audio is plain but MQTT can now be configured to use encryption. Check /etc/snips.toml and the platform configuration documentation

Q: Is the MQTT brocker at sam Installed?

Yes,sam init **installs the snips voice platform as well as all dependencies. Manual install does the same.

Q: I can’t find my Raspberry using sam devices although I see it on my network

sam devices **is a really lightweight network scan. If you don't see your device, don't panic. The default hostname of a new raspbian image is raspberrypi. Try running sam connect raspberrypi

Q: Some words aren’t recognized properly, why?

The default ASR recognises only the words that are present in your training exemples, try adding more of those words in your training exemples, do not forget to 'save' and retrain your assistant.

Q: How can I have some specific TTS response to a matched intent?

Simply follow this set-actions tutorial.

Q: How can I update my apps?

To update your apps from the console, run sam update-assistant

If you wish to reinstall your apps from the snippets already present in the assistant, type sam install actions

Q: I tried to deploy my assistant using sam install assistant -<name_of_your_assistant> and I get this error:Error: Language model training error: URLSearchParams is not defined

You need to update your Node version. Node needs to be at least V7.5.0 for sam to work.

Q: Can I extract the training examples of each intents?

Yes you can export the training examples of each intent in the console:

Q: How can I change the TTS voices?

Install snips-makers-tts with sudo apt-get install snips-makers-tts and check the output of snips-makers-tts -h to see all TTS options. You can specify a voice file.

Please note that depending on the language you want, you may not have much choices for offline voices.

Q: Can I disable Snips Audio Server?

Yes you can, simply run these commands: sudo systemctl stop snips-audio-server or sudo systemctl disable snips-audio-server However this will also turn off all audio streaming from the microphone.

Q: How can I reinstall snips directory to /var/lib?

You can run sudo apt-get --reinstall install -y snips-platform-voice

Q: I just updated Snips to the latest version and nothing seems to be working, why?

Have you updated your assistant? If not, go to the console, re-train it before downloading and installing it again, this should solve the issue. You can also retrain it with Sam : sam update-assistant

Q: I have an Error 111:snips-nlu.service: Main process exited, code=exited, status=1/FAILURE snips-nlu.service: Unit entered failed state. snips-nlu.service: Failed with result 'exit-code'. ERROR:snips_asr: Could not start MQTT client raspberrypi snips-asr[5544]: -> caused by: Connection refused (os error 111)

You can run those following commands to fix it:

sudo systemctl stop mosquitto sudo sed -i -e 's/persistence true/persistence false/' /etc/mosquitto/mosquitto.conf sudo rm /var/lib/mosquitto/mosquitto.db sudo reboot

Q: I'm editing the feedback sounds but the volume feedback is low, why?

If you want to access the feedback sounds you can go to /usr/share/snips/assistant/custom_dialogue/sound and add your new sounds. Make sure that it is a 16 signed Bit wav file otherwise volume will be low (you can convert your wav file into 16 bit with tools like Audacity).

Need more help?

Our Community and the support team will be glad to help on our Forum.