2.5.8 Satellite Wake Word - no service working - UDP Audio Config problem?

Hi there, I am trying to setup a satellite / base rhasspy setup.

My Satellite is a rPi3A+ running with a ReSpeaker 4Mic Hat.
So far I am able to connect it to the base, and let the base do all the handling of intents, stt, tts etc.
However, I am having serious issues in getting the WakeWord to work.

When I wakeup the system in the UI it works fine. The audio is sent to the base, and I get back the correct intent.
However, it does not matter which WakeUp Service I am selecting, none of them work. If i take a look @ htop then it seems like none of the services are even running.

This is my current config for the satellite:

I can only post one embedded media at the time, so I will add the other images in reply posts.

I think my issue might be with the UDP Audio Input config of the WakeWord.
At the UDP Audio (Input) field it asks for: host1:port1:siteId1
I have tried with the following: but didnt see any difference in behaviour.

Is there some documentation about this field? I failed to find it in the rhasspy.readthedocs.io

Am I correct to assume that the field:

Satellite siteIds

has to stay empty if I run the service on the satellite itself?

This is my config for the base:

I just found that I have also the same Issue as in this thread:

Whereas I get the same error:

TrainingFailedException: [Errno 2] No such file or directory: ‘/profiles/de/intent_graph.pickle.gz’

When trying to Train. The file is available though.

I have had the same problem on my satellites when they had some options (TTS, …). On my running configuration, all components works on the master.

I just tried to copy your satellite and base config. But no change.
However, in your case, the satellite is constantly sending all the audio to your base which then analyzes for the wake word and does the rest correct?

Isn’t this quite heavy on the network?

Anyway, not even that works for me. I dont understand the configuration of the wake word and the Audio UDP.


had the same Issue with snowboy. I read the docs from snowboy and set this settings.
Now it is working very well :slight_smile:


You want the satellite to listen to itself and trigger hotword detection for the master.

Rather than:


1 Like

Thank you for the tip.

If I access my Rhasspy UI on the Satellite via


should I then use this as the port?

If not, and it is indeed 12202 then I assume I will also need to reference this port in my docker?

No & no :slight_smile:

1 Like

Ok I believe it is working now. Thank you
I had to change 2 things.

#1: Your suggestion but with the added Satellite ID


#2: The Wake Word Service only starts if I remove the

UDP Audio Output
and Port

in the arecord

From the documentation I was under the impression that this is actually required for the base to get the Audio data from the Satellite. https://rhasspy.readthedocs.io/en/latest/tutorials/#shared-mqtt-broker
But without UDP Audio Host:Port it seems to work well.

What were your arecord UDP settings on the satellite before you removed them?

I have those set too, as localhost and 12202 respectively.

I had them set to the IP of my Base and the UDP Port. As I am using the HomeAssistant Addon, it was then set to port 12333 for UDP.

Is there any benefit in setting the UDP Settings on the satellite to it self for arecord?
Or can I just leave them empty?

You need to set arecord UDP on your satellite, otherwise Rhasspy will stream all audio from the satellite to the base (Hotword & ASR).

Set it as host: localhost and port: 12202 just like the hotword. The satellite will then only listen to itself until the wakeword has been detected.

Basically you’re setting arecord to create an internal audio stream, rather than sending the audio to the base as default. You’re then telling the hotword service to listen to that stream.

I’m having a mind blank on the purpose of appending the siteId to the HOST:PORT for the hotword UDP configuration… Anyway, besides the point :slight_smile:

Edit - Sorry, I don’t use HA. I don’t know how it fits into the equation.