Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Direct connection from satellite doesn't work #3

Open
tannisroot opened this issue Dec 20, 2024 · 7 comments
Open

Direct connection from satellite doesn't work #3

tannisroot opened this issue Dec 20, 2024 · 7 comments

Comments

@tannisroot
Copy link

tannisroot commented Dec 20, 2024

If I add microwakeword to Home assistant via wyoming integration, set it as default method and remove these lines from wyoming satellite service on my raspberry pi:

 --wake-uri 'tcp://192.168.1.7:10400' \
 --wake-word-name 'okay_nabu'

(and \ on the line before those)
the wakeword detection works great.
In debug mode, it prints these lines:

DEBUG:root:Loaded models: {<Model.OKAY_NABU: 'okay_nabu'>}
DEBUG:root:Detected Okay Nabu from client 36499818547860

However, if I re-add those lines and make the satellite try to use the wakeword instance directly, be it on the satellite itself (tcp://127.0.0.1:10400) or when it's on another computer (the same one I tested it succesfully first), wakeword detection just doesn't work.
In debug mode, it prints these lines:

DEBUG:root:Client connected: 36619420553939
DEBUG:root:Sent info to client: 36619420553939

and that's it.
Happens both with the docker image and when installed directly.

@jjdenhertog
Copy link

@tannisroot How did you configure the wyoming-satellite and wyoming-microwakeword together with the models? I only get to the place where it says "DEBUG:root:Client connected: 36619420553939". But I don't see any messages about the models being loaded.

@tannisroot
Copy link
Author

@tannisroot How did you configure the wyoming-satellite and wyoming-microwakeword together with the models? I only get to the place where it says "DEBUG:root:Client connected: 36619420553939". But I don't see any messages about the models being loaded.

I followed the instructions oh how to set it up, then just added it in home assistant via Wyoming integration and changed to it as wakeword method in the voice pipeline I use. Then I removed configuration associated with local wakeword detection, making the satellite fallback to remote (audio streaming) wakeword detection. After that, whenever I said the wakeword it would print about loading the model in debug logs. Although strangely the client would always disconnect after a wakeword detection and the model would be reloaded again, at least according to logs.

@jjdenhertog
Copy link

Ah! I actually thought you managed to run the microwakeword locally on a device. I'm trying to setup a wyoming-satellite together with wyoming-microwakeword on a raspberry pi.

That setup works well with open wake word. But it fails on the microwakeword implementation.

@tannisroot
Copy link
Author

Ah! I actually thought you managed to run the microwakeword locally on a device. I'm trying to setup a wyoming-satellite together with wyoming-microwakeword on a raspberry pi.

That setup works well with open wake word. But it fails on the microwakeword implementation.

Yes, that's what this issue is about.

@jjdenhertog
Copy link

Cool, yes. I'm interested in a solution as well. I would love to test microwakeword on my raspberry pi setup. Openwakeword words alright, but there is still a bit of delay to detect the wakeword. Maybe @synesthesiam can give us a nudge in the right direction 👀

@synesthesiam
Copy link
Contributor

It may be that the satellite isn't sending a "detect" message with the appropriate wake word name. I should add a command line option to set the default wake word model to use if no detect message comes in.

@tannisroot
Copy link
Author

tannisroot commented Dec 23, 2024

It may be that the satellite isn't sending a "detect" message with the appropriate wake word name. I should add a command line option to set the default wake word model to use if no detect message comes in.

In wyoming-satellite, isn't that what --wake-word-name is supposed to do? I did try setting it to --wake-word-name 'okay_nabu' instead of ok_nabu that openwakeword has and it still wouldn't work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants