There’s a lot you can do to design a resilient smart home, from choosing an open ecosystem like Home Assistant to avoiding devices that depend on the cloud to work. But sometimes, things just don’t go to plan.
A smart home device not working at all is one thing, but what about when something only works some of the time?
Inconsistency is the worst
Hot take: I’d rather something not work at all than only work some of the time. If something doesn’t work, especially something I’ve just installed, I can have another crack at it. I can try and set it up again, flash new firmware, delete it from Home Assistant, reposition it, and I won’t feel tempted to use it in the interim because I can’t.
Inconsistency is like kryptonite to a reliable smart home. For as long as you leave that device connected, you’re going to be tempted to use it. For as long as the device isn’t firing on all cylinders, you’re not going to be able to trust it. Automation is a big part of the appeal for a smart home; you won’t want to build scenes and automations about devices that frequently let you down.
This problem isn’t limited to the smart home, of course. But it can feel particularly irksome when something as simple as a light switch doesn’t work consistently. It defeats the object of going smart in the first place, paying over the odds for a system that is somehow worse.
It can also get in the way of one of the simplest design principles that you should follow when designing your smart home, which is to say that a home with automations and voice control should still be as functional as a “dumb” home to a guest or visitor.
My garage door opener is tormenting me
I’m currently going through this very issue with my garage door. The old garage door opener died, and every quote I received seemed to use the same opener. I did some research and discovered that the manufacturer uses a proprietary automation system that isn’t compatible with Home Assistant. I did a little more digging and found a workaround in the form of an ESP32-based microcontroller.
After double- and triple-checking that my opener uses the same system, I went ahead and ordered one. It arrived, and I installed it by connecting a few wires to the terminals on the side of the opener. Before I did this, I flashed the correct firmware for use with Home Assistant and set up Wi-Fi access. Setup finished, or so I thought.
The microcontroller immediately appeared within Home Assistant, so I added it. Immediately, I had access to a mass of controls (too many, really) with statuses for what position the door is in, whether the light is on, and so on. I also have controls for opening, closing, and stopping the door in place, plus a toggle switch that sends an open or close command to the door.
Unfortunately, only the toggle command seems to work, and it fails at least 50% of the time. Sometimes after opening, the microcontroller beeps an error code. Wait a few minutes, and the same toggle button closes the door… usually. When I exposed the door through HomeKit Bridge so that I could control it via Siri and my iPhone, literally none of the controls worked (and the toggle feature was absent).
Did I buy the wrong thing? Looking at specifications, it seems like the controller should work. Did I wire it incorrectly? Not according to the diagram I followed, and I’ve tried a few different configurations with no success. Is it a Wi-Fi issue? This seems unlikely, given that my wireless router is located a few feet away in the room above. Is it faulty? Possibly, but I’d expect it not to work at all if this were the case.
So what can you do about it?
This is the part where I’m supposed to provide some brilliant solution to the issue, but the sad reality is that I’ve spent a few hours on this problem, and I’m no closer to solving it. Sometimes, things just don’t work, and the path forward isn’t clear.
Sometimes there is a pattern. Shoddy workmanship is perhaps the most obvious of the bunch, which means avoiding brands that have let you down in the past. The Home Assistant community tends to be pretty vocal about which brands are worth the money, so you can often avoid disappointment by reading what others have to say before you buy.
Sometimes, it’s a protocol issue. I’ve never had a problem with my Zigbee devices, but I like to avoid Wi-Fi since even my regular Wi-Fi devices have issues connecting from time to time. Z-Wave and Thread are two alternative mesh networks you can use if you are looking to bypass your router.
Devices dropping off the network could be a coverage issue, so adding a few extra repeaters might be worth a shot. For protocols like Zigbee, Z-Wave, and Thread, this means adding powered devices (like smart plugs or bulbs) to bridge the gap between battery-powered sensors.
If the protocol appears to be the issue, you can also try changing which channel you’re using or positioning your radio away from USB 3.0 ports and other sources of interference. Picking Z-Wave over Zigbee and Thread is another option, since Z-Wave avoids the crowded 2.4GHz frequency.
Ultimately, specific advice is going to depend on what you’re having trouble with. I need to get in contact with someone who knows more about the opener than I do. Sometimes, seeking an alternative solution is the best path forward. I’m considering a SwitchBot Bot smart button presser and a plain old wall-mounted switch if I can’t solve the problem.
A device not working doesn’t necessarily mean you’ve done something wrong, but there are some big Home Assistant mistakes you should try and avoid.