Satelite Wake word config on Pi Zero

Hi All,

I’ve been testing a Server / Satellite setup and could do with a steer regarding the Wake Word setup on the satellite.

I am trying a Pi Zero running the latest 2.5.0pre in docker. The Os is Raspian Buster.
The satellite is configured as per voltron guide, with everything except audio and intent handling on MQTT.
It is working fine using the wake up button on the web gui without a wake word.

When i try and configure a wakeword, the cpu usage shoots up from 50% to flat out 100% all the time.

Comically, porcupine does work sometimes. IT can be a couple of minutes before you get a waking beep. I then utter my sentence which is processed normally along with an audio response.

I have tried configuring udp on the Mike and Wake word tabs with ip/port/siteid
I have tried both Porcupine and Snowboy, (and the others!) both do the same with the default wakeword configured.
My issue does not seem to be the same as another thread which focuses on the web server. I have tried disabling the web server as detailed elsewhere, but I still have 100% cpu usage. I am sure this will help once i have got the wake word under control.

Can anyone give me some recommendations for efficient configurations on this device. At the moment it just doesn’t look powerful enough!

Hi @Gfawkes ,

I was seeing the same issue (I’m using Porcupine). --noweb-server dropped the total cpu usage from 120% to 100%, but you’re right, it’s responsiveness was still poor.

Without checking I’m not sure whether Rhasspy is using version 1.6 or 1.7 of Porcupine, but I just upgraded it with 1.8 and found the overall CPU is now averaging 65% with wakeword running at between 50-60% and working much better indeed which makes it a viable solution for me.

I don’t think there’s any downside for Rhasspy to be upgraded to use 1.8. I expect someone just needs to create a PR for the package - If I get the chance I’ll try and do it.

Hi @Enc3ph4l0n ,

I had been using the Armv6 docker image. I also noticed that the included version of snowboy was continually restarting when i gave that a go, so i image it needs some love. Anyway, It seems that it is not the favored setup.

So i have switched to the Virtual Rhasspy-Satellite (https://github.com/rhasspy/rhasspy-satellite) instead with more success. Installation required some changes to the requirements file, but its running now.

I found that by using a personal wakeword with snowboy (.pmdl) along with the disabled web server drops cpu to around 30-40%. performance is now pretty snappy. Wakeup is pretty reliable and i dont need to shout or speak ‘really clearly’.
So, i think that part is working nicely. I just have to figure our why its stopped beeping,

Anyway, progress being made. It will be interesting to see how the new version of porcupine performs.

How did you mange to upgrade porcupine? Only with the pip command or are there any other changes in Rhasspy necessary?

I was pushed for time so I installed the new deb package and replaced the (two?) core Porcupine files and hotword files. I quickly glanced over the package but didn’t see anything else that would need changing - for the fact it works I presume there’s not.

Actually, I discovered a secondary issue to the responsiveness of the Zero. The case I put the Zero in was absolutely decimating the WiFi signal. For every command an excessive amount of packets were being dropped. I’ve taken it out of the case for now and it has been flawless for days.