Did anyone get precise working as a wakeword system for Rhasspy 2.5?

I am trying to use precise as the wakeword system for Rhasspy 2.5, but i can not get it working. Has anyone else got it working or is it just not ready yet ?

Yep, works here in virtual python environment on Manjaro (not docker), but had to unpack and install opengram and precise archives myself as well as copy several other files and set execution path.
satellite setup via hermes does not work for me.

@ulno What exactly did you do to get it working? i might try it too as Custom wakewords with snowboy work terrible compared to the custom wakeword that i created with precise.

Are you using a custom wakeword with precise ?

I just installed rhasspy 2.5 as described in the official documentation in a virtual python environment.
Then I ran these commands (in the rhasspy-voltron directory):

scripts/install-opengrm.sh download/opengrm-1.3.4-amd64.tar.gz .venv/tools/kaldi
scripts/install-precise.sh download/precise-engine_0.3.0_amd64.tar.gz .venv/tools
export PATH="$PATH:$(pwd)/.venv/tools:$(pwd)/.venv/tools/kaldi"

and after that started in that shell rhasspy-voltron with english profile.

Then I configured precise on the web configuration and trained kaldi and fsticuff.

I tested both “hey mycroft” and “athena” as wakewords, for athena I reduced the sensitivity to 0.4.

Both worked pretty well.

I am not yet using a custom wakeword with precise, but @synesthesiam and I were just talking with people from mycroft about simplifying the process of training these - so there will hopefully be some updates regarding that soon.

Hello @ulno ,

that explains why Precise is not working in my Docker installation, right? Is this a solvable problem?

Using “docker exec” I managed to install Precise in the docker container. But I failed with opengrm.

I assume you could try just running the download script and then installing things like I described, but again, I only ever have trouble with docker as I never know what’s happening inside, so if you have experience, just try to see if you can install precise as described. Would be nice if we had a way to use precise in the docker images too.

turns out you also have to install phonetisaurus the same way (just making a movie on how to install rhasspy 2.5 with precise and node-red).

@synesthesiam Shall I create an issue for opengrm, precisem, and phonetisaurus not getting installed in venv?

1 Like

Dear @ulno

I have now moved away from Docker and installed Rhasspy 2.5 in a virtual environment.

In the rhasspy-voltron folder I first noticed that I have slightly different files than you under /downloads - that’s because I’m on a Raspberry Pi4. I adjusted your commands according to the existing files (and had to install patchelf because this was missing) and executed the following commands in the rhasspy-voltron folder:

sudo apt-get install -y patchelf
scripts/install-opengrm.sh download/opengrm-1.3.4-armv7.tar.gz .venv/tools/kaldi
scripts/install-precise.sh download/precise-engine_0.3.0_armv7.tar.gz .venv/tools
export PATH="$PATH:$(pwd)/.venv/tools:$(pwd)/.venv/tools/kaldi"

There were no error messages. Rhasspy starts without problems and reacts to wakewords like Snowboy or Porcupine:
rhasspyserver_hermes: <- HotwordDetected...Hooray!

If I switch to Precise, the wakeword is loaded when Rhasspy starts. If I enter a wake word for Precise, which does not exist, I get an error message that the file is missing.

But none of the wake words can trigger - I never get the message “HotwordDetected”. Now I do not know what to do.

You can’t do too much wrong with the settings.
I have tested a sensitivity of 0.5 and 0.9 (at 0.9 Porcupine and Snowboy react very easily).

1 Like

super busy right now, will answer soon

I also can’t get Precise to work in the Rhasspy 2.5 Docker container. Whatever I do, it just doesn’t do anything after “rhasspywake_precise_hermes: Receiving audio”. I have tried various wake words, installed them manually in the profile directory (as they didn’t seem to be installed), even tried the “okay rhasspy” wake word, but nothing.

Has anyone succeeded in using Precise in the Rhasspy 2.5 pre-release Docker install?

I did add the udp ports to audio input and the wakeword listener (used 12102 and localhost:12102) and used parec -d my.pulseaudio.device --rate 16000 --channels 1 to record.
I also got a mistake regarding runner.py in precise not working and fixed it as described here: https://github.com/synesthesiam/rhasspy/issues/169


Just exchange runner.py line 99 with:
return_time = 40000 + time.time() if timeout is None else ( timeout + time.time() )

Does that help?
I also had to install phonetisaurus for making kaldi and fsticuff work.