MQTT on Hassio step-by-step

I just wanted to let anyone else struggling with MQTT (I can’t be the only one!..Right?) know that it’s pretty easy to set up on a Pi already running Hassio and configure that to work with Rhasspy (I’m running on a separate Pi in Docker). The instructions on Home Assistant (https://www.home-assistant.io/addons/mosquitto) were a little confusing for me but boil down to:
1-Hassio > Add-ons > install the mosquitto broker add-on and start it
2-Configuration > Users > make a new user in Home Assistant for the MQTT stuff
3-Configuration> Integrations > MQTT > the IP address of the Hassio system on your network, port is the default, and the username and password are the ones you just made in #2
4-Configuration> Server Controls> Check config > If it’s valid, restart the server

Then in Rhasspy settings, enable MQTT with the IP address, port, username and password you just set up. Save settings and restart. This all worked for me, hope it helps someone else!

Addition: You can use a different username / password in Rhasspy (like rhasspy / password) to connect to the HassIO broker.

You must add the following in Hassio:

  • add mosquitto folder in /share
  • create a file in/sahe/mosquitto acl.conf with contents: acl_file /share/mosquitto/accesscontrollist
  • create file /share/mosquitto/accesscontrollist

In /share/mosquitto/accesscontrollist

user homeassistant
topic readwrite #

user addons
topic readwrite #

user rhasspy
topic readwrite #

That gives readwrite rights to those users on all topics, you can finetune is if needed.

Set active to true in the Hassio MQTT Addon
My MQTT config looks like this:

{
“logins”: [],
“anonymous”: true,
“customize”: {
“active”: true,
“folder”: “mosquitto”
},
“certfile”: “fullchain.pem”,
“keyfile”: “privkey.pem”,
“require_certificate”: false
}

The settings in “customize” are important.