Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
IoT Unravelled Part 1: It's a Mess but Then There's Home Assistant (troyhunt.com)
265 points by input_sh on Nov 23, 2020 | hide | past | favorite | 188 comments


I've shared this because I absolutely love Home Assistant. It's one of the rare open source projects that I cannot imagine being replaced by a proprietary solution. I'm definitely not using it in its full capacity, just for a fairly limited amount of integrations (Philips Hue, some smart plugs, various stuff I've installed alongside Home Assistant on my Intel NUC).

I really like its scripting feature. It allows me to, for example, dim the lights between 11 and midnight if tomorrow's a weekday, giving me a visual cue that it's time to go to bed. There's also some smart plug that automatically boils me some water when I wake up in the morning, providing me with coffee about 2 min earlier in the morning. I also have an NFC tag next to my door. If I hover my phone over it when I leave the house, it shuts off my TV and any lights that are turned on.

That being said, it's definitely still raw. I use a fairly basic amount of integrations, but I still have to fix something every few versions, and if I don't touch the configuration for a couple of months, a fair amount of things will either break or look out-of-order in my interface.

Overall, I consider "smart home" to be a fairly expensive and time-consuming hobby that saves me maybe 10 min per day. There's also a fairly limited amount of stuff you can do without making modifications to your home, making its use limited if you're renting a home.


> Overall, I consider "smart home" to be a fairly expensive and time-consuming hobby that saves me maybe 10 min per day

Fair point, but does it really need to save time for you? For me it's more of a convenience thing. I recently bought a new house, and I didn't immediately have the time to install my smart devices (Nest, Hue lights, motion sensors etc). After just a couple of days I was already getting fed up with having to get up to "manually" flip switches, change the temprature, rolling down the blinds etc.


This is so true.

When you get used to something being either fully automated, like hallway lights turning off and on automatically or easily voice controlled, like enabling movie mode via Alexa (Dim lights, turn on TV and media devices) it's really hard to go back to the old way of running around pushing switches.


Omg yes. I had an Ecobee in my previous hone and thought it was just kinda okay. 3 weeks ago I moved into a new place that has a traditional thermostat and I’m now aware of how much better that Ecobee was.


> change the temprature

How much are people actually changing the temperature? I have a temp for the furnace (68F), and a temp for the A/C (73F). I almost never adjust it.


Seriously. I set the times and temperatures in my thermostat when I bought this house in the late 90s. I tweaked them a bit over the next few months and have not changed them in over 20 years.


My thermostat is on an exterior wall, so the reading is affected by the outdoor temperature. I need to adjust it every few weeks as it gets colder so it doesn't turn my house into a sauna in the winter time. Obviously this is not ideal, but count this story as one more anecdotal example that some people change their thermostat frequently.


If anything, this is a reason why you need multiple temperature sensors.


It depends on many factors: size of the house and where you spend most of your time. It sounds like you may live in a relatively small space.

Almost no home heats completely evenly and you will have some rooms that are warmer than others, especially when the air is on. (Good HVAC setup can mitigate some but not all).

So for example, I live in a 4,000 sqft home, and the kitchen is far and away the hottest room in the house, especially when it is in use. So when I have guests over I will tend to turn the overall heat down, and leave the gas logs on in the den to keep guests cozy while I cook.

Just an example, but I am sure there are many situations like it out there.


> How much are people actually changing the temperature?

In some cases, a fair bit.

On the other hand and friend and I did a back of the envelope calculation and worked out he could manually change the temperature in his house for about 100 years and still spend less time than he had already spent working on his somewhat homebrew solution (this was a while ago).


Arguably the convenience is not the labour involved in turning a dial, but the burden of remembering to?


That's true - will depend a lot on usage. Also scriptability is very different than interactive use.


Temperature is a huge factor influencing sleep cycle for some people, myself included. I sleep and wake much better if physical temperature and light color temperature adjust in time with my schedule, which isn't always uniform so rigidly programmable thermostats don't quite do the job.


I have mine turning down every night to save energy


You don't need a "smart home" for this. I have a decades old thermostat that can be programmed to turn down at night.


We're aiming at the same thing, I just quantify convenience by the amount of time saved per action.

For example, leaving my home is about 20 seconds faster (no need to turn everything off manually and reach the switch to turn the lights on/off in the hallway when putting on shoes).


I am in the same situation as you. I also have a tolerant wife that "understands" that the lights are available 90% of the time (but when they are, it is magic).

Have you considered AppDaemon for automations? https://appdaemon.readthedocs.io

I tried to use the YAML based solutions but YAML is not done for that and anything more complicated is not doable (or at least without a super-complex code) - this is usually a few line sin Python in AD.

I would love to be able to use the presence automations but my wife ad children, for reasons that are beyond my understanding, sometimes switch off the wifi to use their data plan. The GPS tracking was draining the battery too much last time I tried (but I have to try again).


Alternatively Homeassistant also offers an integration for Node Red, which feels a bit odd to work with at first but I learned to love it more and more. I never really bothered to learn Homeassistants YAML automation syntax.

https://nodered.org/


I wish NodeRed had a YAML (or whatever) syntax though, something git-friendly; that it was a viewer/editor for a sane human-readable text format.

(As I recall, it's JSON with lots of long numeric IDs for each node, semantic data also mixed with presentational - coordinates for how you laid it out in the visual editor, etc.)


If you enable Node-RED "Projects" [0], you not only get git-friendly flow configs, but can have them automatically push to remote repos.

[0]: https://nodered.org/docs/user-guide/projects/


You got me excited for a second, but that seems just to be a UI for people that don't know what 'a git' is, and `commit -a`-ing of changes, in the same non-'git-friendly sane human-readable plaintext format' I was complaining about.

I know what git is, so I can already `git commit -a -m 'Updated nodes'` if that's what I wanted, but it isn't, I want logical diffs that show me what I did and why; not spurious ID changes because I accidentally moved a node visually a millimetre or two.


It does give you a better diff option, actually. :) It may not meet your needs, but it will show you a diff between commits that is more context-aware for Node-RED.


Yes, this is also why I got rid of it when giving a try. This is not maintainable outside of the GUI


NodeRED keeps its stuff in a single directory, which can be backed up easily. Also the state can be fully restored with just the contents of that directory.

It's not git-friendly though, no easy way of versioning stuff really.


There's also PyScript, a custom component that allows you to write automations in Python. The docs have a bunch of nice examples that give you an idea how it looks.

https://github.com/custom-components/pyscript https://hacs-pyscript.readthedocs.io/en/stable/tutorial.html...


Excellent timing, thanks! I am looking at possibly replacing AppDaemon as we speak.

This is a great software, bit it is really distinct from HA and simple automations require quite a bit of code anyway.

I was thinking about having a mixed mode: the very simple automations (covers up at 9:00) would go into the YAML and more complicated would use the Python scripting described here: https://www.home-assistant.io/integrations/python_script/ (also from automations, but the real work would be done in the script)

Now I see with your comment that there is a HACS component as well - have you compared both and chose one of them for some specific reason?


OK, following up on my last comment - pyscript is teh way to go. One can import anything and the functions are very light, decorated etc.

It looks like a very good solution for more complicated automation (and for simple ones as well, it is just two lines)


Exactly, that's what I like about pyscript: it is a great alternative for simple YAML automations, but it also allows for complex logic that would be impossible or very cumbersome with YAML.


I can't come up with any automations related to my home that are difficult to do in YAML.

I'm more interested in getting rid of IFTTT/Zapier/way-too-messy-Python-scripts, but that'll probably wait until winter holidays.


My typical automation that is cumbersome with YAML is with RF433 switches. I have plenty of wall switches (say - 20) that emit a signal AAAAAABBBBBB, I am only interested in the BBBBB part, and then I need to match this with an action.

Sometimes (usually) this is a toggle, sometimes a on, sometimes an off, sometimes something else.

This is easy to do in Python (the list if kept as a dict with actions, there are three lines, one for each action), but gets very verbose with YAML.


Could you use the combination of wifi and GPS. If the device leaves wifi, check GPS in 5 minutes.


Some of the rabbit holes you described reminded me of a joke surfaced on some Russian forums long ago.

The re was a screenshot of a game running in DosBox in an XP running in VMWare running in Linux running in Virtualbox(?) running on Windows.

The complaint was, there was no sound coming from the game :)


I have a friend who a few months wanted to automate/remote control a water pump at his cabin and monitor his solar system and batteries. He has internet connectivity there but otherwise is off the grid. So I thought okay, raspberry pi, arduino with an Ethernet shield and some extra electronics, and then use dataplicity to remote connect. It's not straightforward with his internet setup to initiate a connection from the outside world. But he wasn't crazy about controlling the thing with a command line and really wanted a web interface. After some searching around I ended up using Home Assistant. We are still putting it all together but it's been very nice so far, like battery voltage graphs and sending/receiving data via MQTT is really pretty easy.


> I also have an NFC tag next to my door. If I hover my phone over it when I leave the house, it shuts off my TV and any lights that are turned on.

I do this with a small switch from Aqara ( https://www.aqara.com/en/smart_wireless_mini_switch.html ) next to the door. Single click turns everything off, double click turn everything off and starts the Vacuum cleaner.


I just say "Alexa, goodbye" and stuff turns off + Alexa enters Guard Mode.


I used the Alexa media player integration along with the integration for my alarm panel, so Home Assistant automatically synchronizes Alexa's Guard Mode with the alarm being armed or disarmed.


What kettle/device are you using that boils when the power comes on without having to press a button manually? Every single kettle I've looked at requires pressing a button to start a boil "for safety".


Founder of Home Assistant here. Let me know if anyone has any questions.

Glad to see Troy likes it as much as we like creating it!

If you haven't heard about it, next month is the Home Assistant Conference[1] where we will have three tracks: everyone, advanced users and developers. Each filled with great talks and of course some exciting announcements!

[1]: https://www.home-assistant.io/conference/


Thank you for all of your work! I started down the smart home path this year and Home Assistant's philosophy really resonates with me. HA with zigbee and zwave enhance and add to our house in a cloud-free way that works for me and my family. Even simple things like putting remote light switches in reach of young kids means they have more independence in their own home (and they're not climbing furniture to turn on lights...).


Criticism from my other comment aside, thank you for the work on HA. It is a monumental problem y'all are trying to solve.

I think a large portion of my gripes are due to what I describe as an in-between state right now. Is HA for those with Linux experience? Is it not? If it's the later, UI features that don't do anything should never be allowed in releases. Right now, I can't delete a dead Z-Wave node. The button is greyed out. I have to delete as much as I can from the UI, then clean it up from the yaml files. This is not something a layman can do. I just want one button to delete a dead node from entities, nodes, Z-Wave, switch, and devices, or tell me where exactly I need to delete things from yaml and .storage.

Also, I think the project needs to get away from entities and nodes, or at least hide them in the UI and end user documentation. It's too abstract and not always relevant to the end-user.


This sounds uncomfortably familiar. I started out wanting to measure my room temperature and log it into a database. Three years later and you're soldering ESP8266s.

A lot of fun and I've picked up plenty of skills among the way all over the stack: Automated setup of Rasbperry Pis, Docker, Let's Encrypt, IP forwarding and NAT transversals, sniffing traffic from iOS Apps, developing Python modules for HA, hosting time series databases, accessing them from Junyper notebooks, programming ESPs, basic electronics, soldering your own sensor packages...

I really love Home Assistant as a powerful Open Source project, but the knowhow required to successfully run it is staggering.


> Three years later and you're soldering ESP8266s

I've just shut down my environmental monitoring solution. I had 7 of those things reporting temperature and humidity (along with various other readings if needed) over Mosquitto MQTT.

I put my initial solution together in 2013, and i shut everything down this year. Turns out i rarely looked at the data i collected, and never used historical data, so a regular digital thermometer with a LCD display is more than enough for me :)

By the time of shutting down, the thing had grown to include push notifications of temperature extremes for select sensors, as well as presence detection along with humidity alerts for getting people to open windows every now and then, and another notification if the temperature dropped fast (2-3C or more over 20 mins)(so they close the windows again)

These days i just open windows every day, and as for the temperature, if it's too hot/cold i adjust the thermostat. The one remaining issue is the temperature in my dog kennel, which was the original reason for implementing it, but as it has never been a problem in the 7 years it was running, i figure i won't be a problem ever.


I like stories like that (experienced this myself). Building complex system, because it scratches an itch, and not using it after completion. So what happened witch the itch, where is it. What was it all about? Why did it happen? Why this kind of system and not the other, etc. This kind if questioning. Was that because the dog was the only part of the environment, that was alive / uncontrollable?


> So what happened witch the itch, where is it. What was it all about?

Sometimes the itch is "I like the challenge of finding/building a solution for X" not "I need a solution for X".

Different from home automation, but sometimes I find myself carried away researching "the best photo printer", "the nicest hybrid smart watch", "the best value tiny PC I can mount on a monitor" or some other gadget. I browse around the reviews, youtube videos, shopping sites, and find the best product for the best price. And then ... I move on because, realistically, I don't need the thing.


I call this "the permaresearch queue". Stuff that just becomes perpetually research, and you get more out of doing the research than doing the thing. For me right now is learning how to build a shed. I have a feeling it could also be called "procrastiresearch" too!


> the nicest hybrid smart watch

There’s a very nice one on Kickstarter right now. Ad Maiora.


... and the quest continues :-)

It does look nice in the renders. If the smart features are also powered by the self-winding mechanism, that's a game changer. It's quite pricey though.

I currently have a Kronaby Apex on my wrist. A few years old model, but I quite like the legible watch face, the 2 year battery life, and the absence of anything giving away it has smart features.


> Was that because the dog was the only part of the environment, that was alive / uncontrollable

When i got my current dog i built an outdoor dog kennel (12m2) for it. My previous dog lived inside in a temperature controlled environment, so i never wondered if it would get too hot or too cold. It did however destroy most of our stuff when it was alone.

Living in Scandinavia, temperatures can vary from +35C to -18C during the year, and while most of the range is "ok" (27C - -8C), the extremes was the reason for building it in the first place.

Had the dog been living outside all the time this wouldn't have been a problem, but when confined to a (relatively) small space, and living indoors for half it's day means that in the summer it cannot move to a better/cooler place, and in the winter it may not have a thick enough winter coat.

It has an insulated dog house there, approved for all year usage for guard dogs, and unlike my previous dog, this one actually uses it - though mostly when it rains.


> So what happened witch the itch, where is it. What was it all about?

Sometimes it's just art and craft. Kind of like people making tools / knifes. There's a pleasure in making something even if it's not really going to be used.


This is basically happening for me now. Bought a house and a ton of gadgets to tinker with, with a dream of having the ultimate smart home.

Heavily underestimated the time sink it is and how often things break. But it definitely scratches and itch.

I’ve learned so much about circuit boards, electricity, and soldering in the past few weeks I think it’s well worth it, even if the smart home dream itself might never materialize.


Have you had trouble with time zones and timestamps Distributed Raspberry PIs that had to connect to a device via Bluetooth Low Energy, and send data through a 4G dongle, and do updates, reboots, etc. completely unattended.

I had nightmares about time zones.


No, but I've only had one server running.


How do you graph your measprements?


Currently I'm using the InfluxDB integration to send selected sensor data to an InfluxDB V1 instance. Graphing is done in Grafana, all outside of Home Assistant itself.


I have a completely ludicrous amount of IOT devices, some with flashed open source firmware, on their own VLAN (UniFi setup) so I at least have a false sense of some security. I’m talking my washer, dryer, vacuum, thermostat, lights, home NAS, door locks, alarm system, garage door openers, AV system, Ring doorbell, Google Homes, smart outlets, contact sensors on every door and window, RPi Zeros in three rooms for presence detection, motion sensors in every room, among others. I even bought a Geiger counter to eventually hook up.

I’ve always had a dream of living like the Jetsons and Home Assistant is an awesome way of building it out. However.... it seems destined to be an always-beta something-isn’t-working-right project. Right now, my lights turn off when I open my windows instead of flash briefly. Google Home doesn’t connect to several devices, and it lets me know every time I ask it to do something.

The reality is I don’t have time for this, but I’d be lying if I said it isn’t a whole lot of fun to solder some Alitove addressable LED strips to my NodeMCU and have them turn on with Christmas animations along with Christmas music, but only when it’s below 50 degrees outside and both me and my fiancé are home. Just kidding, that’s not setup yet - still trying to figure out why my bedroom lights turn off 10 seconds after the living room lights, when only the living room light Lutron dimmer switch was pressed.


A few years ago I worked at a company that was making a go of IoT (before it was called that). Everyone was trying to do home automation but the bills were paid by large companies just wanting a way to not have to roll out a guy to some remote place at 150 an hour (yeah that much). So the space was crowded with dozens of protocols and hardware hubs that all rarely worked together or promised to glue it all together. It was all kind of stitched together with odd bits of c/python/java/c# code. Each one tied to some proprietary protocol that wanted 5-30 bucks a month that would stop working when the company was either bought out, went out of business, or the product line went EOL.

Your always-beta made me think of this. I went the opposite direction I use as little of it as possible. A good old leviton toggle switch is kind of hard to beat for when you enter and leave a room. They cost basically nothing and work correctly for years.

When done up nicely it is pretty cool. But the cost still seems high on a lot of this and is very bespoke still.


There should be regulation that forces all vendors to use a public standars, instead of letting them develop their own. Home automation would clearly benefit from a single specification and multiple implementations, instead of current multiple implementation scenario. Web has grown thanks to html being a common ground. HA is wonderful considering how many walled gardens there are .

Imagine buying a house and having to rip out the automation because it's implementation does not work with whatever you have to use.

Home automation should be seen as utility, just like electricity. I really don't care if apple or google doesn't see it that way. Electricity has standardized on something , so home automation can too.


You might be interested in https://www.connectedhomeip.com/, which is a "Working Group [that] plans to develop and promote the adoption of a new, royalty-free connectivity standard to increase compatibility among smart home products, with security as a fundamental design tenet."


> There should be regulation that forces all vendors to use a public standars, instead of letting them develop their own.

Forcing them to use public standards and forbid them to develop their own? You can't possibly believe that, you're literally stifling innovation. A much better approach would be to force them to make their standards public.


Or even better, make them support open standards that cover the basics but let them play with their own "advanced" custom features.


The proper place to do this is in building codes: forbid hardwiring of devices at build time that don't (at minimum) support a basic, local protocol and be cloud-disable-able.

They can do whatever they want in addition to that, but table stakes or you aren't installable in a new build home.


But how do you prevent it from turning into another AMD FreeSync issue? FreeSync is a royalty-free, free to use display syncing technology.

However many monitors only implement part of the overall FreeSync spec. So when you buy a monitor with FreeSync, it might be fine from 1-60 fps, but 61-144 fps might have issues.

So, how do you enforce that all "basics" are met? Consider the complexity of new technologies like Bluetooth 5 or Wifi 6 - even getting all the basics is a huge amount of work.


Mandatory tech standards enforced by regulation are likely to be crap and out of date, thats the problem. Also, big corps will capture the regulation process and force their version to be standard, and so on. Better to let something emerge from the chaos, probably will in a few years time. In the meantime, no real damage is being done, its not like people are dying due to the lack of an HA standard.


It works fairly well in the EU and non "IT" areas, where introduction of an ISO standard is required to gain wider market access and consumer approval. It could be sufficient to point out that there are X organizations that created accepted standards, any device needs to implement a standard from at least 2 orgs. A standard would specify transport (HTTPS), schema and meaning for all messages, authentication and authorization protocol. Most importantly, there should be a standardized way to poll devices for data.


Like the internet. It'll never work.


I think your comment presupposes that the solution that the state would dictate would be better or, at least, more useful than the alternatives. That's likely incorrect.

Electricity standardized largely without government intervention, and it worked out mostly okay.

As another commenter pointed out, no harm is being done during this short period where the standards shake out, and most people still use plain ol' mechanical light switches.

Please don't be so quick to reach for the regulation hammer. It's not the solution you seem to think it is.


It was to manufacturer's advantage for electricity to be standardized. Otherwise they would have to support components for every single distributor. I don't know if it was to distributor's advantage... I think there's probably some argument for a shared grid and lines improving them also.

There's no advantage I can think of for Philips to host non-Philips protocols on their lightbulbs.


>There should be regulation that forces all vendors to use a public standars

and we'll end up with something like TR-069

no, thanks.


A lot of them use UPnP but there are almost no apps that can deal with the IoT features of the protocol so most manufactures write their own UPnP app with a bunch of "features" demanded by business people.


Hopefully standards will coalesce over time, but right now I feel like the industry still needs to experiment to find the best interfaces to address power usage, security, and features.


The S in IoT stands for security :-)


> In fact, HomeKit was often the odd one out when I looked at IoT products and I can imagine someone explaining it away as Apple demanding things be done the Apple way or the highway hence the lack of compatible devices.

I don't know what the current policy for HomeKit is, but back when we first submitted for certification with Apple about 3 years ago, they required us to submit a homekit compatible ios app with full support before our devices could be certified. We couldn't just let users use the Home app. The whole process took a very long time and whats worse is the SDK doesn't provide stable identifiers for devices, rooms, scenes, etc between app sessions. Its a mess to work with.


Same experience, we heard "proprietary chip," and the prototype flew to the dumpster.

By the time Apple realised their blunder, the market was already flooded with $10 wifi lightbulbs which used the dumbest protocol around, but, unlike Apple's thing, they simply worked.

Google Thread was from the same opera. Google demanded too many ceremonies, but in the end nobody bothered with Google Home because competitors released products faster than Google's lawyers came back from lunch.


I LOVE Home Assistant! Pretty much automated everything in my house. I walk around and the lights turn on with a time-appropriate brightness. They turn off when the room is empty again. I haven't touched a light switch in months. Garden irrigation is automated based on outside temperature and rainfall from my weather station. I get instant picture notifications when someone walks up to my patio or front door, and HA fakes inhabitance by turning on a couple lights randomly inside. My bedroom lights slowly dim up starting 15 minutes before the next alarm on my phone if I'm in bed (great for the winters). I'm notified when I can get free cooling or heating by opening the upstairs windows (calculated based on temperature differentials and HVAC status). I can set my alarm and view the status of all doors/windows/motion/etc. remotely. My thermostat loosens the desired temperature range when the home is empty, and tightens it back up when I return. Bathroom fans turn on when you've been on the toilet for more than a couple minutes, or when humidity spikes due to the shower being on.

There's at least a couple hundred other little things I've written automations for, and it's really nice to be able to do whatever YOU specifically want. (I even have an Android tablet mounted on the wall in my bedroom - great for setting things conveniently and it will bring up a camera stream when motion is detected in an area around the home.)

Sure the stuff requires some upkeep, but I actively enjoy that. I might have to replace a ZWave multisensor battery every year, or upgrade some configuration when a new version of HA comes out. But I always wanted a smart home I could tailor myself. Everything is local (well except Google Assistant, but that's ancillary). HA is just fantastic, and so is the community. :)


Really nice! I'm a satisfied Home Assistant user as well.

> I walk around and the lights turn on with a time-appropriate brightness. They turn off when the room is empty again. I haven't touched a light switch in months

I have motion sensors in my "transient" areas as well (toilet, garage etc.), but not in the other areas of my house (living, kitchen etc.) How do you prevent the lights from going out again when you're sitting motionless for a couple of minutes or so? Do you use other stuff besides motion sensors, such as computer vision or geofencing for example?


Pretty cool! When I own my own home I want to do this. Thanks for the great write up!


After doing some HA myself, what are you using for the by-room presence detection?


How do you detect toilet usage? A motion sensor?


You could probably do it with a sensitive vibration sensor; I know that's what folks do for basic washer & dryers. I imagine the commode shakes a bit when flushing.


there are devices you can put on your water meter that passively watch flow by listening to the meter turn


That wouldn't work for two reasons.

1. That would capture all water usage, which is not helpful when you're trying to take specific action based on water usage in a specific room. No point turning on the wrong bathroom's fan, or turning it on when you do laundry.

2. Presumably if you're ventilating the bathroom for odor control, you wish to ventilate it long before the toilet in question is actually consuming water, since it only does that at the end.

Ideally if you're trying to turn the fan on during toilet usage, you'd want a way to detect that the toilet is in use long before said toilet is using water. Presumably motion would be sufficient, although I guess one could detect weight on the toilet somehow.


Disclaimer: I'm a VP for an IoT consultancy, and work with some large Fortune 500s and their IoT initiatives.

A few thoughts:

1. Keep in mind the problems in this article span the ENTIRE IoT spectrum: industrial, transportation, medical... you name it, it is messy.

2. Be careful what you ask for: you can script and hack a lot of cool IoT stuff today. As the road gets paved, lots of that freedom will go away. It will get much easier for the common user, but not as fun for us hackers.

3. IoT in 2020 is like the web was in 1995: lots of potential, but it's mostly a dirt road. I have a pet theory that consumer IoT today is like the web pre-Google: it was cool, but difficult to navigate and use. Once we get our "Google" moment, we'll see a slow transition to a much more innovative and useful world. But we'll need some truly innovative new product categories, not just bolting on IoT features to existing things. Google and Amazon won't drive that: they're not making things, they're just trying to be the UI and infrastructure to the smart home. [1]

What could those categories be? Just some thoughts:

1. A truly smart and autonomous kitchen: "Kitchen, make me a sandwich" (This is my favorite line when I speak at conferences)

2. Smart electrical infrastructure of the home: I want to buy a smart light bulb, plug in it, and it "just works" (securely, of course)

3. Smart windows. (these are coming... they rock)

4. Microlocation. Everywhere. On all the things. I want to know where everything is in the home, even if I packed it in a box 5 years ago. "Google, where are my keys" [2] This might be smart tags, or just computer vision.

5. Walls are touch screen displays, likely with some sort of smart ink so we're not pushing a lot of light into the space. Apple's smart glasses might simulate this eventually, so this might not make sense...

6. Synthetic sensors everywhere.

[1] Don't get me wrong: The Echo/Alexa product line is really incredible. But until Amazon starts making some cool actuators that do real work for me, it's just a cool VUI.

[2] There's a comic from the old days that had this question. The punchline was "On your #@&*@# desk".


Thank you for putting down your thoughts here, especially 1, 2, and 3. It is messy.

Some of my criticisms of HA are absolutely not their fault, and users should realize the state of devices. It's very common for HA to report a false state of a switch. However, if the switch is report "yes, I have turned the light on" but the actual mechanism in the switch to start and stop electricity is not working, what's HA, or any hub for that matter, supposed to do?

The quality of the devices highly matters, and the truth it, a lot of them are cheaply made junk with no or few alternatives.

Home automation is very, very far from "just works" and people getting into it need to jump in with their eyes open instead of falling for hype.


What SaaS solutions do you recommend to your clients?


That's a complex question. It's typically a combination of IaaS, PaaS and SaaS.


Funny, because just a week ago, a post made it to the top talking about the problems of not only Z-Wave, but Home Assistant.

https://news.ycombinator.com/item?id=25099615

I chimed in to his blog and that thread about the problems I've had with Home Assistant:

First off, the project is schizophrenic. They are way too into rewriting things for the sake of rewriting things. You have to read the release notes because a routine pip upgrade can kill your whole installation. In the five years, I've run it, they have 1) Introduced, rebranded, and retired a recommended install method. 2) Completely redone the web architecture. 3) Completely redone the Z-Wave architecture. 4) Routinely release UI features that are just placeholders and useless.

This has ramifications when you're searching for a problem. Often examples on blog sites or Stack Overflow are obsolete after only a few months.

Second, they are trying to target a wider audience by moving functionality and maintenance to the web interface, but they are so far away from this, it will take years. They are trying to get around the inherent linux-ness of their project, which is a huge undertaking. Troubleshooting pretty much still requires journalctl. Because of this attempt hide away its linuxness, Home Assistant is now in an obnoxious state where some actions require you to start it in the web interface, but then you need to ssh in to finish the job.

Take deleting a Z-Wave node. You first have to Delete it in the UI. Some parts of it though, never work. The "Delete" button is greyed out. So then you have to ssh in and vi into the configuration file to delete it from config files.

Finally, the communication in terms of the UI and documentation are overly abstract. Everything is done in terms of "entities" and "nodes." When you add a Z-Wave device, you get an entry for it in entities, nodes, switches, Z-Wave, and devices panels. After five years, I can't succinctly tell you the difference between them.

Do I use Home Assistant still? Yes. It still is the most flexible and open product out there. Would I recommend it? If the user did not have a background in linux, I would definitely not recommend it. My biggest pet peeve with this project is how many people recommend HA regardless of audience, not taking into account the Linux knowledge required. HA is not a magic pill.


I agree. I use HA extensively for three years now and I still do not understand what is configured where (config files vs. the web UI). The web UI is more and more useful for that but then the config goes into the magical .storage bin and it is lost there.

This is for people who do it for fun and are ready to maintain a system.


This is one of the things that has bothered me the most about Home Assistant. When devices get added suing the web interface, why are they not added into the same YAML configuration that you add devices to manually? Or even if not in the same file, a different file in the same location?


I think the devs were changing the design on the fly, and the direction itself changed a few times. I am still not sure what goes where (though using HA extensively)


Pretty much. Adding devices are done through the UI these days. Manually adding them to config files is not recommended.

Deleting devices are a different story. The functionality of deleting devices doesn't work in the UI. I have literally had to grep the entire config directory to find all references in yaml files and delete them.


Have you tried Homebridge?


This seems to be very linked with Apple, I am in the Android team :)


Not a problem we welcome fresh converts in Apples walled garden. ;-)

I might give Home Assistant a try after reading this:

https://www.reddit.com/r/homeassistant/comments/buol9s/homeb...


This is what turned me off from HA too. It almost magically discovered a pretty much all of my devices (hue+ikea+xiaomi hub) and created a default dashboard for them.

But then I wanted to change the dashboard, and stuff just didn't work.

I wanted to add some scripting, but the WebUI didn't let me do the things I wanted (and knew the system could do). And "programming" in YAML makes me puke in my mouth a bit every time.

Now I'm just consolidating all my devices to a simple MQTT-based environment with zigbee2mqtt, some python glue (BTLE sensors to MQTT) and NodeRED for automation and integration. Works like a charm.


> I'm just consolidating all my devices to a simple MQTT-based environment

I've been trying to move as many of my sensors and actuators to MQTT as possible, using HA only as a frontend. Most of my automations are in AppDaemon.


Are there any maintained whitelists of "direct access" HA IoT hardware? I.e. hardware I can either directly access from HA, or firmware flash and do so?

This feels like linux compatibility back in the 90s. Hypothetically, you could make many things work. Practically and sanely, you (as an end user interested in getting work done) should stick to paved roads that permit shorter stacks.


Not directly Home Assistant but tangentially related is ESPHome[0] which is all about making those custom chips with custom hardware and sensors and integrating them into HA later. They also have guides on flashing firmware of some brand-devices (since those devices are also running these same open-source dev boards).

[0]: https://esphome.io


This, so very much. That project is amazing. It feels very close to the metal and is very satisfying to do, whilst also being pretty straight-forward for a beginner.

And you can go completely custom using the Arduino IDE and anything compatible (Arduino boards and ESP32 or ESP8266s) and link them in to HA via MQTT, which works surprisingly well.


Not to my knowledge, but they do at least list[0] what kind of access method they use for the different integrations.

I would too very much like to see a filter on local only access. At least it's doable to check before buying something.

[0]: https://www.home-assistant.io/blog/2016/02/12/classifying-th...


I've focused on IoT-devices that uses the ZigBee-protocol, which can be integrated directly (trough a ZigBee controller of your choice, like deConz) into HA without the need of any proprietary hubs. Luckily IKEAs IoT-devices (primarily lights, controllers and switches) use the ZigBee-protocol and are decently priced. I have also used cheap environmental sensors[0] from China that supports ZigBee. I really like the idea of only using components with an open protocol and being able to isolate my IoT-setup to my local network. Everything would still work if I lost my internet connection and no data is leaving my house.

[0]: https://www.aliexpress.com/item/4000713849766.html


https://templates.blakadder.com/ lists things that can be flashed with Tasmota. So it's not a full list of everything with a direct API, but it's a list that is already contains basically every type of device. And once you re-flash the thing it's fully yours, no need to worry about who your device data is getting shared with, no apps that vacuum up your contacts, and no risk of the mfg pushing an update that breaks your setup.


I can give you two at least: TP-Link's Kasa line and Broadlink devices (IR blasters/etc). Now both try to hit their respective clouds, but they have local APIs and if you firewall them off from the internet they work fine locally.

In fact, I just debugged and found a workaround for the Broadlinks rebooting every 3 minutes as their cloud connectivity watchdog timer expired, and now they're rock solid (not released in HA but it will be soon).


I'm not aware of any "all-in-one" list, but here are two of my sources.

https://zigbee.blakadder.com/all.html

https://templates.blakadder.com/us.html


I use a TI CC2531 with the zigbee2mqtt firmware and HA add-on: https://www.zigbee2mqtt.io This gives you "direct access" to a long list of Zigbee hardware (eg. IKEA Tradfri, Xioami Aquara) without a separate hub.


LIFX has a documented LAN-only protocol which doesn't require their cloud or any kind of authentication. Their own app and account system is only required upon first setup and I bet even that could be reverse-engineered.


Yeah, you’d think that something that connects to wifi and has a http API is good enough for anyone. I guess that may be hard for a wall switch?


I've gone down this rabbit hole with a mixture of Node-RED and homebridge: https://taoofmac.com/space/blog/2019/01/13/1900

I tried Home Assistant, but by the time I got to it I had already built out 100% of what I needed and it didn't support a couple of custom integrations I'd built, so... I'm still running my combo today.


Can Node-RED trigger changes to HomeKit accessories, or does it need independent control over accessories?


Yes, you can, with the right combination of things. I essentially create a JSON payload to describe the desired device state and send it over to a Homebridge plugin over MQTT.

There is also a "direct" implementation that adds HAP support to Node-RED, but I prefer to have Homebridge do that and have a loose coupling between both.


All of these IoT products mentioned that work with some but not all systems (and mainly work with their own) really have no interest in selling hardware; they want you to get a subscription, they want buy-in with more products that work on their network, because each one adds more loyalty.

It's a very cynical industry, one intent on selling subscriptions with minimal cost on their side.

I mean I got a smart thermostat a few years ago because I was living alone and it turning off when I left the house was pretty smart, but it was a 25 / year subscription, my girlfriend moved in, and we're home all the time now. I don't have the subscription anymore, so now it's "just" a very complicated thermostat that probably depends on the company's server just to turn my heat on.

The one bonus function it does have is a chart of temperature and humidity, so I can for example check how effective heat-limiting measures are vs last year.


Just yesterday I "launched" my fist Sonoff S20 power outlet.... before purchasing, hooked up I can eventually control it from home assistant if I burn tasmota firmware on that device.

I stumbled upon SonoffLAN https://github.com/AlexxIT/SonoffLAN which I'm gonna try first. However there is a comment on github that gets me thinking:

> Local only mode (manual get devicekey)

> I don’t understand who needs it, but you never know. You must manually get devicekey for each device. Only works with devices on 3rd firmware.

I mean, he is thinking: why non-cloud access. While I'm thinking - having a power outlet depend on some 3rd party service, having internet access, having some app on android, which asks for location access to setup wifi and having account on manufacturer site just to control power outlet......... I just cannot wrap it in my head and glad I did some googling before buying.


Indeed, I call this model "Product as a Service"

You buy a house, but the seller still demands you to pay rent to live in it:

https://news.ycombinator.com/item?id=23486325


I've been hacking on computer for over thirty years, and maybe it's a testament to my age -- but I've got to say, there's not a lot that gets me less excited than the "internet of things".

Maybe databases.


I felt the same way about the "Internet of Things". There's no fun in it, when the "things" are built by companies, connected to their servers, and they're just products designed and controlled by someone else.

But recently, I started discovering how I can build my own "things". That completely changed my view of what's happening in this field.

There's a thriving ecosystem of affordable micro-computers, controllers, sensors, a wide range of components; and people of all ages building all kinds of things with what's available in the market. As a sibling comment mentioned, the excitement is similar to the early days of the web, or what the early days of personal computers must have been like.

For me the joy comes from exploring the building blocks, technological marvels that are accessible to the public now, and learning how to build what I imagine in my mind. It kind of brings me back full circle, (re)learning C and electronics, controlling hardware directly, like I was doing in my childhood/pre-teens - but with all the advancements made in the last few decades.


man, i feel completely the opposite. Once I realized there was a world outside of the IoT 'products' with proprietary ecosystems and that I could build my own, I found this whole world that took me back in time to the early days were I was working much closer to the hardware. Writing code in C, soldering i2c peripherals to microcontrolers, etc. And at the same time its given me real world use-cases to learn the new hotness tech like docker, mqtt, and some industrial stuff like node-red.


I'm also in that 30 year camp. Will say that I value things that understand my time has value. I can say that I've gone from having the stereo with 7.1 channels and balancing a room to just give me a Sonos.


I agreed, until my coffee machine was warm when I got out of bed. And then ventilation was sorted out and it just works.

But the killer one for me was making a garden irrigation system where it waters for 10 minutes, one hour after sunset.


> I agreed, until my coffee machine was warm when I got out of bed.

You don't need IOT for this. Even the cheapest coffee pot has a timer on it.


It’s an espresso machine.


Ah, that makes sense. I have to let my Gaggia Classic warm up for 10 minutes. I should take your route!


Power strip with timer?


It’s achievable for sure, and a timer was what I was after. They are horrible to use and quite hard to find and that’s how I ended up with a Kasa smart plug, followed by HA.


Yesterday, we lost the password to our bed.

Of all of out IoT mishaps, this one was possibly the most ridiculous. We have a SleepNumber bed that adjusts up and down. I'd just cracked a rib and really wanted to sit upright in bed.

The problem was, I'd gotten a new phone. The bed has an app (because of course it does) and the only way to adjust it is via the app. So I try to use the app and realize I first need to log in. The problem is, we have no idea what the email address that was used was, nor the password. Password reset isn't working. Eventually after half an hour we gave up and used a bunch of pillows instead.

Even when the app works, it's terrible. It's super laggy (it sometimes takes a full minute to adjust the bed) and is a privacy nightmare - it wants to log every bedroom "activity" and send all the data back to sleep number and there is no way to permanently disable the feature - all you can do is pause data collection temporarily, which means it will ask you again next time you open the app.

There doesn't seem to be a good way to pre-set "only adjust MY side of the bed" so usually any adjustments I try to make end up moving my wife as well. All in all, the app is terrible.

I fully intent to get around to reverse engineering the protocol and writing a home assistant plugin for it, just as soon as I get a spare few days (i.e. never).

I still can't believe I need a password to use my bed...


I had to create a account with password to control my christmas light. I am sure next winter I will scratch my head to remember my email/password.


Love HA, my Sonoff basic (Tasmote reflashed) controls the fan on the toilet, based on a Philips Hue motion sensor. I have bought Sonoff ZigBee temp/hum sensors to automate fan switching in the bathroom based on humidity. The fan will be controlled using a TP link smart wifi plug, which I have lying around. It's all no problem and I see everything nicely grouped per space, completely unaware of underlying manufacturer, because of HA.

Also, HA presents the status of my Samsung/HP crappy printer Toner, without any configuration! Try finding that value in any of the 3 or 4 Samsung/HP applications I now run to interact with the printer.

Moreover, HA on my Pi4 makes installing and using stuff like AdGuard a breeze. It's my fav project (together with NextCloud).


Just a thing to consider: I moved from Tasmota to ESPHome and like it very much. Their rebuild OTA solution is nice but could be much, much better by updating devices that happened to be off at the moment where the update was launched.


> controls the fan on the toilet

Huh... what?


Maybe in English I should say toilet space? What the word for the small room?


Bathroom (even when it doesn't contain a bathtub or shower).


Ah, yeah haha I had some doubts because I also use the word bathroom for the room where the bath (and shower) actually are (humidity is only relevant there). I see now that that is also called a bathroom, irrespective of the presence of a toilet. TIL :)


Ah this makes sense. I was sitting here trying to imagine a fan that is integral to the toilet itself.


Higher end bidet toilets have fans to dry your ass after washing. Not what the OP was talking about, but it's a thing that exists.


your english is fine; the problem is american.


"on" seems to be clearly the wrong preposition regardless of country of origin.


What would you use? In would for me be "in the bowl" :). Which incidentally in my country does not mean it will get wet, another cultural difference ;)


In British English "toilet" can refer to either the room or the device in the room, depending on context. So if you said "the fan in the toilet" I would understand it to be a fan in the room, and if you said "the water in the toilet" I would understand it differently.


Same same in Dutch.


For the HS100 issue he was having at the end of the blog post, TP-Link decided to push out a firmware upgrade that broke existing integrations (https://github.com/home-assistant/core/issues/43088).


Am I reading the article correctly that various apps from the vendors are required to properly control the devices? I guess the apps all talk to the vendor? So in the end the vendor knows what's happening in my bedroom?

No, thanks.


It varies by device. Sometimes you need the vendor app to configure the device to join your Wi-Fi, but then you can use its local API and firewall them off from the internet. This is the case with TP-Link's Kasa devices.

Other times you can (/must) do the setup yourself and don't need to use the vendor app. This is the case with Broadlink devices where you join their provisioning AP and run a command to set up the WiFi credentials.

It's rare that you can just turn off the cloud features altogether, but for devices with local APIs like these you can just firewall them off or put them on an IoT-only WiFI network with no Internet routing.


Welcome to the realities of our great and glorious IoT future! These devices are the next frontier in data collection, and it's a grueling privacy nightmare.


It's really cool that there are open source bridges between the proprietary ecosystems. But I have to ask, why would you want to deal with all of this just to speak to your phone instead of pressing a button to open the garage door or turning on the light?

And this questionable convenience uses finite resources on earth, both carbon emission and ore. It's hard to scale back on what we use, and I wouldn't go back to a 17" monitor for coding. But maybe we could at least try to avoid creating new stuff that's accelerating our demise?


The amount of resources involved is next to nothing compared to pretty much any other hobby you might imagine, whether that's painting, tinkering with motorcycles, setting up a home recording studio or even just hiking.


So familiar. I learned how to solder, how to program real-time things (Arduino, ESP32), MQTT, I built this whole device based on a Raspberry Pi and an Arduino to measure air quality and control an air purifier, programmed this whole thing in Python which I learned because at the time my favorite language didn't have much support on the RPi, wrote my own "drivers" here and there, set up all sorts of docker containers...

Frankly, if I didn't love programming and tinkering, I simply wouldn't have any IoT stuff.


I recently installed Home Assistant and bought some TP-Link HS100 plugs so I can turn the heater / workbench lights in my workshop on and off, so it's nice and warm before I start work.

Two weeks after I'd got it all running on an old Raspberry Pi, TP-Link released a firmware update that nuked the HS100 plug's ability to be controlled via Home Assistant :/

There are quite a few irritated TP-Link customers, but to their credit, TP-Link do seem to be reverting the firmware for Home Assistant users.

https://community.tp-link.com/en/home/forum/topic/236268 https://community.tp-link.com/en/home/forum/topic/237614

Edit: once the firmware is reverted, I'll be blocking the plug's access to external networks! School boy error - I should have done that from the start, really!


This was my entry to HA too. A TPLink HS100 turns on my espresso machine and posts to slack when it has done so. It also posts to slack when I turn it off as it’s a bit of a monster and I don’t always remember to switch it off, so I can check.


If anyone is burnt out by the constant breaking of HA with updates, I recently switched to Hubitat and it's pretty stable. Sure it doesn't have as many features as HA, but it works fine for my Z-Wave setup.


Seconding this! Hubitat is not as sexy (because there’s less graphics and more code) to deal with, but it’s been a great solution for me. You can go as shallow or as deep down the rabbit hole as you possibly want.


It's worth checking out the /r/homeassistant subreddit. There's some great projects on there like this:

https://old.reddit.com/r/homeassistant/comments/ev9hr8/prett...


thanks


due to regular air pollution in the area where i live, i had to buy a couple of air purifiers 2 years ago. those happened to be xiaomi, which had "chinese" auto settings with too high particle ppms to my liking and no possibility to automate it manually (they had it for china, but not europe)

so very soon i ended up with HA on my rpi - yes, the learning curve was quite steep, but my automations just work for years since the initial setup

since then my 'iot infrastructure' has also grown quite a bit, driving me through even more rabbit holes with zigbee2mqtt presence detectors, lighting etc

the only thing that now worries me a bit (in the light of covid etc) is that noone from my family will be able to support all this stuff if anything happens to me, so i have to be careful to design the workflows to fail gracefully and leave the possibility of just plain old manual control if stuff dies


Moving HA from a Pi 3B to an intel Nuc completely transformed it for me. It’s now lightning fast.


If you are into home automation, you should also consider "ioBroker". Lot's of adapters to connect all the different standards easily, e.g. controlling Zigbee devices from your KNX devices, adding Amazon Alexa to the show, etc. Scriptable via Javascript, but you can also use Blockly or NodeRed on the low code side. Keeping track of all your IoT sensor data can be done by integrating e.g. InfluxDB to store the values you like and then use Grafana to display any charts based upon your values as you like. There's also a web-based visualization available to show and control the status of all your IoT devices. Lot's of options and easy to use.


I only started toying with HA a few weeks ago and am currently writing my own platform.

I've bought lights, switches and sensors and so far only the zigbee stuff “just worked“ everything else gets me down a debugging rabbit hole. But zigbee is the easy part anyway because it all lives within deconz.

I guess would i have bought only official supported products my experience would be different.

But this way i really dont get the hype.

Edit:// also the docs are super confusing. Seems most things are now gui based, but most docs talk about config files that dont exist anymore. It also runs like shit on the raspberry pi 4 i only bought because it said its a recommended device. Wifi setup isnt working at all too.


Your comment about the docs and configuration is very true. This is a real weakness.

As for HA I use it a state and device manager, the automations are via an external program (AppDaemon)


Yesterday only I finally uninstalled Home assistant after 5 months because

- SD card was getting corrupt with time

- After a power cut if HA comes online before your internet then you got a problem and have to manually restart it.

- System update frequently broke the installation

- All my use case was easily migrated to node-red and I end up using it more.

So, I formatted the pi and installed ubuntu and than started a docker container for node-red and motioneye.


That's not going to solve the SD card corruption issue. That's not specific to Home Assistant, it's just a fact of life with SD cards. You'd be much better off using an SSD via USB.


I too suspect it's not the HA that's causing the corruption but the workload. Let's see how the new experiment goes.


There's an issue with the recommended "default" setup of Home Assistant on a Raspberry Pi, where it will set up a database for recording events. But these ends up being a ton of writes to the SD card over time. If anyone else is using Home Assistant on a Pi, I highly recommend moving your database files to an external USB HDD, or connecting it to a database over the network on another machine. That should make the SD card issue vanish.


From what I know there's no way to actually disable the default DB. Even with external DB it's only a replica of default DB not a replacement.


My HA install was on a Synology and in Docker, with a UPS so power outages weren’t a things. However the lack of WAN occurred a few times. It didn’t ever cause trouble, no matter what order it started up. What was the issue it caused for you?


The docker Synology setup is very good in my experience. When an update is available for HA you can just clear the container and start it again, provided you have correctly mounted the volumes.

I even got my Zigbee USB Stick working, you just gotta start the container once via the terminal on the synology and then I can clear it later to update it etc.


I don't know the exact problem but have have noticed that whenever router(with dhcp) starts after the home assistant. HA doesn't get's an IP and thus it's not accessible ever after waiting for 5-10min. Also, that it not always the case sometimes it works(and I don't know how).


Oh that makes more sense. It sounds like you have moved away from it but a static IP on the device might help that.


What's the recommended automated backup / manual restore method for Home Assistant config?

I've only just started using it and already built up a time-consuming to reproduce configuration. That it runs on a RPi means I expect the SD card to fail without warning in several years when I least expect it. Would be nice to get the restore story nailed now.


Assuming you're running the full version with the supervisor and add-ons, I'd recommend the Home Assistant Google Drive Backup add-on[1]. You can set it up to take snapshots on whatever schedule you like and keep a rolling backup in the cloud.

Restoration is now part of the new setup workflow, so you'd just flash a new SD card with the base image, and upload a snapshot as you go through the setup process. Poof, everything's back the way it was.

[1] https://github.com/sabeechen/hassio-google-drive-backup


> Just one of those moving parts stops and not only does it kill a part of your internet of things, but there's a good chance you'll be in for a lengthy troubleshooting session.

This is why I haven't jumped on board with HA or anything else. Long ago I had a very automated house with X10, but over time it slowly degraded to the point that I got tired of debugging my house every weekend so I ripped it all out. Ok, that was X10 and we all know X10 sucks, but my point is that was a single protocol from a single manufacturer. Imagine the MTBF where you have a federated system with 10 different protocols and 10 different "integrations."

No thank you. The (manual) light switches in my house are 20 years old and they'll probably last another 30. But "smart" gizmos are just not built to last. They could be, but they aren't.


There is another home automation software, which is not as popular as Home Assistant, openHAB (https://www.openhab.org/). openHAB, just like HA, has many integrations, you can have a look on the website. The Github is https://github.com/openhab.

In the company I was working for we were trying to create a building automation software and we were between HA and openHAB. We finally chose openHAB because it is written in Java and we could find easier help from Java developers in-house rather than Python where HA is written.


OpenHAB seems to be the choice if you're doing something commercial and want German Engineering And Stability.

But one thing it isn't is user friendly.

I'm not an IoT novice (I did that for a living for half a deacade) neither a programming novice (Java for a living since -99). Still I couldn't wrap my head around the OpenHAB way of doing things.

And I didn't even want anything complicated, just wanted my Hue lights to turn on when I pressed a button.


What a fucking nightmare. Why would anyone spend his time messing with this stuff? Just use physical light switches to control the lights, RF transmitters and wall buttons to control the garage door, and get on with your life.


Perhaps it's a bit like building a tiny ship in a bottle: people don't do that because they need a ship in a bottle. They do it because they enjoy having something to tinker with.


I always wanted to fiddle with this but I don't have enough IOT systems besides a Roomba. Everything related to home automation including lamps are quite expensive specially considering I live in a small apartment.

I wonder if there are cool stuff that you can do with its scripting capabilities paired with comercial wireta... I mean assistants like Siri or Alexa. Think of "hey siri, please compile project foo and commit to GitLab" or "hey siri, please launch another instance of program x".


Check out Yeelights. Similar to philips hue but more affordable. That plus smart plugs is a good place to start for a small apartment


There are a ton of wifi-enabled lights, so I wouldn't recommend one in particular.

But the reviews for Yeelights say it requires you to use the Android app which has too many permissions for what it does. I would not recommend it after reading that review.

Hue, on the other hand, isn't just wifi. It has a box that will hook it to your network, but it's also got another wireless protocol that isn't affected by your wifi network. That means that physical Hue switches should continue to work even if your internet is down, a massive advantage of standard wifi bulbs.

I haven't actually got any Hue bulbs set up at this point, though, so I'm going on what I've read rather than experienced.


Much like Troy I'm trying to avoid getting sucked into one of the walled gardens. Apple, Google...or Philips.

Yeelights you can control directly via self-hosted Home Assistant & the Home assistant app...on your LAN, no internet required, no proprietary hub, no Philips premium.

>There are a ton of wifi-enabled lights, so I wouldn't recommend one in particular.

You do realize Yeelight is Xiaomi, right? It's their competitor lineup to Hue

>which has too many permissions for what it does

I used the iphone app for initial linking - permissions look fine to me, but I did disable bluetooth & homekit later. That said the initial pairing process is indeed quite sketchy & fiddly.

>it's also got another wireless protocol that isn't affected by your wifi network

Yeah - Zigbee. Considered it but abandoned it due to cost - both on the individual device side and you're back to needing some sort of bridge/receiver device.

>Hue switches should continue to work even if your internet is down

Same for the HA solution since it's hosted on the local network. Unless your local wifi connection to your router is unstable from interference...in which case I'd be concerned about zigbee too since they're both on 2.4ghz


Ikea Trådfri is pretty good and affordable.

The Gateway doesn't even need an internet connection, everything is done locally.


I was so tempted once I bought a house to set up everything to be smart, but in the UK I've found it hard to find smart switches that fit in our wall easily (most are 35-45mm and most older houses in the UK are brick walls).

I've considered smart bulbs but someone will always turn off the light switch and then nothing is smart.

I guess since then I've realised that I kind of like simple electric switches and regular LED bulbs.


I've redone my house with Xiaomi Aqara [1] switches. There are options for neutral / no neutral. I've had absolutely no problems with them. I did have to install a couple of deeper back boxes on a few switches. It's not as bad as you think, just a bit messy to deal with the brick dust.

Haven't had a single issue with them being unreliable over the past year or so I've had them.

1: https://xiaomi-mi.com/sockets-and-sensors/aqara-smart-light-...


> someone will always turn off the light switch

You can (after turning off the power at the main breaker) take off the switches and just connect the two wires together as to have the circuit always-on. You can either put back the switches as-is (though they won't be functional anymore obviously) or replace them with a blanking plate or something depending on your setup. This is easily reversible and thus suitable for rentals too.


Consider looking at smart switches to replace the switches on your wall.


I’m using HomeKit as my hub, and it has been frustrating dealing with all the accessories that don’t support it natively. I run Homebridge, but that depends on availability of plugins.

As long as I’m sticking with HomeKit as my hub, is there any reason to use Home Assistant, or is HA really just for people who want to use it as the hub?


I’m also using homebridge but yes, HA is a good replacement for homebridge even if you mainly use HomeKit thanks to its integration.

Just give it a try and see how you like it


Funny today was the day my simple setup (IKEA bridge + HomeKit) did not run. IKEA bridge restart fixed it.

I myself went from smart home back to just motion sensor + light. And I mostly buy HomeKit devices because the certification means they work, and they speak HTTP/JSON (thanks apple).


I have played around the last few months with HA to cover my IoT-needs, and it's the only option if you want to avoid vendor lock-in and fragmented, expensive and often insecure ecosystems. It is a joy to use and everything works perfectly once you have set it up.

The setup part still requires familiarity with the terminal and some basic unix/posix tools, but having followed the project from the sidelines for some years, there has been a consistent effort to reduce the need to interact with the terminal to use HA. Every release (and they come quite often) brings more user friendly ways of interacting with your devices. Can't wait to see what they can achieve in a few years time!

For me there are no other options, my IoT ecosystem has be under my control and contained on my own network. The open nature of the project brings a host of DIY folks together and it clearly shows in how diverse and flexible the system is for those who want to customize and tinker.

I'm currently running my setup on a pi3 with a deConz dongle, which controls my IKEA lights, switches etc through the open ZigBee protocol. I have also set up IKEAs outlet switches in combination with cheap temperature sensors from China to make all my "dumb" electrical heaters smart and thermostat-driven.

With HA, the opportunities are endless for those who have the prerequisite knowledge to get up to speed with how HA works. The less technically inclined is still bound to the commercial offerings, unless they know someone who can help them set it all up.

Come to think of it, I would expect local business offering people to help set up (and maintain) secure IoT solutions based on HA. Does anyone know if this exists already? The setup can be greatly simplified if a business have a standard set of open components and default configurations ready to deploy and build upon.


“But then there’s Home Assistant” sure sounds like it’s also a giant mess.


Until there is one company that I can buy all my IoT shit from I won’t get started. The only thing I have now are philips hue lights, and they’re already barely used.


Yes it’s a maze.

That seems preferable to getting locked into one of the proprietary walled gardens. The markup they throw on things is insane


Unfortunately Home Assistant is very difficult to package for Linux, and upstream is not cooperating.




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

Search: