In a previous post, we demonstrated building a voice assistant out of open source components. One of the issues that we didn't address at the time is that there are still dependencies on the cloud for some of the critical functions, such as the Speech to Text engine. Here we will see how we can modify that system to operate (almost) completely offline.
There are many different voice assistants available, but they share one common trait that seems so difficult to escape: a required connection to the cloud. Today we are going to build a voice assistant that can work completely offline, but we will explore setting up your own TTS and STT servers in a future article. For now, we will use the Mycroft servers which claim to respect user privacy by anonymizing every request and requiring an opt-in to their data collection program.
The situation seems so familiar: you have an air conditioner unit that uses an IR remote, but you want to control it via your own thermostat. At least then you could manage it remotely or start cooling the air before you get home from work. This was the situation I was in, and to solve it, I built a temperature sensor with an onboard IR blaster, allowing it to also send commands to my portable air conditioner. All of this can be done for under 20$ as a relatively simple DIY project.
As with most things, Apple has its own protocol for smart homes. Personally, I do not find any of the current hub offerings to be worth purchasing, which is unfortunate because the software is pretty well designed. The Home app on both the Mac and the iPhone are super well integrated with Siri and other Apple services, so it would be really great to be able to connect it to your existing smart home. Lucky for us, with Home Assistant it really is super easy to get your Home Assistant devices into the Home app.
Home automation is really awesome. Who doesn't want things to happen automatically around the house? One of the common questions about home automation is if it can be used offline. The answer is a resounding, yes! There are a lot of ways to do this, and they vary significantly in cost and difficulty, so I encourage you to really dig into each option to decide which is right for you.