Wake word beeps, errors and does not work

I am having issues testing the wakeword. I’m using one of the provided wake words (jarvis). Testing the speech to text and intent extraction works fine but I am unable to wake the device.

Pressing the yellow WAKE button in my web ui provides the following output in the logs followed by 3 sounds (two sonar sounding sounds (‘beep_hi.wav’) followed by a soft sounding sound (‘beep_error.wav’)).

[DEBUG:541717] APlayAudioPlayer: ['aplay', '-q', '-D', 'sysdefault:CARD=sndrpigooglevoi', '/usr/share/rhasspy/etc/wav/beep_error.wav']
[INFO:541020] quart.serving: 192.168.x.n:59354 POST /api/listen-for-command 1.1 200 139 2156124
[INFO:541014] quart.serving: GET /api/events/intent 1.1 101 - 60774138
[INFO:541006] quart.serving: GET /api/events/intent 1.1 101 - 11589415
[INFO:540998] quart.serving: GET /api/events/intent 1.1 101 - 32594519
[INFO:540990] quart.serving: 192.168.x.n:59352 GET /api/events/intent 1.1 101 - 11141532
[DEBUG:540964] InboxActor:  -> stopped
[ERROR:540957] PorcupineWakeListener: loading wake handle
Traceback (most recent call last):
  File "/usr/share/rhasspy/rhasspy/wake.py", line 852, in in_started
  File "/usr/share/rhasspy/rhasspy/wake.py", line 928, in load_handle
    assert kw_path.is_file(), f"Missing {kw_path}"
AssertionError: Missing profiles/en/porcupine/jarvis_linux.ppn
[DEBUG:540952] DialogueManager: ready -> asleep
[INFO:540949] DialogueManager: Automatically listening for wake word
[DEBUG:540944] DialogueManager: handling -> ready
[DEBUG:540940] WebSocketObserver: {"text": "", "intent": {"name": "", "confidence": 0}, "entities": [], "raw_text": "", "speech_confidence": 0, "wakeId": "", "siteId": "default", "slots": {}}
[WARNING:540939] HomeAssistantIntentHandler: Empty intent. Not sending to Home Assistant
[DEBUG:540938] DialogueManager: recognizing -> handling
[DEBUG:540936] DialogueManager: {'text': '', 'intent': {'name': '', 'confidence': 0}, 'entities': [], 'raw_text': '', 'speech_confidence': 0, 'wakeId': '', 'siteId': 'default'}
[ERROR:540928] FsticuffsRecognizer: in_loaded
Traceback (most recent call last):
  File "/usr/share/rhasspy/rhasspy/intent.py", line 183, in in_loaded
    assert recognitions, "No intent recognized"
AssertionError: No intent recognized
[DEBUG:540921] DialogueManager: decoding -> recognizing
[DEBUG:540918] DialogueManager:  (confidence=0)
[DEBUG:540915] PocketsphinxDecoder: 
[DEBUG:540912] PocketsphinxDecoder: Decoded WAV in 0.053197383880615234 second(s)
[DEBUG:540860] APlayAudioPlayer: ['aplay', '-q', '-D', 'sysdefault:CARD=sndrpigooglevoi', '/usr/share/rhasspy/etc/wav/beep_lo.wav']
[DEBUG:540857] PocketsphinxDecoder: rate=16000, width=2, channels=1.
[DEBUG:540854] DialogueManager: awake -> decoding
[DEBUG:540851] WebrtcvadCommandListener: listening -> loaded
[DEBUG:540850] WebrtcvadCommandListener: Voice command finished
[DEBUG:539349] WebrtcvadCommandListener: Voice command started
[INFO:538931] quart.serving: GET /api/events/wake 1.1 101 - 218655795
[INFO:538921] quart.serving: GET /api/events/wake 1.1 101 - 57405452
[DEBUG:538880] WebrtcvadCommandListener: loaded -> listening
[DEBUG:538879] APlayAudioPlayer: ['aplay', '-q', '-D', 'sysdefault:CARD=sndrpigooglevoi', '/usr/share/rhasspy/etc/wav/beep_hi.wav']
[DEBUG:538878] WebrtcvadCommandListener: Will timeout in 30 second(s)
[INFO:538874] quart.serving: GET /api/events/wake 1.1 101 - 30044898
[DEBUG:538872] DialogueManager: asleep -> awake
[INFO:529974] quart.serving: 192.168.x.n:59348 GET /img/favicon.png 1.1 200 802 51403
[INFO:529948] quart.serving: 192.168.x.n:59351 GET /api/problems 1.1 200 302 44210
[INFO:529946] quart.serving: 192.168.x.n:59350 GET /api/microphones 1.1 200 401 193114
[DEBUG:529929] InboxActor:  -> stopped
[DEBUG:529924] InboxActor:  -> stopped
[INFO:529911] quart.serving: 192.168.x.n:59349 GET /api/speakers 1.1 200 401 159525
[INFO:529908] quart.serving: 192.168.x.n:59347 GET /api/unknown-words 1.1 200 2 27280
[DEBUG:529898] InboxActor:  -> stopped
[INFO:529889] quart.serving: 192.168.x.n:59343 GET /api/profile 1.1 200 6907 61372
[INFO:529885] quart.serving: 192.168.x.n:59348 GET /api/profiles 1.1 200 144 67324
[INFO:529873] quart.serving: 192.168.x.n:59351 GET /api/profile 1.1 200 9084 60583
[INFO:529803] quart.serving: 192.168.x.n:59348 GET /api/phonemes 1.1 200 1526 51970
[INFO:529799] quart.serving: 192.168.x.n:59347 GET /api/slots 1.1 200 2 47877
[DEBUG:529766] __main__: Loading phoneme examples from /usr/share/rhasspy/profiles/en/phoneme_examples.txt
[INFO:529756] quart.serving: 192.168.x.n:59346 GET /api/events/log 1.1 101 - 75860
[INFO:529742] quart.serving: 192.168.x.n:59343 GET /api/sentences 1.1 200 581 9325

I’m testing on a Raspberry Pi 3 with the Google AIY HAT speaker and mic. I’m using the following drivers. Occasionally the device will show the yellow thunderbolt (I believe signifying under-voltage) and often shutting down.

I’ve had issues updating the profile through the UI and have resorted to modifying the profile.json file directly.

My profile.json is:

    "handle": {
        "system": "hass"
    "home_assistant": {
        "access_token": "secret",
        "url": "http://192.168.x.m:8123/"
    "microphone": {
        "arecord": {
            "device": "sysdefault:CARD=sndrpigooglevoi"
        "system": "arecord"
    "sounds": {
        "aplay": {
            "device": "sysdefault:CARD=sndrpigooglevoi"
    "text_to_speech": {
        "espeak": {
            "voice": "en"
        "picotts": {
            "language": "e3wu74 37i2qi27"
    "wake": {
        "porcupine": {
            "keyword_path": "porcupine/jarvis_linux.ppn"
        "system": "porcupine"

I have the same setup (AIY) and also had a lot of trouble with a 2A power supply (undervoltage and weird errors). Any chance you can use a 2.5A or better 3A powersupply as you should for a raspberry pi 3?
IMHO 2A only works if there is nothing connected (no hats or leds or usb) and nearly no server software is running on the Pi. The Pi 3 is also very prone to overheating, so at least a passive cooler is a must.

Make sure to check with arecord and aplay that you can actually record something.

Ordered some online - should be here in a few days. Will test and report back

Seems still moody. Found it works better without the monitor plugged in.

So, you have a stronger powersupply now and still get the above described errors? Have you checked dmesg maybe there is some corruption on your filesystem? Can you check and report back if you see anything suspicious?

since switching I’ve only had issues when I first swapped supplies. If it misbehaves again I will definitely post the requested results.