I did take a look at openHAB as a matter of fact. But to be frank, that was quite some time ago and I recall I didn’t much care for its UI looks at the time, maybe things have changed, I dunno.
I might delve into openHAB at some point, but for now I’m giving HA a fair chance first. I started out running HA as a virtual appliance, but now have it running on a PI4 the way I prefer it.
My whole point of this thread was to find out how it is that some things seem so difficult or tiresome (in my perspective), it was never my intention to start a flame war.
This used to be somewhat true, but I don’t feel it is accurate anymore.
Using the recommended getting started instructions it’s just several clicks to flash your SD card with Home Assistant OS using balenaEtcher. If you have very basic computer knowledge (can install app) it’s almost foolproof.
Initial setup can now be done completely through the user interface. You no longer have to open up text files and write YAML, it’s a super simple guided setup. It automatically finds your devices on the network and it only takes several clicks to add them and assign to areas.
This gives you an auto-generated Lovelace layout with everything neatly organized into areas. Many people use it like this and are perfectly happy with it this way. There’s no further maintenance on the users part unless they wish to take control.
If the user does wish to take control, that experience has gotten much better too. The “Add Card” picker has previews of every card, almost every card has a UI editor now, all the card editors have documentation links, etc.
Supervisor makes installing and updating add-ons effortless, all done right in the UI. It also has built-in backup and restore, an easy update system with automatic rollback in case anything goes wrong, and a bunch more nice things.
Home Assistant Cloud a.k.a Nabu Casa gives you secure remote access with literally one toggle. No need to know about port forwarding or SSL certificates or anything like that. You can expose entities to Google Home and Alexa with a single toggle as well.
Mobile Apps for iOS and Android give you presence detection and native push notifications along with a whole lot more. These apps are improving at a rapid pace too, check the most recent blog for some of the latest additions to them.
Most core things can be added and managed completely from the UI - automations, scripts, scenes, zones, persons, users, dashboards, areas, integrations, etc. You can add input booleans, texts, selects, numbers, date times now in the “Helpers” section and there’s plans to add support for timers, counters, and binary sensors there as well.
It’s fair to say that some things are currently more difficult than they should be, some things need extra polish and refinement. But your post makes Home Assistant sound borderline unusable which I think is an unfair assessment of where things actually stand today. The overall “big picture” core user experience is pretty solid and user-friendly these days IMO.
Nobody is setting out to make things difficult, quite the opposite in fact. If there’s documentation that is outdated or unclear, you can fix it. If you find something difficult, make sure to bring it to others attention in a forum post / feature request or bug report. Often if you have a good suggestion it will be implemented - constructive criticism is always welcomed.
As DavidFW1960 said, not all HA installs have ‘Supervisor’ so that wouldn’t work. If anything I think ‘Configuration’ should actually be called ‘System’, and then have headings on that page for ‘Config’, ‘System Control’ etc.
I think the core issue here - and what makes it “difficult” - is that you can’t have it both ways. You can either have a very simple “plug and play, everything works, click and drag GUI”. Just install the HA OS on a SD-card and you are up and running. Or you can have full control over the host machine, including SSH-access, the option to install other software etc. But that comes with a cost. You need to do more stuff manually, and you won’t get “official support”, whatever that means.
The “Supervised” installation is something in between, but I agreee that it might not be very well communicated what you gain and lose by selecting the different methods. And it has also changed quite a lot in the last year or so. So many of the posts you find in the forums, and while googling are simply not correct any more. There is a short and easy description of you scroll down a bit til the “Home Assistant”-definitions here:
But that is probably not the first place I would look if I were new to HA.
I believe that many people who today run “Home Assistant Core” would probably be better off running “Home Assistant Supervised”. As far as I know, you do not lose any control by using the supervised version instead of “Core”. But you get all the “good stuff” from the supervisor, and can chose whether you want to use it or not. (E.g. do you want to install something as an Add On using the supervisor, or do you want to roll the docker container yourself). This includes myself, I just have not bothered to switch from Core in Docker to Supervised since my setup is running fine as it is.
With that said, home automation and “smart homes” are difficult. Simply because they are not very smart. YOU have to be the smart one.
In a dream scenario, the “smart home” should understand by itself that it needs to close the outdoor covers when a strong wind or rain storm is on its way. And it does not need to water the plants outside if it is going to rain later today. Or lights should not be automatically turned on again a second after I turn off a switch, just because me turing off the switch triggers the motion sensor…
There are so many things you need to think about and adjust and tune to make them work, and you really need to do that yourself, based on your needs and your setup, so you can’t always just copy something from someone, or click a button to enable a feature and expect it to work exactly the way you want it.
It can be very frustrating, and especially when there are issues with the documentation, or a Google search gives you old and outdated information. But I must say that Home Assistant really give you all the options and building blocks you need. You just have to do quite a lot of the actual building to make it work the way YOU want.
I kinda disagree. Home Assistant Core definitely has its audience and I’m part of it. I’m allergic against anything that just ‘easily’ installs components, one-click updates and all that stuff. I want the bare bones code, I want to manage everything around it my own way, from auto starting it as a service, over manually adding components (where I know exactly what goes where), creating backups using my own scripts, over to updating only when I want it and possibly only certain components. I also don’t see the need in over-dockerizing everything, so I just run HA in a Python venv and manually copy / modify components in the virtual env as needed.
To be honest, if this barebones install method didn’t exist when I switched to HA last year, I would have skipped HA entirely and probably gone with OpenHAB (glad I didn’t though )
I think a lot of the perceived difficulty is down to bad communication. I like the fact that there are multiple install methods targeting different types of users and use cases. But this should be made much clearer for new users. And this whole rebrand-everything-in-flight disaster certainly didn’t help, it created so much confusion.
All that said, I would never recommend HA to someone who has no computer skills.
I find dockerizing very complex and constraining under the hood and the benefits it offers can be very easily done many other much simpler and efficient ways.
HA would be so much more simple as a standalone program you would install in 3 command lines ohh wait that’s exactly how core gets installed… instead of having to install entire OS, occupying a whole SD or SSD card. It’s just a lot more complex and less flexible so… yeah supervisor? no thank you.
I just tried both installation and found the bare core installation “for developers” to be much faster and a bit easier than the hass.os or whatever is called now installation. I remember wondering when I first started as a noob why there were so many options and why the option for the user seem more complex and less flexible than for the developers so I picked what appeared to be the easier and never regretted it.
Adding layers of programs and virtualization to make it more convenient is providing a very complicated solution to a simple problem. It is harder to maintain, it is confusing, restrictive, adds overhead and inefficiencies …so Venv or bare metal installations (if HA is the only python program you run on that machine) are still the easiest and simplest ones. I am one of the people who find it to require less skill to SSH into a machine to copy paste 3 lines of command than to manually download an OS and create a bootable SD drive…
I think you are confusing the OS with the “Supervised” install (which is my exact point).
While supervised is still docker containers it does not occupy your entire OS. And you can install it on a variety of platforms while still maintaining control of your box.
But of course people have different views, and I never said “everyone”. I also like to have control, and run Core today. And would never give up control of the underlying OS.
But it would still be OK to have the benefits that the Supervisor can give when it comes to add ons and upgrades and such. And this is what I think is undercommunicated.
I too used to hate containers, and all the extra hassle, but after some years of getting used to them, I also se the value of them for complex applications with a million dependencies, where stuff can break in mysterious ways if one or another library is the wrong version.
Yes, venv is a solution, but frankly, the difference between running something in a venv or in a docker container is minimal.
There is a world of difference between a Python virtual env and a docker container. The former just isolates the Python environment with its (Python) dependencies. The latter containerizes essentially the entire system, including network interfaces, file systems, etc.
Weren’t you the one recently arguing for the huge benefits of installing HA Core directly on the machine but then mentioned that you actually installed it on the base OS but in a VM? I believe most people would consider that “layers of programs and virtualization”. It’s literally right in the name.
As was mentioned in that other thread installing it directly on the base OS lends itse3lf to added complications in maintaining all of the requirements of the program and there may be conflicts. Installing in a venv sandbox eliminates those potential issues.
And installing Core in Docker has those same benefits as a Core in a venv installs but vastly simplifies maintenance. Sure there is some overhead but if you can install Docker on a RPi and then install HA Core to run on it too then I really don’t think that the amount of extra resources it uses is too onerous.
One of the reasons that the devs love the Hass OS is that every aspect of the computer is under their control. They don’t have ask and answer multiple questions about library verions etc.
Personally I find supervised on debian to give a mixture of convenience and control, and this from a guy who has been using linux from the command line for over 20 years, and used to develop my own gentoo based distros.
I love these threads. Everyone comes out swinging at the bell and by the tenth round they are begging for the referee to end it.
You can generally tell the nature of the beast by the method of installation. If the first method worked they generally stick with it. Each method has its pros and cons and one group won’t win over the other unless the other side’s method fails at some stage.
The OP has stated his case and his opinion is neither right or wrong. The fact is he stated a preference with the associated argument and is completely entitled to do so without abuse just constructive argument which is lacking in many of the replies here.
Maybe it’s time to move on to more productive pursuits and leave this argument where it should be. No winners, no losers and just agree to disagree.