I've been all-in on Home Assistant for the past year, building out my smart home and seeing many quality-of-life upgrades as a result. From linking my PC's audio interface to my smart lights to custom notifications, it's been great. Plus, I can replace a ton of cloud-based tech with locally-controlled options that are just as powerful, or even more so. I previously used a Google Home Hub and a Google Nest Mini for smart home voice controls, but since picking up the Home Assistant Voice Preview Edition earlier this year, it's allowed me to pack up Google's voice assistant for good.

The Home Assistant Voice Preview Edition is just like a Google Nest Mini in that you can use a wake word to talk to it ("Okay Nabu," in this case), it will respond, and it can control devices, music, and set timers. The difference is that you control the data, and that also means you control the responses. As the name implies, it's a "preview", meaning that it's not meant for just anyone yet, but for those with the technical knowhow and the time to invest, it's a more-than-worthy replacement.

👁 A photo of Home Assistant Dashboard with custom cards
8 "hidden" Home Assistant integrations worth setting up

If you're knee-deep in Home Assistant like I am, then check out these more niche integrations that require editing your config to use.

What is the Home Assistant Voice Preview Edition?

It's not a "finished" product

Home Assistant and the Open Home Foundation have been focused on building an "open home" environment that allows anyone to bring their own smart home devices from their respective ecosystems and integrate them into one platform. For some, there may still be a cloud reliance, while others allow for complete local control and cutting them off from the cloud entirely. However, while there is a Google Assistant integration that allows for integration of existing Google devices for controlling devices in Home Assistant, one of the primary goals of the ever-evolving project is that a cloud connection should not be necessary if the user doesn't want it to be.

The Home Assistant Voice Preview is a device that essentially gives a glimpse into what that future may look like, hence why it's called a "preview". It's not designed to be a full Google Assistant or Amazon Alexa replacement just yet, and instead exists as a piece of hardware aimed at the most passionate users who want to play around with what an early look at what the future of open-source, locally controlled voice assistants could be. Right now, while it has a lot of basic functions out of the box, you can't just say "Okay Nabu, what's the weather like tomorrow?" and expect an answer akin to what Google would provide. In fact, out of the box, you can't expect an answer at all.

Nabu Casa, the company that makes the Home Assistant Voice Preview and is founded by many of the same people who founded Home Assistant, says this in its FAQ, under the section titled "Why is this called the Preview Edition?"

It is our vision to make open, local, and private voice assistants a reality in any language. While we have made great strides in realizing this, it is such a massive undertaking that we need our worldwide community to participate in its development. An essential ingredient for the community to drive the project forward is a standardized hardware platform for voice, built for Home Assistant from the ground up: Home Assistant Voice Preview Edition.

While for some, the current state of our voice assistant may be all they need, we think there is still more to do before it is ready for every home in every country, and until then, we’ll be selling this Preview of the future of voice assistants. Taking back our privacy isn’t for everyone - it’s a journey - and we want as many people as possible to join us and make it better.

So, with that in mind, don't pick up one of these devices expecting it to beat every voice-controlled assistant you can buy today. However, if you want to contribute to development and testing, while getting to experience a bespoke device that represents what that future could look like, it's entirely worth picking up. In fact, as this is a totally open-source device, you can even build your own that interacts with Home Assistant in the exact same way, and that level of openness has been enabled by the work put in and documentation created by both Nabu Casa and the community.

Replacing Google's own functionality

The community plays a part

As already mentioned, the community is a big part of this particular device, and there are easy-to-deploy tools in Home Assistant that will not only achieve what Google already has, but even surpass it. Out of the box, you can invoke the following commands after invoking your wake word:

  • Turning on and off entities
  • Turning on and off lights, changing brightness and color, in specific areas
  • Control windows, curtains, and covers
  • Run scripts
  • Control media players
  • Control vacuum cleaners
  • Add to lists
  • Get the date and time
  • Start, cancel, edit, and retrieve timers
  • Combining timers with controls

Reading that, there are some notable omissions. You can't say "Play X song on Spotify" or ask for the weather, and for a Google Assistant replacement, those are kind of a big deal. Thankfully, that's where the community comes in. Using the Home Assistant Whisper add-on to transcribe my voice to text so that it can be understood, we can use a couple of community-made blueprints to add those functions back in just a couple of minutes. If you don't have hardware that can use Whisper (though I run it on a 5700U, so it doesn't take too much computational power, to be fair), you can even use "speech to phrase," which is less versatile but still works.

The first blueprint worth setting up is the weather blueprint, and it does exactly what it sounds like it does. Basically, it creates a number of voice commands that can be used to retrieve the weather, and it comes in two variants: totally local or LLM-powered. I use the LLM-powered version of this as I self-host my own LLM, and it immediately offers significantly more than I'd get with my Google Nest devices. Rather than being fairly rigid in my questioning, I can be a lot more vague and request contextual information alongside it. With this blueprint, I can ask questions like "Do I need sunscreen today?" or "Will it rain tonight?"

The local-only version, without an LLM, is still pretty powerful and adds the functionality for the weather you'd expect from the likes of Google or Amazon, but it's the control that you get from being able to dictate how your voice assistant responds to you that's the most amazing thing. With my own self-hosted LLM, I can get unique, context-based responses that give me more than just the ability to ask for a holistic overview of the weather for a given time period or date.

The next is the Music Assistant one, and again, it comes in a local-only or an LLM-enhanced version. I use the LLM enhanced version, but I've shown the local one above so that you can get an idea of what it can do without even needing an LLM. Paired with the Music Assistant add-on, you can do all of the normal music controls you'd expect, and with Music Assistant's Spotify Connect plugin, it works just like you'd expect on a Google device to cast your music to your speaker.

With an LLM, things can get very interesting, though. You don't have to be as rigid in your requests for one, but you can be descriptive with your requests. For example, "Play the latest Taylor Swift album" rather than needing to actually say the name of the album. It's not that you need this functionality, but it's pretty cool to be a lot more vague and, overall, more conversational with a voice assistant. It feels more natural and is just as responsive.

Of course, you can create your own commands as well. Rather than using blueprints or community scripts, a simple pre-defined voice command is incredibly easy to make in Home Assistant's automations. With just a "conversation" trigger and the text corresponding to your command, you can define simple controls that will do whatever you want. You could create a conversation trigger like "Mute my phone," which then turns on do not disturb on your phone, like so (though with proper indentation):

trigger: conversation
command:
- Mute my phone
action:
- action: notify.mobile_app_

It's shockingly simple, and you can build your own commands in less than a minute once you have everything up and running.

It's more work, so it's not for everyone

Building your own software takes time

While I absolutely love the Home Assistant Voice Preview Edition, I recognize that it's a lot of work when compared to a Google Nest or Amazon Echo device. It's not for everyone right now, and that's the point. The Preview Edition is essentially a way to get the community involved and testing, coming up with ideas and ways to make their voice assistant work for them. People share the things they work on, others take them and improve it, and the team at Nabu Casa can learn what people like and don't like so that they can bring new software features and improvements tailored to those people. Even wake words are constantly being improved by collecting voice data from the community, and you can train your own wake words, too.

Right now, as a tech enthusiast and developer, I love this little device. It's been easy to switch from "Hey Google" to "Okay Nabu", but that doesn't mean it will be for everyone. That's okay, and there's a reason it's a preview rather than a finished device. I absolutely love it, though, and if you're in any way like me, you'll probably love it, too.