3.8 KiB
+++ date = '2026-05-17T23:57:15-06:00' draft = false title = "Katchi, a dragon's best friend" tags = ['kobold', 'esp32'] +++
A smart-home for a Dragon
{{< typeit tag=h3 speed=50 breakLines=false loop=true
}} "It's the Future..." "Dumb homes are so 2010" "Is all of this really necessary?" — Concerned Friends {{< /typeit >}}
Smart-homes
The present state of smart-home choices is fairly acceptable. You have your major players, Google, Apple, Amazon and their associated services like Google Home or Alexa. These systems are fairly easy to set up; plug in the new device, type in some credentials or type a prompt on your phone, and done. Most of these systems rely on a central hub that orchestrates the entire smart home.
But all these systems have one fatal annoyance. They all require access to the internet.
Internet dependency
In recent years, it is common to run into issues with major providers. Privacy concerns, outages and the forced obsolescence of existing systems put a lot of pressure on me when building my first smart home. Sure the big players make it easy to set up and use, but for me the non-monetary cost was just too great. Besides the limitations in software, knowing that if I had an internet outage, or god forbid, the provider has an outage, I would be shit out of luck in turning off my lights turned me away from major providers.
So what did I use?
After spending a lot of time frustrated with my options and dealing with the difficulties in automating and doing what
I wanted with my smart-home, I went down the rabbit hole of options and found
Home Assistant.

Unlike the big-name smart-homes, Home Assistant is a self-hosted option that runs on your own hardware and locally connects to supported devices. It supports a wide range of devices and integrations and is fairly easy to set up.
I wont expound on it much more here, but I will link to the getting started, documentation and community for more information.
So what's the problem?
Of all the amazing options that Home Assistant gives us, it has a fairly significant miss; that being Smart Speaker integration.
Home Assistant Smart Speaker
The options for Home Assistant smart speakers are quite limited, they only offer one official product as of the date of publishing this post.
{{< externalLink url="https://www.home-assistant.io/voice-pe/" >}}
While the Home Assistant Voice PE works decently, it is the only off-the-shelf option for Home Assistant which considering all the freedom Home Assistant gives us, feels quite limiting. However, there is a solution.
The Solution
Thankfully we are not constrained by the limitations of existing hardware thanks to microcontrollers, specifically the ESP family of microcontrollers.

Using ESPHome you can create a whole myriad of smart devices based on the ESP32 microcontroller. It provides a very diverse family of options that can fit nearly any use-case. Think of it as an alternative to Arduino, where instead of writing C code you can write yaml configuration files that dictate and configure your ESP device.
Knowing this, I set out to make my own Smart Speaker.