+1 for the external MQTT method for a master/satellite setup. It’s working great for me.
My intent handling happens on the satellites (I plugged my Home Assistant details into each one). If it’s supposed to happen on the server, then maybe I don’t have something configured right. But it seems to work well when handled by the satellites!
You can handle intents on the satellites, it just is more work doing so and the server is normally more powerful. It also means that you have to configure intents on all satellites instead of doing so once on the server.
If you’re talking about intent recognition, then yes, the server does that pretty well in my case. It’s just the handling that still has to be done on my satellites - the actual sending of events or intents to Home Assistant.
I followed the exact instructions at the Getting Started Guide for an external MQTT broker. On my satellites I use arecord for recording, Snowboy for wake word, and aplay for playback. Speech to text, intent recognition, and text to speech are all set as Hermes MQTT. On the server, I have speech to text set to Kaldi, intent recognition as Fuzzywuzzy, and text to speech as PicoTTS. Make sure you name each satellite differently and then include those siteId’s as comma separated in the text fields for each of those server entries.
I actually don’t use Rhasspy for text to speech as I already have something else in place for that through Home Assistant. So I can’t answer your last two questions.
Each of the Pi Zero satellites I have around my house are running Snapcast, so my automations in HA just play TTS feedback on all of them. I have motion sensors around the house and mute/unmute each one based on my current location in the house. So Rhasspy is not doing any of the TTS at this point.
If you are using snips: in your HA configuration.yaml file, I’ve found you don’t need to set up intent handling with Rhasspy. The Snips component in HA listens to all of the Hermes MQTT topics and responds to intents (not events) appropriately.
I don’t know why you are beeping or getting the TTS twice.
Try disabling/turning off Home Assistant to see if you still get that behavior when you wake Rhasspy.