Help us make voice better in under a minute

The point is that many of us Home Assistant entusiasts want ”Home Assistant” to become well known.

We want “Home Assistant” to become a household name and become a brand people recognise.

We want to use “Home Assistant” as the wake word when others visit out homes so we can show it off.

We do not want to say “Hey Nabu”. Nabu is not the project we love.

Nabu Casa is the company that many Home Assistant developers work, but “Nabu” does not represent all Home Assistant developers or the Home Assistant as a whole. Nabu still only represent the company Nabu Casa.

Why not instead use “Okay Assist” and “Hey Assist” as wake words if “Home Assistant” is not unique?

Here with “Assist” I am referring to Home Assistant’s Assist for default conversation agent standard Assist pipeline in Home Assistant:

The integration is also called Assist Satellite

and so is the Assist satellite entity

After all, Home Assistant’s official voice assistant is called “Assist”, and there are even official logos and branding for that name.

Would be great with option to set simply ‘Home Assistant’ as default wake word as a way to show off and help add brand recognition for Home Assistant.

Even on Nabu Casa’s website it says that “Assist” is the official name that the voice assistant, so makes no sence “Nabu” being default?

image

Assist is also what is described on the main Home Assistant webpage:

Are there any reason why not included “Home Assistant” as a standard wakeword phrase by default?

5 Likes

Just to highlight, there are several microWakeWord options currently available (Okay Nabu, Hey Jarvis, Hey Mycroft), with more coming. We want to use the Wake Word Collective tool to improve other wake words eventually; it just takes time and lots of samples to train good models. Trust us, this is just the start!

We are also interested in allowing language communities to pick wake words that work for them and build models around those. Keep an eye on our socials for when we open the tool for other wake words.

For those interested in making their own wake word, it is possible today with microWakeWord but requires a good GPU and expertise to tune it correctly. We think microWakeWord is the best option for fast on-device waking, but if you really want to make your own wake word it’s possible with openWakeWord (which doesn’t run on-device, but instead is run on your Home Assistant OS) Create your own wake word - Home Assistant


Answering questions that have been asked above (paraphrasing):

Why “Okay Nabu” and not “Hey Home Assistant” or something else?

Ideally, a wake word should not be something you expect to hear often in conversation by people in the home or via media (music, TV). “Nabu” is a fairly unique word, as opposed to “home”, “assistant”, and “assist”. The microWakeWord models are performing really well, and we like “Okay Nabu” :slightly_smiling_face:

In time, I expect the training process for microWakeWord to be simplified and for a community collection of wake words to start forming like openWakeWord has.

Does this just improve “Okay Nabu” or also future wake words?

For now, mostly just “Okay Nabu”. However, any audio data for one wake word can be used as “negative” samples for a different one, so it helps other wake words in that sense.

Keep in mind too that this data will be made publicly available under a CC0 license, so it will hopefully help in the development of future wake word systems. This is similar to how we’ve published our text-to-speech datasets in the hope that they will aid the development of future text-to-speech systems.

6 Likes

Hi @synesthesiam

I’ve used the above link to submit samples as I think it’s the least I can do to support a fantastic project.

But, I’d really like to be able to use something other than okay nabu in my production environment. I just can’t see my household members adopting it easily.

The problem I have is that I can’t get microWakeWord to accept anything other than okay nabu when I want to use hey jarvis

I select hey jarvis in the pipeline and I still have to use okay nabu

2 Likes

Thanks for contributing! Sorry for the confusion: the wake word selected in the pipeline is only for streaming wake word engines. Since microWakeWord is on-device, we have a different mechanism coming in the next release. We plan to adjust the pipeline dialog accordingly :+1:

Thanks, @synesthesiam . I’ll look forward to this.

1 Like

… On esp32 devices without a headache for novice users?
Currently, the “OK Nabu” wake word is simple to setup… And annoying.
If I could figure out how to litter my home with esp32 devices that would actually respond to “Computer,” I’d love it.

I have this on Assist configuration:

And this on the m5 Atom Echo (flashed with esphome ready-made project for voice assistant):

I am not using microWakeWord? Am I streaming voice all time?

I’m confused.

Edit: I answer myself. I am not using microWakeWord. Ready-Made project for Voice Assistant is not using microWakeWord component.

Yeah I’m really hoping for this, because “Nabu” happens to be a swear word where I’m from. :sob:

2 Likes

As I read it, the data will also be available to commercial, closed source developers.

Although I’d rather be proved wrong.

2 Likes

Could you add the opportunity to also collect data for other wake words?

3 Likes

So it doesn’t seem to be working for me. Even though I get the indicator in the address bar that is telling me the site is accessing my mic there is a red error box saying it can’t.

I would love to help out but unfortunately my Voice Assistant has been borked since the last major espHome update and nothing I have tried will bring it back to life (even a clean build fails). Several people have reported the same issue but this has been closed by the dev’s.

The issue is closed because it’s been fixed.

Have you read any of the comments on that issue? Your config is wrong (see your error):

  [mode] is an invalid option for [speaker.i2s_audio]. Did you mean [i2s_mode]?
  mode: mono

and 8 comments up from your config is the answer to fix the problem.

change it to read channel: mono and click SAVE

i.e. change

mode: mono
to
channel: mono

1 Like

Hi Jason,

I worked on the revamp of this site and would love to figure this issue out with you. Did you ever get it sorted in the end?

If not I would love to get to the bottom of it. If you could raise an issue on the GitHub repo, I will gladly help! Issues · OHF-Voice/wake-word-collective · GitHub

1 Like

Except you don’t need ESPhome to do this procedure…

1 Like

Thanks for the response @petro.

Yes, I have read through the comments and tried including the following to override what is included within the package but I still get the same error when attempting a clean build.

speaker:
  - platform: i2s_audio
    id: echo_speaker
    i2s_dout_pin: GPIO22
    dac_type: external
    channel: mono

I have also tried installing the project directly from Ready-Made Projects — ESPHome as suggested in another comment and this also fails.

The issue was closed on 19-Sep and scanning through the comments I count at least 7 people including myself who say that the problem persisted after this.

All the comments point to the same error, people using an old configuration.

[mode] is an invalid option for [speaker.i2s_audio]. Did you mean [i2s_mode]?
mode: mono

Everyone that posted that “they got it working” is using channel: mono. The files contain channel: mono as well.

How are you applying this change? Your error in that issue specifically points to you using the wrong key mode: mono and mode: mono not present on any of the current m5stack-atom-echo files. Which means you’re doing something wrong to update the configuration. So, I urge you to try again.

If you have further questions, please create a new post in ESPHome, this blog is not a place for support. When you do create a post, make sure you show new logs and explain which example you decided to try. And remember, if you get the same error about mode: mono, you’ve done something wrong because those keys are not present in the example files.

And that would be where?
(When Chevrolet introduces the Nova, no one told them that that means “no go” in Spanish.)

1 Like

Ok I will progress this in the correct place, many thanks for the help and suggestions.

My biggest issue with “OK Nabu” is the length. Alexa, Computer, Hey Google, all have three syllables. That’s 25% shorter than 4, and significantly easier to say. I’m surprised more people aren’t bothered by that.

4 Likes