3 ms·
I have not used this (yet), but there are a lot of problems with Home Assistant, with the main advantage being that it has all the integrations already written
by rkeene2 5y ago
I have not used this (yet), but there are a lot of problems with Home Assistant, with the main advantage being that it has all the integrations already written and it works for most things almost all the time.
Issues with Home Assistant as a developer of integrations:
- internal inconsistent politics slow adding new developers
- documentation is in sparse in many cases
Issues with Home Assistant as an administrator:
- The JSON database periodically corrupts itself
- The two "core" and App Daemon components can't live in the same system, must use Python venvs
Issues with Home Assistant as a user:
- There are two ways to configure integrations: via config file and via DB, which is really obtuse and difficult to version control, also sometimes the same integration is configured twice, once in each method, and sometimes parts of the integration are split
- Scripts in Home Assistant are linear steps, no branching. This is useful only in basic scenarios. There are three main ways of dealing with this with various trade-offs, and two of them are just moving the logic out of Home Assistant (python scripts, which run in a "safe" environment, and App Daemon which is unconstrained, but much heavier), with the third being using the templating system that's bolted onto the configuration system to generate dynamic conditional resolutions.
- If there is an error in your script (because, e.g., a device is offline temporarily) the script will abort instead of continuing, which means for example if your air purifier stops working due to the cloud, your local A/C stops getting set - this is not resilient
- The dashboard config (Lovelace) can be configured by the UI or config file (see above about integrations), but again it cannot be very dynamic in either scenario since the templating system cannot produce all possible configuration results, so for Lovelace's UI to be dynamic you need to write another tool to read the Home Assistant config and generate the resulting config (App Daemon can't directly do it)
- Upgrading between versions of Home Assistant generally breaks things and you have to spend time fixing them
That's most of the big issues that I can think of right now.
- madjam002 5y agoI've been running HA for 4 years and I've never had it corrupt, it's been the same install as well. That said, I agree the integration configuration is a bit messy, although recent updates have made this better. For automations and scripts, I use the built in automations for simple tasks (turn X off after Y minutes), and Javascript + Home Assistant JS + Generators for more complex automations.
- jjeaff 5y agoI had corruption problems until I bought a high quality SD card for my raspberry pi. Then, I switched to an Intel NUC with an SSD and have never had any corruption in the 2 years I have used it heavily.
- rkeene2 5y agoThe issue appears to be that it updates that JSON file isn't re-written in atomic way