Today I finally got around and installed rhasspy. I have a RaspberryPi 3 B+ with a Respeaker 4 Mic Array and an USB sound card for audio output. Installed previously was hass.io running in a docker so rhasspy was installed in a docker, too. For some reason I am one of those people that never get something to work and out of the box so I have been fighting to get my sound and mic to work for an hour.
The audio and mic worked fine on my host system (or so I thought) and I tested that a few days ago when I installed the drivers for my respeaker 4 array. So when I opened up the rhasspy web interface, pressed the test button for the mic and got (no audio) on all devices I was a bit annoyed. When I could not get any sound output I started reading through this forum. Regardless what I selected before I saved, audio device was always default and not working.
After a while I found this which helped to get my device selected but it was still not working…
"sounds": {
"aplay": {
"device": "sysdefault:CARD=Device"
}
}
At this point I tried to use aplay on my host and found out that my device is busy. I had tested everything a while ago and it worked so I removed rhasspy for further tests but the problem persisted.
So rhasspy was not at fault, it had to be something else. I restarted my Pi and it worked for a while. Further testing let me to believe that it was hass.io audio that was hogging my device and it only worked until all the dockers where running. After a bit of research I found a way to stop it from hogging my devices. This was adapted for my pi and after I removed the hass.io audio docker and let the supervisor reinstall it I could use my audio again.
docker pull homeassistant/amd64-hassio-audio:8
docker image rm -f homeassistant/armv7-hassio-audio:9
docker image tag homeassistant/armv7-hassio-audio:8 homeassistant/armv7-hassio-audio:9
docker stop hassio_audio
Now I reinstalled rhasspy, selected my audio devices and the mic worked without any problem. For the speaker I had to manually add the sounds section again but after that is was working fine.
Since it took me a while and other people running hass.io in a docker I thought I would document the progress so no one else that is just stating out with rhasspy will have to do an hour of research just for the small satisfaction of hearing rhasspy speak a sentence.
Daenara
EDIT: cleaned up some stuff and added the code I got from the external links for easy reading