Hacker News new | past | comments | ask | show | jobs | submit login
Home Assistant OS Release 8 (home-assistant.io)
250 points by balaji1 on May 29, 2022 | hide | past | favorite | 138 comments




Thanks! the major threads look to be:

My smart home 2021: A Home Assistant love story - https://news.ycombinator.com/item?id=30349767 - Feb 2022 (200 comments)

Smoking a turkey with Prometheus, Home Assistant, and Grafana - https://news.ycombinator.com/item?id=29361741 - Nov 2021 (71 comments)

Home Assistant – open-source home automation - https://news.ycombinator.com/item?id=28544835 - Sept 2021 (177 comments)

Home Assistant iOS app adds local push notification support - https://news.ycombinator.com/item?id=27779453 - July 2021 (76 comments)

IoT Unravelled Part 1: It's a Mess but Then There's Home Assistant - https://news.ycombinator.com/item?id=25184763 - Nov 2020 (188 comments)

Open-Source Home Automation - https://news.ycombinator.com/item?id=21665125 - Nov 2019 (231 comments)

Home Assistant: Open-source home automation platform running on Python 3 - https://news.ycombinator.com/item?id=17826373 - Aug 2018 (196 comments)

Home Assistant is an open-source home automation platform running on Python 3 - https://news.ycombinator.com/item?id=15521743 - Oct 2017 (170 comments)


I haven’t used home assistant much in earnest, but I have some gripes after dabbling:

- to get the most out of it, it wants to be installed as an “OS” on a dedicated device (like a raspberry pi). Without doing this, you can’t install add ons from the store. I’m guessing this might be because the add-ons themselves are packaged with docker?

- I went ahead and did what they wanted, and dedicated an entire raspberry pi to home assistant. But from there, it seemed extremely GUI oriented… I had to install an add on just to see my config files! I know plenty of people have had success keeping their configs in version control, but that seems to be fighting the current.

So as a particularly advanced user, I don’t think Home Assistant is for me. Which is perfectly fine!

Does anyone have any recommendations on home automation software for people who write code for a living? The main thing I’m after is a decent library of supported devices that I don’t have to reverse engineer and write SDKs for myself. I’d also like to dump any/all sensor readings and switch states into Prometheus and view data with grafana.


I run HA in docker. Configs are in a volume mount and get backed up with the other zfs datasets (I'm sure you could put them in git too..). Extensions work fine but sometimes you do need to run another docker container, eg zwavejs2mqtt. All that stuff lives in docker compose files in git.

They have moved to be UI based, which does seem to work much better for most users given how complex automations can get.


I agree. First I was pretty heavily against moving a lot of the configuration into UI. But I've embraced it since then. It makes it less "pure", sure, but it's so much quicker now to get things done in my experience.


Unfortunately HASS idiotically demands "host" network access, it's designed to be broken in other configurations.


It works without host access. It's just that to auto-detect devices on the subnet requires low level access across several protocols. Perhaps this could be done without host access but it seems to be a difficult problem.


No, it doesn't work without. Auto-detection is one thing, even that can be NAT'ed, definitely not difficult - bridging broadcasts between subnets is an OLD thing. But I digress, I'm actually speaking of all the integrations that foolishly assume the bind IP and the advertised IP are the same. So it's either an invalid bind address or an inaccessible internal one.


Mine is running with normal isolated networking. Z-wave and zigbee are both working fine. No integrations that don't. I think I originally had to assign the hue bridge to have a static ip though..


Neither Z-wave or ZigBee are the type of thing that would have to be directly visible on your local network to work properly. Try Homekit or something that has actually uses IP networking.


Kasa uses direct tcp/udp in my setup and works fine. Same for DLNA servers. No issues.


Which integration are you referring to? I've had it working fine.


> Without doing this, you can’t install add ons from the store.

Usually you can do it yourself, because yes they are just docker containers. I don't use them myself as I don't find much use for most of them. The more important addon tool is HACS and that works in the stand alone docker container.

> But from there, it seemed extremely GUI oriented… I had to install an add on just to see my config files

Yes it's very GUI focused now, you can usually get to the basic yaml config in any screen though if you click through to manually configue that component. This was generally done because the yaml config method was a pain even for the tech literate... because yaml.

If you want proper code in HomeAssistant have a look at AppDaemon https://appdaemon.readthedocs.io/en/latest/HASS_TUTORIAL.htm... Makes it easy to use Python in HomeAssistant.

Alternatively there is Node-red https://nodered.org/ (js visual node programing automation) and huginn https://github.com/huginn/huginn (Python automation)

They will never offer as much integration as HA so I tend to find using HA as a dashboard/device integrator and then Node-red/AppDaemon for the actual automations to be more optimal.


Wasn't Huginn ruby? Is it possible to use python from the ruby runtime?


Doh... Yes you are right, it is indeed ruby. I got my languages crossed, sorry


> "Does anyone have any recommendations on home automation software for people who write code for a living?"

I develop my own home automation components and use MQTT to interface with HA using its MQTT integration. This gives me the freedom to have fun developing sensors, presence detection, garage door openers, etc, all still with zero reliance on "cloud". And I still benefit from a single UX and integration point on HA, which to me is the biggest value.

I run HA on Docker and it's locked down as much as practical. For example, I use nginx reverse proxy and limit HA itself to 127.0.0.1:8123 -- I don't need/want anything automatically discovered on my network.

I also have no need for addons. That just seems like more headaches when upgrading HA.

Keeping things simple with HA has worked great.


I had the same concerns as you. Here is what I did:

- setup HASSOS as a VM in my proxmox (and passing the usb zigbee stick through)

- install HACS for extra addons

- install the VSCode addon (meh, I’d prefer vim)

- install zigbee2mqtt

- write all my automations with appdaemon

That last point lets me write everything as python code instead of point and click (nodered) or some weird and limited (to me) yaml. With appdaemon, anything python can do is possible and you get an api to HA for the automation part.

VSCode also gives you a terminal so you can use git etc.

If you prefer there is also the option of using ssh to edit your files directly, you can break out of the default HA shell over ssh with “exit”.

HA didn’t make much sense for me until I heard of appdaemon. Now it’s amazing for me.


I personally use NixOS for everything, so I totally get the want for versioned config as an advanced user. But I did the opposite and put HA on a raspberry pi. If I die or am incapacitated I want my wife and kids to still be able to manage the lights and other automations. I'd also probably just leave the pi with the house if I sold it, since it is an integral piece needed to fully utilize a lot of installed hardware in the house. I mean I wouldn't take out the sprinkler computer either.


Yes, forcing the OS on people is a bit much. Rpis are not super reliable due to sdcard wear, so i personally prefer to run it on a X86 home server, so the os is not an option then as I use it for other thigs. Currently I'm using a VM to run the os on that server, which seems excessive, comsumes 20gb as a vdi image. I believe a supervised docker install is an option now, but it's officially classed as unspoppported. Shame it's so convoluted to get running.


20gb is excessive? I run it in Proxmox myself, and give it 100gb. Not because it needs it, but because it _deserves_ it. Of all the silly things I host in my house, it's the most deserving of resources.


I'm not worried about the storage, but (almost) forced to run an OS is a bit much. I just want to run it on the same machine as other services and the VM is to me a clunky way to do that. Still overall like HA though.


You could always use a RPi but not boot from a SD card.


Personally I wrote my own home automation software. At the time, Home Assistant wasn't compatible with my hardware, now I just prefer rolling my own solution anyways. I do not recommend my software to others. (It's written in Visual Basic and has a ton of personal conveniences basically hardcoded, though I try to maintain the general assumption in design someone else may use it someday.)

Depending how sophisticated your needs are, if you write code, consider writing your own. With libraries handling most of your hardware integration, writing a home automation system is often primarily writing the glue between. (I didn't do this. I made mine much harder for myself, I speak directly to serial ports with hardware codes, it's also much buggier than other solutions.)


It’s understandable why they do this. Given the complexity of a home automation set up with countless error modes across devices, sensors and connectivity alone, reducing any potential problems on the software side at least is logical.


I have used HA on and off for years and have the same issues with it. I want to easily understand the config files it is running with, and be able to configure anything by editing these files, and I don't want it writing to the config (this is one of my biggest gripes — no decent separation of config and state). I want to tie it to other systems myself rather than have it try to automatically discover things. I still didn't find a suitable alternative.


Seems like there is a grafana add on too?

https://github.com/hassio-addons/addon-grafana

Yeah, if you want to have it 'just work', a dedicated Pi seems fine, though I'm considering moving it onto my NAS if I get a usb Zigbee stick (I have one sitting on the pi's gpio pins).

I know I ran the motioneye service on the nas (docker container) as the Pi was struggling a bit, and to have more room to write the files. If you are already familiar with docker, you can totally run the add ons yourself.

You can also write your own automations in python with HA https://appdaemon.readthedocs.io/en/latest/

And if you wanted, I think you can configure appdaemon to run without Home Assistant if you have something else running the MQTT service, so you could add the Zigbee2 add on (just a docker image https://www.zigbee2mqtt.io/) and interact with it directly.

Zigbee2Mqtt does a great job supporting lots of devices (IKEA stuff for example), so I think you might just want to get a zigbee stick and go nuts on the MQTT instance yourself. Shouldn't be too hard to log the MQTT events into your custom dashboards.

You might not even want AppDaemon if you want to just code up an event loop yourself...?

But I'm pretty happy with the gui/yaml home assistant experience, as I mostly want fairly simple and predictable automations, and the dashboard is good for the whole family to use as well.


I have Home Assistant OS running in a VM on an HP EliteDesk 600 G3 Mini running Proxmox. I don't really use this for automations directly, although I do have some alerts. Primarily I use this as a dashboard and as a common API for everything in the house (zwave, zigbee, hue, Lutron, Shelly, etc).

I honestly don't do a ton of automations. The one really important one controls a hot water recirculating pump with a Shelly One set up as a temperature sensor. This is a small ruby program that uses MQTT to set the state of the zwave switch controlling the pump switch and directly talks to the Shelly for temperature readings. It talks to the HA API for settings but has reasonable fallbacks if things fall over.


You can always SSH in and edit the config that way (that used to be the only way to do most configuration). If you want your automations to be in a proper programming language instead of rules defined in YAML, check out AppDaemon.


I use FHEM (https://fhem.de/) to automate my home.

Its written in Perl and a bit dated, but it's small and connects with everything I have. Plus it includes a MQTT server.


I didn't really like it last time I tried it either... I'm going to try ESPHome next: https://esphome.io/index.html


...which is another OSS project from the Home Assistant team :)


You may want to take a look to OpenHAB.


HASS makes it to the top of HN about once a month for good reason!

Probably one of the most well developed open source projects I've seen, both from core contributors finding a way to get paid for what they do every day with nabu casa as well as a large and thriving community.

Over the past two years there's been a ton of work put into making things more plug and play and GUI for folks, but all the technical wiring under the boards is still there for doing just about anything you want.

I have basically everything off the cloud, except for a few things I want on there. If you want everything off the cloud you'd be wise to do a bit of research and get a zigbee and or zwave stick.

Don't blame HASS for IoT providers that are routinely pushing up firmware that breaks anything that interfaces with their products without going through their cloud, but for most things there are things out there that work great without it.


My experience over the past six months of using Home Assistant is mixed.

With every monthly update, something breaks, stuff gets deprecated, then removed. I report those issues, but they get quickly closed without being resolved.


I just don't update home assistant monthly. Maybe once or twice a year? Tbh that seems to work super well. Never have to think about it and it just works.


My solution is similar - I read the release notes every month or so, and upgrade only if I am interested in some of the new features. I am willing to fix stuff if it breaks, and I have a backup config I can downgrade back if needed.

I take a similar approach to firmware upgrades for my IoT devices - I run them on a couple of separate vlans, so I feel okay only updating them every few months when I see the need (mostly custom builds of tasmota/esphome/etc.)

HA is not ready for grandma, but most technically inclined folks should be able to get a ton out of it after you get past the initial learning curve.


I recommend using the add-on "Check Home Assistant configuration" before every upgrade. I only upgrade when I get the confirmation from this add-on that nothing will break.

The add-on actually download the new version and checks my config file against it. When something breaks, you get the error message so you can fix what's not working (happens once or twice a year for me, usually a config change), and relaunch the add-on to test again.


I have been using home assistance for a few years now, having migrated from the SmartThings eco system.

Over all I am happy with it, but it is increasingly harder to find devices that are not cloud encumbered, even some things that have integrations with HA are basically HA interacting with the OEM cloud API, which not local control.

I prefer zigbee, but I fear the migration from Zigbee to "Matter" is going in the wrong direction, as Amazon and Google are really pushing cloud based control over Local Control...


I use Shelly relays installed behind all my switches to automate every single light in the house: https://shelly.cloud. As a perk you retain the functionality of the existing light switch.

They are reasonably priced, are built with local control as the primary feature and there's not even a hint of Silicon Valley/VC/"growth & engagement" smell.


And you can also reflash them with Tasmota/ESPHome for fully local control.


> I use Shelly relays installed behind all my switches [...]

> As a perk you retain the functionality of the existing light switch

This sounds super interesting, so both the control from shelly/HA and the physical light switch can be used?

Do you have any pictures/blog/something about how to set that up? I briefly looked into this in the past, but it seemed impossible with the existing wiring (only the live wire is behind the physical switch, no neutral).


Here are some wiring diagrams that should make it obvious: https://shelly.cloud/knowledge-base/devices/shelly-1l/#tab_6...

Basically the switch becomes a simple boolean input to the Shelly - the actual module is always powered. This allows you to turn it on via the network and turn off at the switch if you wanted to, or completely detach the switch from the actual light and only use it as an input to your home automation controller (maybe you want to use it to toggle a different light than the one it's connected to?).

For no-neutral operation they sell bypass resistors that you can put in parallel with your light to pass through enough current to keep the Shelly powered on.


It probably helps that they're based in Bulgaria.


But my understanding is that Matter is conceptually just porting Zigbee to run on IPv6, and no longer being tied to the special Zigbee variation of IEEE 802.15.4.

Matter re-uses the Zigbee Cluster library for actual device control. It can operate over any layer 1 and 2 solutions that support ipv6, but the blessed implementations seem to be Ethernet, Wifi, Thread, and Bluetooth.

It will remain local control, on Apple's insistence. Apple is pretty stubborn, in that the only cloud server allowed to be involved in its home automation systems is iCloud, which is basically only used to let Siri on your phone control your home when away from home.


But that is the thing. The special 802.15.4 is what made zigbee attractive to people like me. How have their own custom zigbee hub and uses a variety of devices from several manufacturers that have all of them report to the zigbee hub that I control

Moving it to just standard wifi, Ethernet, etc will allow device manufacturers to lock out people like me

Others in the community seem excited for it however anytime you have Amazon, Google, and Apple all working together I can never see how that results in good things for users as each are open hostile to user control in various ways.


> some things that have integrations with HA are basically HA interacting with the OEM cloud API, which [is] not local control.

That's surprising+disappointing to hear. I wonder if there's some sort of list of devices that rely on this ? Would be good to avoid them.


I've actually found it easier to find zigbee devices at reasonable prices lately due to Amazon including ZigBee in their recent hubs.


I've been bitten by HA twice now. One time the Pi it was on simply slowed to a crawl all of a sudden; killing HA fixed that issue, including for large-ish writes to the SD, but that's hardly an option. Second time it broke on me it simply started throwing tons of errors after an upgrade. Both incidents at a time when I had other things to do than spend hours fixing the light switches. Also that terrible YAML DSL was a huge pain since I need this sort of thing infrequently enough to never remember how it works. I definitely can see the appeal but I don't want things like light switches to depend on something that flaky.

Currently running an instance of deconz for all the zigbee essentials which is a lot less powerful but has been rock solid. I have a bunch of Go apps running on the living room Kubernetes, one that streams all events from Deconz and a few other sources to Kafka running on a Raspberry Pi and a few more that add automations that deconz can't do. I'd expected this to be flaky as hell, so the apps running there aren't critical, but it's been rock solid for over a year even though Kafka isn't even supposed to run on ARM.


These issues are why I suggested to a co-worker to run it on a low spec intel nuc and not a Pi. They are cheap second hand and far more reliable than a Pi so are great for a HA server.

He's had great success with the built in backup to google drive solution. He fragged the whole setup once without bothering to do any trouble shooting he just reinstalled the OS and applied the backup and was up and running in no time.


The reliability issues are usually SD card related. I run my PI from a cheap 128GB SSD connected over USB3, it fixes all those issues.


I had so many issues on RPi. Got an odroid instead and now it's running with no hassles off eMMC.

SD card was probably a major reason, but i didn’t want yet another thing hanging off a usb port.


I wanted to jump in and praise this project. After INSTEON suddenly shut down last month, I was able to set up Home Assistant and restore control to the perfectly functional network of devices orphaned by their makers.

Great work, all!


Always seamed to me overengineered. Maybe is because I'm skeptical about automations, and I like physical buttons, one button that does something, and automations made in solid and reliable ways (such as mechanical relays for example). But if I need something "smart", and I have a couple of devices in my house, with a couple of automations (basically for laziness, not something I couldn't have done by pulling some extra wires and with mechanical timers and relays), I do them in the most simple and clean solution.

Now all the automations rely on a local MQTT server where my devices connects to an a ~300 lines python program, that communicates with the MQTT server and applies all the automations, and also exposes a simple REST API to do things with a simple `curl` if I need so. Everything (MQTT server and python script) runs on my home router that has OpenWRT on it. I find it simpler to express automations with code than with complex web interfaces or yaml configuration files that are as complex as a program.


So you have your solution ... for you: cool. The rest of us need some assistance for something that is not our expertise. We need the bollards that are put down the sides of the 10 pin lanes to hit a strike.

Not sure why you are complaining about needing a Mossie - I assume that refers to Zwave2MQTT. Zwave actually works these days in HA, thanks to a lot of work in a very short period of time. At work I have 40 odd windows with Zwave detectors and it used to be a bit hit and miss. At home I have been doing very long term trials of Zwave underfloor heating controllers. I have 10 zones of electric underfloor heating and two of them are running Heltuns (v1) at the moment - three years so far. One of them has run away madly twice ie run at high current and hot but not since a firmware update. Strangely enough one of the old controllers ran hot too after a power outage, recently (investigation ongoing).

You describe handwritten Python programs whilst complaining about YAML configs elsewhere. How do you generalise your stuff?


I have to admit I feel the same way.

For instance business people are drawn to products aimed at solving the "integration" problem between different enterprise products like a moth to a flame.

What's ironic is that the "integration problem" is much less of a problem than developing user interfaces or database application. From the viewpoint of a coder an "integration problem" is often ten lines of Python which can be completed in less time than it takes to wait for a salesperson to pick up the phone or that you could spend waiting for the documentation of an integration framework to load in your web browser. You generally avoid the devilish data modeling problems that turn up in applications work.


My biggest issue with HomeAssistant at the moment is the refusal of the Devs to support Single sign on methods. Several have been submitted via pull requests and almost gone through and then dropped based on very poor reasoning in my opinion. There is an auth header addon in HACS but without official support the android app is a buggy mess to get working.

HA is the only service I am running now that isn't hooked into my SSO and it's a niggling frustration to say the least.


When it comes to internal services that don't implement auth or have inadequate auth support, there are several projects out there that act as a reverse proxy and handle auth, only passing requests through once authentication is complete.

You can use this with Home Assistant's local IP auth (that just bypasses auth and assigns everything to a single HA user) so you don't have redundant auth mechanisms.


Yeah that's basically what the Auth header add-on is used for. It's just a pain for the Android app. I got it working briefly but hit a snag where my yubikey I use for passwordless login couldn't be used as it's using a webview container and you can't easily just use a yubikey in that scenario. If SSO was supported mainline support for that could be added.

What I have been meaning to do is have my Auth provider fall back to basic password or something else for HomeAssistant logins, just need to figure out HOW to do that.


I'd love it to have some kind of LDAP or other directory service thing. I've got a few other things I run for myself and some friends or family members that already can work with that (notably NextCloud) that would be really cool to connect up with HA too.


Good news, you can use HA with LDAP (ish) and it's sorta supported using the built in command line auth - https://www.home-assistant.io/docs/authentication/providers/... and the ldap-auth-sh script - https://github.com/bob1de/ldap-auth-sh

Not quite SSO, but at least the passwords and users a synced across, so that's nice.


What independent auth server do you use?


Currently I use Authenik on my LAN and VPN, but I used to use Keycloak when it was publicly exposed. I had issues configuring several of the components to work together and decided to use something that "kinda" works out of the box. The app dashboard is also very nice and has the "partner tick of approval" that is so important for hosting your own services.


Beauty of open source, make a fork with those pull requests accepted and involve the devs that made them.


It's a niggling issue for me, not a show stopper. I did consider it, very briefly, but it's not enough of an issue for me to spend the time and effort maintaining such a fork. Especially with an active project as HomeAssistant keeping a fork working with all the upstream modifications would be difficult.


I doubt it'll get merged. They're like that.


I’ve been using a Pi 4 with Home Assistant for the last 2 years, but I’ve accumulated so many devices in its dashboard that just turning a light off felt too cumbersome.

Sure, I’ve automated everything I could, but humans are not predictable so I often need to adjust brightness or volume of some device.

I had some keyboard shortcuts in BetterTouchTool using the HA REST API but it felt too fragile. In the end I created my own app to make this easier, called Volum (https://lowtechguys.com/volum)

It gives you macOS keyboard shortcuts and a really simple UI on iOS and iPadOS to control your HA devices and it’s completely free if you want to try it.

I’ve also made a short unprofessional demo video here about it: https://youtu.be/nzz-xrEon7g


Home Assistant really is about home "automation", not home "buttons now on your phone". I have dozens of automations in my Home Assistant install and I only interact with Home Assistant when I'm updating it or screwing with the automations themselves.

In the morning, depending on the weather, both of my floors set to heat, cool or heat/cool. The lights adjust to a cool temperature, fully on. Maybe the lawn gets watered, if it hasn't rained in a while and won't soon (I live in the PNW, so that one doesn't trigger often, haha). At sunset the lights adjust again, and finally most of them turn off at 9pm and the hvac system again adjusts, depending on the weather. The lights and shades in the media room adjust when the TV turns on. And a million other things that I won't bother to type out. But the point is, it all Just Happens, and I go to great lengths to keep it that way. If manual control is needed, just flip the switch or turn the thermostat.


I don't how this is true when lovelace is so well developed and you an have simple dashboards for anything you want to control. My partner hates home automation stuff and even she loves having a button that can pull up everything in the bedroom from the lights to the music to the humidifier as well as having easy switches for "going to bed" or "left the house forgot to lock things up and turn them off" etc


Yes, I can go on about my automations in the same way, it does feel like a magical home sometimes :)

But when I have guests and we need more light for a board game, or when the automation didn’t work as expected and lights are still off at sunset or the blinds got stuck at midpoint, or the heat is still too high and I’m already in bed etc. there’s a real need for fast and effortless manual control.

I’m now investing in Zigbee switches and knobs to have more physical means for controlling the home, but in my engineer mind, an app made more sense at the time.

I spend most of my time on my keyboard laptop anyway, why not use it for dimming the lights, or adjusting the speaker volume.


> there’s a real need for fast and effortless manual control.

On iOS i just pull down the control centre from the clock and it shows my most 6 most used home assistant things (a few lights, temp and door lock). HomeKit Bridge, I think is the integration that provides that.

It provides essentially the same UI as your app, without any app needed, and allows for "hey siri, turn on the hallway light" too.


Yep, I have the same HomeKit integration, but I mostly needed macOS keyboard shortcuts which are not provided by the Home app.

I also needed to control non-HA devices like standalone ESPHome lights/remotes, which Volum can do.


I realized that I don't turn my lights on/off at the same time consistently enough for automation to be worthwhile.


I use Home Assistant purely as an automation server and as a gateway between different (incompatible) ecosystems. Entities that need manual control are exported over HomeKit and controlled using any Apple device. I use HomeControl for easy access to all devices in the macOS menu bar: https://apps.apple.com/gb/app/homecontrol-menu-for-homekit/i....


This is also exactly how i use HA. It works quite well. I don't have too many automations.

I also recently started using https://raycast.com which has a nice HA plugin


I do agree it needs better default widgets. Like when turning a brightness dial it's easy to accidentally scroll the page.

It's also insanely cumbersome to use things like circadian lighting at the moment, which I use extensively since my apartment doesn't that much sunlight. It requires editing a YAML file, which requires installing some editor plugin, which requires supervisor mode, which required a full reinstall as a VM because I'm an idiot and installed the docker version of HA at first. And then figuring out how the hell to get a VM to start at startup in headless mode. And then fumbling for hours with how to install HACS and other things.

But yeah, it's nice for open source standards.


IMO if you're using the dashboard to adjust something you haven't really automated anything, you just moved the physical buttons to a dashboard.

The dashboard should be for setting larger scenes.

Example: If you want to watch a movie, you should either be able to say something to your digital assistant of choice or press a single physical/digital button. That automatically sets the lights correctly, closes any blinds and turns on all AV equipment needed.


Don’t you ever need to step out of the automation predefined values sometimes?

I do have most of my house automated, but my pain point is in those rare moments when I need to do something that doesn’t fit anymore in my predicted automation.

I said it in a previous comment as well, but I’ll give some more personal examples here:

  1. We have friends coming and we need more light for a board game
  2. My wife wants to sew some new clothing creation and needs bright white lights for short periods of time
  3. Sun is still very bright at sunset but HA already turned on the lights (I kinda like the sunset natural light, and want to enjoy it without artificial lighting. I have a light sensor for this situation but it’s hard to get it right)
  4. I want to change volume of a speaker but I’m not using the device playing the music
  5. I want to get the blinds higher/lower without getting out of bed

I’m not saying everyone needs my app, of course. I made it for myself, and just decided to share it with the world, in case there are other people sharing my pain points.


I still don't see why you're not exposing these devices to Homekit in Home Assistant so that they show up natively on your Apple devices in the control centre? Having my smart speaker volume control next to my iPhone's volume control just makes sense for that? Same for quick access to lights? Just pull down from the clock and tap to turn on/off specific lights, or have sliders next to the iPhone brightness slider for lights with brightness granularity. I don't see what an app adds to that?


I didn’t know it was possible, how embarrassing.

https://www.home-assistant.io/integrations/homekit/


This can cause an interesting loop with HA.

The "correct" way is to set up everything in HA and then link it to the Apple ecosystem with the HA integration.

If you set your stuff on HomeKit first and then enable the HA integration ... you'll have two of everything and a headache. Ask me how I know :D


I have that integration, but the Home app doesn’t provide macOS global keyboard shortcuts which is what I needed the most.


#3 is boggling for me as I live in Finland. "Sunset" isn't really a thing here.

Automating anything based on "Sunset" or "Sunrise" is 100% useless as the time for both changes multiple minutes per day. Currently the sun will set at 22:28 and will rise again at 04:07. I don't want to control anything based on either =)

1 & 2 sound like something you should have a scene for. For #1: "Alexa, board game mode" and boom you've got enough light. And for #2 just slap on a cheap zigbee switch from Ikea next to the sowing table.


Yeah it’s odd how many of the home automation stuff are thought and created for the temperate zones of the globe.

Well it’s hard to give enough context but none of those would work for me. We sometimes take our board games in the living room, other times on the balcony, sometimes even in the bedroom if the guests have a little child and they need to keep an eye on it. I would have to create a scene for all those things and end up with the same problem: too many button to choose from, doing what I want takes too much effort.

Calling Alexa in English as a Romanian is a sure way to get you some laughs and weird looks from those around you; not everyone is accustomed to voice controlled tech and some even feel uncomfortable around it.

I have a lot of those Zigbee switches, but Conbee has failed on me sometimes and I don’t want to see that type of frustration from my wife again. You know the type: “why can’t you just turn on the lights like a normal person?!”

When you have something in mind to do and the simple stuff stop working, the situation is very frustrating. I imagine it’s like when I want to add some features to my app, and Xcode decides to throw some impossible error that has no concrete solution and I have to do the “clear data voodoo” and restart until it starts working.


“ About Home Assistant

Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server”


"Docker image on a server you'll have running somewhere in your house anyway" is the correct choice.

Raspi is fine when you're still setting it up, but not worth the hassle when it breaks.


With electricity prices being what they are right now, a Raspi using <5W is fantastic for me.


My current Docker host is an used Lenovo ThinkCentre M900 Tiny I bought. It's got a 65 watt power supply and it's definitely not using all of it.

i5-6500T, 1TB of M.2 SSD, 16GB of ram and running a good two dozen Docker containers.

I'd say that's a better bang for the buck than a closet full of Raspberries struggling under the load :)


65W would represent about a 30% increase on my average electricity usage or about £15/month, probably more later this year. HA is the only thing I run locally, and I mainly use it to save energy - also for watering plants and scaring foxes out of the garden.

I know it isn't going to be pegging at 65W but if it's anywhere in the vicinity, it's cheaper to use AWS instead. I used to have a server that I used for Plex/HA, but in the end the energy cost was higher than a Netflix subscription. I could have upgraded it to more energy efficient hardware but it would have taken years to pay off.


I agree - a used corporate small form factor PC from the likes of HP/Lenovo/Dell has tons of power for HA and can still be had for a next to nothing. They also sip power - under 10W at the wall at idle.


I think an old laptop in the home network would work well


"Run on a raspberry pi" is a little tricky. You seem to need an SSD, or else some careful configuration of what to include and exclude from logs, if you don't want the disk to corrupt in a year or two.

It's a wonderful project but I wish they would be more careful about SD wear.


Counterpoint: I've got 2 instances running for several years now using their default Raspberry Pi image and still no issues.


I’ve just had one SD card with HomeAssistant on it, fail on me last week after a power cut. It’s easy to fall into this fallacy of “it’s been working fine until now, so it will keep working”, I had the same thinking.

Luckily I was doing restic [1] backups daily to my Hetzner box, and my last HA backup was there, so I didn’t have to start from scratch. But it’s still annoying to have to buy another SD, flash it and find a way to restore the backup just to get your home running again.

[1] https://restic.net/


There must be some way to get at least a SATA SSD onto a raspberry without too much hassle.

A cursory google search revealed lots of blogposts, videos etc on doing exactly that.

Also, if you're using an Rpi, it's also because you like tinkering, so more tinkering could be seen as a bonus :)


That's one good reason to use a RasPi, the other is just that they are rock solid, almost bulletproof devices you can really trust, as long as you don't hammer the SD card.

Also, they are affordable, small, and low power, and an actually good SSD kinda messes that up.


I made a post on their forum how to mount HASS logs out of the container onto a tmpfs to avoid pointless wear.


Running an SSD on a rPi 4b is pretty trivial


I wish there were something that opens the windows automatically at the right time to keep the heat* and humidity out. I'm sure other people will have had that idea, too. But I haven't come across easy-to-use hardware controls. That's not even talking about the full optimal control problem, i.e. weather forecast, the heat capacity and heat permeability of the walls, and any cigarette smoke coming in.

*Air conditioning is hard to get permission for as a renter in Germany.


> I wish there were something that opens the windows automatically at the right time to keep the heat* and humidity out.

The latter part of your problem is a solved one. Weather forecasts and local conditions (from your own indoor/outdoor sensors) for the weather, heat capacity and permeability could be hardcoded or via helpers, cigarette smoke via air quality sensors. All of these can be integrated with Home Assistant.

All that is left is something to physically open/close the window, which should also be a solved problem.


I love HomeAssistant, and use it to power my whole house. I automate most lights, my whole house audio setup, my security system, and more. I highly recommend it.

I recently wrote about how to do a declarative model for automations, which I use throughout the house: http://peterhajas.com/blog/declarative_home_automation.html


I want to want this, but I have never found a use case that made it seem worth it.


I think the main use case is avoiding non-open source alternatives.

If you want something that actually offers more capability then something like node-red is probably more useful, it allows scripting all kinds of custom behaviour over many different protocols. (although even then it's rare to find a real use for it, besides having fun hacking things together, though they make it easy to build your own UI for stuff, which is neat)


The integration between Node-Red and HA is excellent fwiw.


Primarily, the use case is that it gives you some useful automation possibilities that aren't available in (for example) HomeKit.

Here's an example: I have an AC unit which is either on or off. I don't want my AC running all the time, but I want it to turn on automatically if the temperature raises above a certain value. That functionality is not possible with my AC unit, but I can use HASS to automate it.

Here's another: I have an air purifier which has an intelligent 'automatic' mode, which is supposed to change the fan setting if it detects higher levels of particulate matter - and to be fair, it does, but only between one of three presets. In reality, the machine has a 'turbo' mode which can be manually activated and deactivated.

HASS allows me to automatically switch back to auto mode from turbo mode in case the PM2.5 rating goes back down to a good level (e.g.: 2).

One other thing it's great for is taking IoT products (like for example smart plug sockets) which depend on their own apps, and integrating them with HomeKit.

I have an iRobot vacuum. It has some settings, like it can automatically run when I leave the house. It also has a Siri shortcut so I can control it with my voice. But if I leave home early to go to work, I don't want it to run and disturb my wife. With HASS, I can bridge it to HomeKit, which can trigger it only if NOONE is home.

I could also use HASS and my security camera to only run the robot if there's no motion detected for a period of time and no-one is home, and it's after my wife finishes all her work calls at 5 but before bedtime, but haven't felt a need to go to that level of complexity (plus my cats set off the motion detector all the time!).

It also gives me the option to buy cheap alternatives and bring them to HomeKit, rather than depending on specific apps.

Given that I had a Raspberry Pi lying around anyway, it was an absolute no-brainer.


I’m the same—I have several smart lights, but I can control them all through Google Home—but found a use for it this past winter. In my living room I have a Big Ass Fans Haiku fan, and the signal for volume up on my soundbar is the same as speed down on the fan. I don’t know how companies decide on IR remote signals, but I’ve never had this happen before.

It really annoys me when I turn up the volume and my fan turns off, especially in winter when I want it on to stir up the air. So I set up an automation to check the fan setting and if it is off, turn it on.

So far I haven’t really figured out what else to do with it.


I agree, I feel like it's only for niche uses. But if you have a niche requirement it can be very useful - I have issues with my ISP provided modem and they won't replace it. I use HA to locally power cycle the modem's plug from my phone (my router still works so local networking is fine)


I'm using mine in part as a homekit bridge. Some of my smart home stuff doesn't play nice with homekit, but I can connect it up to HASS, and then I'm able to open my garage door from my phone easily.


Honestly I see exactly NO purpose for such dedicated distro: I use H.A. on my homeserver, deployed via pip, simple, lightweight and effective without the burden of a dedicated distro with the need for security upgrades and enormous integration effort for what? On my homeserver I do many things, there is no point in having many different homeserver or container to run single service if I can consolidate ALL in a single hw, easy to recreate/extend as I with thanks to NixOS/Guix or anything else + some IaC behind.

Such moves have only commercial reasons and normally in practice are commercial fails due to the inevitably low quality of the output. I still have to see ANY dedicated distro with a commercial success behind and without a large number of angry users.


why does this need to be an OS? Why can't it be a set of packages on top of an OS maintained by someone else?


I don't want to deal with maintaining another OS, so I'm perfectly happy with them maintaining it and making updates easy.


No idea. I've always run my HAs on Debian, which is supported - https://github.com/home-assistant/supervised-installer .


It is. The OS is Raspbian. Home Assistant is an ecosystem that runs on a customized install, like other images for pis (Kodi OS, RetroPie, etc)


except they make it for a variety of platforms. why does this need significant changes to the OS? It reeks of bad engineering to me.


Because it wants to act as an appliance and manage the whole system itself including network configuration, updates, etc. For most users this is the correct approach, though you can opt-out and manually run the actual application in a Python virtualenv on a distro of your choice (in this case HA won't be able to manage the system and updates will need to be done manually from the command-line).


I run home assistant on kubernetetes, but I've been annoyed by things breaking often on updates and reliability issues when running ZHA with a combo USB dongle.


This whole submission seems like a karma grab.


Can we stop calling custom distros an "OS"?

Like, this is linux. Linux is the OS.

This is home assistant distro.


If you’re going to be pedantic, at least make sure to be right. Linux is a kernel!


It's a floor wax and a dessert topping: https://en.wikipedia.org/wiki/Linux


I quite like Home Assistant, I really don't like their developers.

https://github.com/NixOS/nixpkgs/pull/126326

https://community.home-assistant.io/t/local-dns/178108


I'm a nobody and even I have had run-ins with certain people on the project. I think they have a similar problem to many hugely popular FOSS authors - you spend 99.99% of the day explaining things to idiots who don't get why things are the way they are, so when the 0.01% of useful, constructive issues float past they get written off by habit.

I personally think some of their leaders also have an over-reliance on gut reaction - have never once seen them admit to being wrong, even on multi year issues where context has changed. I think a useful litmus test for anybody in a position of power is "when did I last change my mind". If the answer is "never", either you're perfect or you need to think about how you've been making decisions.


Used it for five years. You've distilled the all the problems of HA nicely to its source. The product is fine for a while, until the arrogance and disregard the devs have against the user base inevitably breaks something and you have to spend time fixing things. And it happens often.

Edit: Just went through the DNS thread. Good lord. Just their typical M.O. on breaking things in the past.


Human factors aside, the practical result of this is that the methods of getting Home Assistant running are trash. Sure if you stick it on a dedicated RPi with their prebuilt image or use Docker, it "just works". But both of those methods basically guarantee suddenly needing to tinker when your setup randomly breaks. Ultimately if I can't simply apt-get or environment.systemPackages it, I don't really consider it sustainable software to rely on.

I did give in and actually had it running with Docker for some time. Eventually it just got real laggy and stopped responding to input or device state changes promptly. I had no idea why that would have been, and had no desire to wade through Docker manure to figure out how to debug it, so my setup just kind of fell by the wayside. Now when I think "home automation would be nice to have again", I envision just writing my own mqtt-native daemons some day.


The Docker container is the least evil of the choices, but it does have very pointless intentional limitations. Like not bothering to handle the difference between bind and externally visible IP, or by making logs difficult to mount outside the container (to a tmpfs to spare the SD card).

It's not even about "having to support someone's setup" it's about basic best practices, practices other software implements relatively effortlessly.

Very much akin to Canonical's Snap ~/snap folder thousands of users are pleading them to move to a more normal location.


IMO those all seem like predictable results of using Docker. By duplicating a whole system, containerization creates a whole bunch of unwanted complexity. Developers then fail to address every single concern, and when they do address a concern they often end up creating a novel way of managing it rather than integrating it into the standard ways.

I agree Docker is the "least evil" option for HA which is why I gave it a shot. But I still got random breakage, even with their auto update auto everything solution. So I'd say it's more like they haven't done the work to make reliable software, and instead of letting others start to apply pressure so that work gets done, they've dug their heels in with the modern way of saying "works for me". Container images are basically the contemporary .EXE.

If I can be running Internet-facing postfix, powerdns, nginx, asterisk, etc through distro packages and have them stay updated, a home automation daemon that is exposed only to my own network can most certainly do the same. It's tedious work to get software packaged for wider audiences, but if Home Assistant wants to bill itself as one of the leading solutions for libre home automation, then it's work that needs to be done.


I wouldn't say this is a result of using Docker, it's just very visible in that case. It's also not about handling "every single concern", it's users getting punished for poor assumptions made by the developers.

Point being that this incompatibility is active instead of passive, so this effort could be or could have been spent better.


If frenck is a core HassOS developer I never want to touch anything HassOS with a ten-foot-pole. They state in the linked PR they "tried to be friendly" but their tone is anything but the entire thread. They are completely unwilling to engage with the extremely patient Nix people, reiterating hard stop sentences. Zero attempt at developing discourse, just ornery, rude, commandments from on high.


It's not reasonable to ask people to remove your code from their project when they've already done the work on integrating it and it's published under an accommodating license. (edit: It seems the person requesting the removal of his project is an HA dev, some context for those links would have been useful.)

As for the DNS issue that seems to be a technical or design issue, I don't see in that thread any bad behaviour on the part of the devs, unless I missed a post.


> As for the DNS issue that seems to be a technical or design issue, I don't see in that thread any bad behaviour on the part of the devs, unless I missed a post.

The whole thread brings back PTSD when I was running it. It is reminiscent of every major problem they've had.

> seems to be a technical or design issue

This is the exact issue. The head devs don't keep contributors in line or provide any guidance at all. People just submit things, there's no checks on "is this a good idea?" and into master it goes. Does anyone actually want this? Does it make sense on how it's implemented? Will it break anything?

Those are questions for later.


The fallback DNS was put into place because some users have local DNS that returns non-conforming responses in a way that breaks dns resolution in alpine containers (think broken implementations in some of those shitty router-modem bundles that most ISPs give you). Home Assistant OS is based on containers, many of which run Alpine. They had a lot of bug reports about these issues, and they all went away once the fallback DNS was implemented.

They did not originally allow this fallback behavior to be disabled because it should not have been needed, and would only result in those original bug reports returning.

However there was a problem in the original design for fallback, where it had an issue where DNS could get stuck always being routed to the fallback servers. Which means local DNS names won't resolve. While annoying, this is often reasonably easy to work around, as one can typically just assign static IPs to relevant local devices and use the IP addresses. They did eventually fix this, so that it cannot get stuck using the fallback as the primary, and local dns names work again.

Furthermore, they are now able to detect when locally configured DNS is broken in ways that break alpine containers, so they now offer a feature where you can turn off fallback DNS, but if you have broken local DNS your system will be flagged as unsupported, which means that the devs can summarily close your bug reports without investigating, unless you have reproduced the issue on a supported installation too.


Are there any good alternatives? I currently run HA but have avoided upgrading past when they broke YAML configuration "for my own good". I haven't yet found any other good options


I switched to node-red, node-red dashboard and Mosquitto mqtt. Those run just fine runs in an lxd container.

Almost all my devices are flashed with tasmota or have mqtt in them.

Maybe there is a lot less hardware support, and certainly much worse google home support but the 30 devices I have around the house work fine. All family friendly. The light switches just work. The doorbell works and no one knows it goes via an RF bridge to a home made/written mqtt to mp3 player.


[flagged]


I tried setting up HA once on non-docker and it was pretty awful. It has it's own internal dependency management thingy that auto downloads stuff it needs into it's virtual environment.

Much as I love to use standard off the shelf stuff and eliminate original code from my life, my custom automation system has been the one thing I can't find a replacement for, and I don't really expect that to change.


They just don't want it to be repackaged with patches that cause them to receive support requests for issues which are essentially a distro fault


They don't want you forking it for that purpose, either.

https://github.com/NixOS/nixpkgs/pull/126326

Is it technically open source? Yes. Is it spiritually open source? No. Is it arrogance and poor management? Along with many ways this project is run, absolutely yes.


Use it but not modify it? With that attitude it can't even be classified as Open Source.

Hard pass.


Firefox does the same thing. By your definition, it is not open source either. They don't care if you use a different name (e.g. Fennec) though.


Too bad. If they intentionally make it hard for people to make a software follow their distro conventions, be it immutability or reproceability, then they shouldn't be too surprised that forcing the software to behave properly could cause side-effects.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: