I’m a beginner to HomeAssistant. After avoiding it for a year or more, I finally decided to give it the old college try as I have a Savant integration I’m desperate to replace. HomeAssistant seems a more open method for controlling and tweaking the variety of IoT devices I’ve accumulated over the last many years.
After a week of experimenting with running HomeAssistant in VM under Parallels on MacOS, with some foundational success with Alexa, Lutron, Hue, I eagerly purchased a Home Assistant Green, Broadlink RM4pro adapter for RF/IR, and Home Assistant Voice module, hoping to get the rest of the “basics” working.
Some elements of my experience have been less than desirable. I’ve captured a snapshot of my travails from the last couple days below. I can, and will, continue to flog these specific issues in separate forum posts. But I have a more general question at the outset:
Is this the expected experience for setting up Home Assistant in a home with established home automation devices? Should I assume that I’ll continue to hit dead-ends for recommended devices blocked by bugs the dev team won’t fix, and that I’ll have to test multiple alternate pieces of hardware to stumble on one that isn’t blocked by bugs, or alternatively, dig python script out of old forum posts and massage it into working? Is it expected that I roll up my sleeve and start making changes in the Home Assistant core enlistment, or build my own local instance of Home Assistant somehow? (Those aren’t rhetorical questions.)
I’m the first to admit I might be out of my depth, maybe. That doesn’t deter me, I love the learning curve. I possess a bottomless well of sadistic self-loathing that is appropriately matched to the process. But I’d hoping to understand, here at the outset, what I’m signing up for with this new hobby. Is it basically, “bugs all the way down” from the core OS, mixed with hours of fiddling and poor-man’s debugging through log files to get one integration working, then keep it working through future updates?
To be clear—despite the frustrated and sleep-deprived language here—this isn’t a long-winded complaint. I do, truly, just want to recalibrate my expectations: Is this my life now?
Thanks for your thoughts!
Integrating RF commands: My basic need is simple: I need to send two RF commands to my RF drapery receiver. I wanted something that worked “out of the box” without having to build my own hardware, fiddle with soldering and wires, learn whatever an ESP is supposed to be, etc.
I settled on the RM4pro based on numerous recommendations on this site and elsewhere. The newer version, the RM5plus, which has been out for a half a year plus, seemed a better starting place. But after [1-2 hours] digging through numerous links, forum posts, I came to learn the Broadlink Integration for RM5* is blocked on bugs in the stack, waiting for a fix (Broadlink RM5 Plus · home-assistant · Discussion #765 · GitHub, [Broadlink] Add support for RM5 Plus · Issue #150645 · home-assistant/core · GitHub, along with other newer adapters: Broadlink RM MAX is not supported in integration · home-assistant · Discussion #465 · GitHub)
OK, no problem, the RM4pro has been out for a long, long time. One would assume there were numerous existing Home Assistant users using it successfully for years and by now, it would have all the kinks work outed, no? And the initial experience seemed to match that expectation. Setting up the Broadlink RM4pro hardware was problem-free. Adding and testing commands from within the Broadlink app was easy and worked like a charm. Setting up the Broadlink integration in HomeAssistant… easy peasy.
But then it came time to learn commands. After several hours [4-5 hours] of fiddling and fighting with the workflow documented in the official integration documentation, I couldn’t get the adapter to learn new commands—commands that it learned just fine from its own app. Turns out—hours of wading through forums—there’s a bug in the implementation that makes learning virtually impossible (RF Learning Issues on Broadlink RM4 Pro · Issue #149100 · home-assistant/core · GitHub) and the dev team is resistant to fixing it.
Thanks to the many other users having similar issues, there are a number of forum posts with “workarounds” (Y'all I really need help with learning RF codes on my Broadlink RM4 Pro) that gave me some fetid hope for success, which led me into installing and running python for the first time under MacOS, in order to learn the commands at the command line using the underlying broadlink python package, which does apparently have the fix that the dev team doesn’t want to surface for the user.
But!! Attempts to run the commands in HomeAssistant are now giving me “Unknown Error” results that, tracking things down to the logs, seem to be some sort of syntax error in the broadlink config file that [4 hours later] I can’t seem to solve:
File “/usr/src/homeassistant/homeassistant/helpers/service.py”, line 904, in _handle_entity_call
result = await task
^^^^^^^^^^
File “/usr/src/homeassistant/homeassistant/components/broadlink/remote.py”, line 227, in async_send_command
code_list = self._extract_codes(commands, subdevice)
File “/usr/src/homeassistant/homeassistant/components/broadlink/remote.py”, line 152, in _extract_codes
raise ValueError(f"Command not found: {cmd!r}") from err
ValueError: Command not found: ‘Open’
I still don’t have this very simple RF command working in HomeAssistant yet.
Discord: There appears to be mature and well-used support for sending notifications to Discord. It seems like an ideal debugging tool. I figured this would be relatively easy to do. Unfortunately, the learning curve was high here, made more difficult by what I would guess is outdated documentation? (The Discord service documentation (Discord - Home Assistant) still talks about the “Devices & services” UI in Home Assistant, which, after [1-2 hours] I learned there is no such thing as “services” any more, they’re called “actions.”)
Fortunately, I found some posts from other users seeing a similar error (“Unable to find service notify.discord”) and a bug in the homeassistant db ("Unable to find service notify.discord" · Issue #68547 · home-assistant/core · GitHub), I was able to get a couple steps further…. But after several hours [2ish] of trying the recommended syntax, and several other permutations of the same syntax, I still don’t have this working yet.
Schluter Floor Heater: Fortunately, it didn’t take very long to discover the Schluter integration is broken. (Cannot set up Schluter integration · Issue #160104 · home-assistant/core · GitHub). Unfortunately, the official integration documentation doesn’t mention that the integration is unusable. (Schluter - Home Assistant), so I wasn’t able to save myself from the initial install, testing, scouring through log files, and trying different permutations in the setup before I was smart enough to just go straight to a github search.
I haven’t yet determined whether this is something I could fix myself by rebuilding & fixing the bug in the Schluter integration, or even how to do that, but I suppose that’s the next step…?
Home Assistant Voice: This one has a better ending… at least for now.
I set the new HA Voice preview edition up last night. I assumed (hoped) after my preceding issues, this new piece of hardware would have, at least, an easy onboarding experience.
Running through the initial workflow for the device setup was painless and problem-free. Awesome! Somewhere around the stage where the ESP device was created, there was (I think) a transient error for server connection. I couldn’t recreate the error and the ESPHome device appeared in my Integrations list, with an underlying Home Assistant Voice 0a349f Device and 15 associated entities. I could send media to it as an audio output, and the device recognized the wake-on word.
However, it failed to take action on any commands. I dug through logs and found errors relating to failures to connect to Home Assistant, which took me to (Troubleshooting Assist - Home Assistant). The advice suggests I have a “complex network setup,” which I do not, and that the Automatic Home Assistant URL was set incorrectly, which it was not, at least last night.
As I was writing this post up, I tested last night’s voice command… and it worked. Uh, awesome?
So I eagerly went back to “Set up voice assistant” from the ESPHome integration page, and got the cute little bot wizard guy through update checking, initial setup, and eventually, again, a failure at with the “The voice assistant is unable to connect to Home Assistant” error screen, and a “Help me” link that sends me back to the advice listed above.
But, overnight, the Automatic URL became incorrect. Or I was bleary-eyed from fighting with the broadlink until the wee, and I misread it? But now I’ve turned off Automatic (EEK!) and set the IP address correctly, and viola!, I think – think! – things are working…
until I hit the next unexpected issue….