Hacker News new | past | comments | ask | show | jobs | submit login
I built an offline smart home (androidauthority.com)
238 points by PaulHoule 8 months ago | hide | past | favorite | 181 comments



Smart Home has kind of been my hobby for the last 7-8 years. I have well over 100 devices controlled by my smart home setup.

Before I installed the first smart device in my home, however, I had a single requirement: EVERYTHING MUST FAIL NORMAL. By this I mean that if the internet went out or a vendor went out of business or I rage quit a vendor, then the device in question had to act like it was a normal non-smart device.

I avoided things where you had to configure power-on default behaviors, and where you had to cycle power or disconnect the device to reset it. For this reasons I have no smart light bulbs in my house. I replaced every light switch with a smart light switch, and if anything goes wrong, walking over and using the switch will turn the light on or off.

Most of my automation is "zero touch" flavored - I want the house to do what I want without me triggering anything. For instance, I have luminance sensors in several rooms and during the day if it gets gloomy or overcast, or near dusk, it turns lights on. I also use occupancy sensors to turn lights on and off, and have multiple rules to set lights to the appropriate brightness based on time of day (after bedtime, the lights still come on when someone goes in the bathroom, but very dim, etc.). All this happens locally via HomeKit or HomeAssistant. And, if automation fails, then the switches still work.


> EVERYTHING MUST FAIL NORMAL.

I'm often surprised how little discussion I see of failure analysis and especially failure design is in software engineering. It is one of the most important concepts in engineering, but I guess we still operate like software can't kill you.

For those unfamiliar with this type of analysis I'll give you 3 examples. 1) Imagine you are building skyscrapers in city with a bunch of other skyscrapers. You don't expect them to fall but you question what happens if they do. You will explicitly design them to fall in on themselves (say after... idk... a plane hits them?) so that they do not fall on their side and take out other buildings around them. An important aspect of security design is explicitly around this whole idea. When your systems fail do you want them to "fail open" or "fail closed"? 2) Fail open would be like TSA, where if you start firing off rounds in the queue the system fails and you get "access" to the rest of the airport. 3) Failing closed is typical of safes, where you accept the fact that you will need to take a blowtorch and drill into the safe. (the TSA thing did happen, just not in America)

While these examples are a bit extreme the ideas are incredibly important for many products. I'll give a good example of this by looking at Android Auto. If a user gets frustrated with the system and is not able to accomplish their task in the way __they want to__, they will disconnect their phone, look down at it, do the thing, and reconnect. No matter how much you want to push voice operations, if the person doesn't like that, they fail over to a more dangerous set of actions than if you had just let them use the console a little longer or let them do a specific task. At least their eyes would be closer towards the road. I'm often amazed that there are lack of consideration for these type of things in home and auto platforms where there are often high stakes. How things fail is one of the most important things when designing systems (I'd argue it even matters for things like law and medicine).


> I'm often surprised how little discussion I see of failure analysis and especially failure design is in software engineering. It is one of the most important concepts in engineering, but I guess we still operate like software can't kill you.

This is a major reason why many "traditional" engineers do not consider programmers to be true engineers.


Yeah the jokes tend to be about how little concern there is for quality control or things breaking. I'm a fan of "move fast and break things" for getting things started and new projects but I'm not sure why that mentality continues into mature products. I think a lot of software dev teams would benefit from referencing the TRL system[0]. I did work as an engineer in a aerospace startup and you definitely move fast and hack a lot at low TRL but you treat mid TRL very differently. Helps to keep scope and pull away from these 26 "2 week sprint" nonesense. Doesn't make sense for mature products, you're just going to break things that already work. Now I will add though that it isn't uncommon for "traditional" engineers to also move too slowly. I think there's a balance in there. Don't be Boeing but don't be a startup either if you're Google.

[0] https://en.wikipedia.org/wiki/Technology_readiness_level


Does it not matter what the consequences of failure are to determine how much effort should be put into handling failure?


That's actually the entire point. There's consequences to however anything fails. Think the skyscraper example. Do you want to explicitly design a failure mode or do you want to be just "let's see what happens?" Which do you think has a worse consequence? Neither are great, but one is definitely better than the other.


Of course it matters. That’s the “end effect” portion of any proper risk management process. The severity and likelihood of various end effects drives improvement in the design, creation, and usage of the item.


But why are people surprised then that in most software the process is not as thorough as in aerospace or elsewhere with physical things.

Most of the time physical devices failing will have much more severe consequences, than a website going down for an hour. In some cases there are APIs which many other critical systems use and frequently those APIs do have much more rigorous process in making sure that they are reliable.

All of that seems regulated by governments and markets to me.

They have promises of reliability and big financial penalties if they were to fail on that reliability.


> But why are people surprised then that in most software the process is not as thorough as in aerospace or elsewhere with physical things.

Outside of engineering, few people have ever even heard the phrase “risk management”, let alone understand the theory behind it. It’s really hard to argue that a developer can consider themself an engineer, when they don’t bother understanding what happens when the thing they “engineered” fails.

Yes this applies to web applications too. If someone can’t access an application that gives them directions, it’s possible that they will be stranded. If a healthcare website fails to load a list of available physicians, it’s possible the user gives up and doesn’t seek medical care.

The current prevailing attitude in web dev of “who cares” is really a testament to how little most web developers and real engineers have in common.

Software engineers working on safety-critical systems deserve that title because they actually have to understand software risks, design appropriate mitigations, and prove their effectiveness.


Thanks for this comment. Clearly in my original comment I made I failed to articulate how useful failure analysis is for even highly mundane things. So if we take this as a post mortum then I think we can see the failure mode of my language. The big question though is if this is within reasonable bounds of noise as over emphasizing mundane examples may result in the concept not making an adequate impression on the importance of the topic. I did have a large number of points with no responses prior to receiving misinterpretations but that's a noisy metric itself so now I'm asking a third party consultant if they have any thoughts on how I can improve my communication.

And not to say there aren't plenty of software engineers that do failure analysis. I mean we do have exceptions, exit codes, traces, and even QA (though many hate them). But I'm not under the impression that the idea is as ingrained in the average software engineer as it is in the average engineer. Having taught CS I've been surprised at how much less time is spent on this topic and how less explicit it is usually discussed when compared to other engineering disciples. The same goes for ethics which I think go hand in hand here. My impression is that this is because when software harms it is often less tangible and less direct than in other engineering disciplines where it's obvious how a bridge failing causes substantial harm and economic impact but where a failure to protect against injection in your not mainstream platform also causes large damage because people reuse passwords and that passing the buck to user error is unacceptable given that it's expected behavior from the user (work on expected behavior and account for unexpected behavior but never rely on domain knowledge unless under special circumstances). We all know everyone reuses their Gmail and bank password on websites like Netflix or fucking neopets.

We wouldn't have as frequent front page posts about users getting accounts unlocked only due to the fact that they were able to go viral if software engineers better planned for failures in the system. Do Gmail devs really deeply think about what happens when someone loses access to their account? If there's a means of recovery if they're devices are also taken or destroyed? That this solution works in practice, not just theory? Do they audit and dogfood this process to ensure it's working properly and understand how it fails and the consequences of that? I'm assuming no because we see people locked out of these systems ("these" because I'm generalizing beyond Gmail)


> My impression is that this is because when software harms it is often less tangible and less direct than in other engineering disciplines

You're certainly on to something here. It feels easier to disassociate oneself from an ephemeral codebase whose existence vanishes entirely from your life as soon as you leave a company. Compare that with someone working on an airplane that a family member may rely on to safely transit.

That's what makes it even more sad that computer science majors are shielded from all those concerns in engineering. There really should be a "software engineering" minor that delves into what the rest of the engineering world contends with.


> so now I'm asking a third party consultant if they have any thoughts on how I can improve my communication.

Hope this isn't too blunt, but I find your writing style to be a bit "chatty". I think you must have got the same advice I did, which is "write like you speak".

For most people, the vast majority of our verbal communications are highly informal, filled with lots of slang. Verbal phrases and euphemisms don't translate very well to writing sometimes.

If I were to offer advice, I'd say write shorter sentences and use simpler words. It should feel a bit uncomfortable to write like this. I feel slightly uncomfortable writing this even.


On forums I write like I speak but I write differently for blogs, lectures, and papers. I appreciate the advice and know I'm often verbose. I love nuance, so I tend to write like a misattributed Mark Twain quote. I am working on it. I'm not as concerned with verbiage as the reason I come to HN is a typically higher... quality, but it's a bit noisy, I'm okay if that only filters.


> But why are people surprised then that in most software the process is not as thorough as in aerospace or elsewhere with physical things.

Because the traditional engineers do this in a lot of stuff and not just high risk domains. You can probably find somewhere an FEA analysis on your TV's legs and where the high stress points are and where it'll break.

> They have promises of reliability and big financial penalties if they were to fail on that reliability.

Ehhhhh really? Or if everyone does a shit job do we just take it? Most people aren't tech literate. Hell, most apps aren't built by tech literate people. I have a laundry app I have to use and the rooms aren't in any logical order, just randomly placed. Are you tech literate if you don't know a sort function exists? Or if you don't know people like to read things in a sorted order? If you can't google the answer? There's lots of systems that have really shit designs in them and as discussed elsewhere in the thread I don't think companies are having big financial consequences for their lightbulbs not working when the wifi goes down because the people purchasing them aren't aware that such a insane thing would happen. If you're not very tech literate you wouldn't even think that's a possible outcome. So don't just rely on markets because econ 101 isn't enough.


> Failing closed is typical of safes

Unless it's a very large safe where people can walk inside, like a bank vault. The fire department gets very grumpy with you if they fail closed and can trap people inside.

So if you want to force open a bank vault, stage a purported terrorist attack, and the FBI will cut power to the building as standard operating procedure. Voila, vault opens.


Sure, but this is literally the essence of failure analysis. Because you're demonstrating how nuance is essential to the process and how this means that there are no universal concepts. That simplicity and generalizability are often in contention. I'm not at why people don't understand that nuance is important because if it wasn't we wouldn't need experts. It's also weird to see people thinking nuance is required in their domain (explicitly or implicitly by means of assuming everyone else is an idiot for not understanding what they obtained through years of education. Yes I see the irony) but don't think it's required for other areas. Look at any online discussion here involving climate, nuclear, rockets, aerospace, and many other non programming stuff. Your example might also demonstrate this because the failure analysis is considerate of this by having a combination of fail open and fail closed gates in conjunction with the FBI not going to cut power to the bank until they arrive on scene which entirely defeats any terrorist or robber strategy because they the FBI are now the safe door and they're hard to pick open.


I seem to remember a certain Christmas movie starring Bruce Willis where this was a plot point.


The concept of "Safety Critical" is something that I wish more software developers and engineers would have exposure to


100%. But I really hope that they can learn this concept and understand that it is generalizable and need but require a system that is critical nor dangerous. That the same ideas are essential for simply designing good user experiences. It's really frustrating that this isn't understood well in ML where people end up talking past one another and therefore the extreme ends of the spectrum end up dominating the conversation with equally idiotic ideas. I can't remember the last time I saw someone discuss a confusion matrix, especially when discussing products. But how's that not like one of the most important aspects of your product (I mean internally in teams developing products, not communication to the public. Or discussions in papers)


Beyond confusion matricies, with ML classification, there should also be deep discussion and consideration of the actual costs (consequences) of false positives, negatives to the end users and operators.


If you want to know the state of things, I was once told that my ethics section (which is requested by the conference) was unnecessary and overly verbose. This was an image generation paper and the section was only like a 4-5 sentence paragraph. I've shifted to throwing them into my appendix because I find readers look at the appendix but reviewers don't and I care more about communicating to the readers.


> I guess we still operate like software can't kill you.

Software is killing people since decades: https://en.wikipedia.org/wiki/Therac-25


> EVERYTHING MUST FAIL NORMAL This is a solid principle.

Another rule I include with this is that the "Smart Home" should still be able to operate and be controlled like a non "Smart Home" by a regular person. (e.g. light switches, thermostat, door locks)


Yep, I remember staying over at a friends's apartment that had just installed hue lightbulbs everywhere, and then put tape over their normal light switches. As he's putting the sheets on the pull-out couch, he says "if you get up in the middle of the night, you'll need this app to turn on the light..."


Such a horrible design.

I've got dumb bulbs and smart dimmers/switches so everything can be smart, and also can be used by normal people.


Thats not Hue’s fault though, your friend should be better at planning and implementing their Hue implementation. Hue bulbs default to “normal on” when power is restored, and also work with sensors, dimmers, and switches.


No, it's fundamentally impossible. He wants to be able to control his lights from his phone, and that's impossible if the lights have no power. The only way for his lights to have power at all times is for the light switch to be on, but I don't want that when I'm sleeping. Therefore, the switch must be on but the light off, so to turn the light on, I need an app.


https://www.philips-hue.com/en-us/p/hue-dimmer-switch--lates...

He just wanted to save $28. I have these in my house. No app required.


Sorry, you are incorrect. I have a house full of Hue devices, for many years now. I also have many houseguests. Not once did I ask any of them (or my wife, for that matter) to use an app to do anything in my home. To turn the light on or off, everyone here either uses Hue switches, or just walk into the space, if it is a common space, where the motion sensors takes care of things.


I ask my guests to open a PR or github discussion if they want the smart door to toilet open. The config is right now hardcoded and it has worked very well to keep guests away from my home to give me focus time.


Whenever I install or (re)configure something involving "Smart Home" I think carefully about what will be returned when family/partner does a `git blame` ...


No neutral smart switches exist. The nice ones use a capacitor behind the light fixture to trickle enough current for the switch.

There's actually no particular reason you couldn't do it the other way round I suspect but I've not heard of anyone implementing it.


Yes, this was the natural consequence of my rule. I have to travel on business from time to time and didn’t want a tech support call in the middle of the night when I’m halfway around the world because my family couldn’t turn the lights on :-)


> EVERYTHING MUST FAIL NORMAL

This is the Mitch Hedberg Rule.

"An escalator can never break: it can only become stairs. You should never see an Escalator Temporarily Out Of Order sign, just Escalator Temporarily Stairs. Sorry for the convenience."


Aside: The reason that escalators cannot be stairs in much of the US, despite looking like stairs, is actually a human ergonomics and code violation problem: inconsistent rise/run and pitch in stairs causes people to trip, then cascade down. Bad times.


Yeah, generally escalators are pretty bad stairs. Steps are too high and narrow for their height, which can be dangerous on the way down and quite tiring on the way up! In most places that have both, stairs tend to have about twice as many steps as the equivalent escalator.


I hate that quote, because it's dangerously false. Even if the power is off, that doesn't mean it's safe to stand on it.

One example would be if the gearing breaks so that the segments move freely:

Congratulations, you and the crowd--given false confidence by a comedian's joke--just piled onto the top of a downhill treadmill... It will now accelerate until you crash into a smothering crunchy heap at the bottom.


> EVERYTHING MUST FAIL NORMAL

Yes, this, you get it.

I can't believe how many people I talk to are happy to install permanent things in their home that have a strong dependency on (a) the internet being up, (b) the company still existing, (c) the app still being supported.

Things installed in a house have a lifetime measured in decades. IoT companies and apps have lifetimes measured in months. This is not compatible.


> EVERYTHING MUST FAIL NORMAL. By this I mean that if the internet went out or a vendor went out of business or I rage quit a vendor, then the device in question had to act like it was a normal non-smart device.

I do not need smart home, but if you do, then I think that you are right. This is a good idea and is the most important idea.


I so badly want an old school flippy light switch that physically flips when toggled by the smart home.

IMO that would be the first smart home product strictly superior to its analog counterpart.


A pressable button that toggles the light state achieves the same thing without the need for a motor.


But they don't physically show their state, don't persist across power outages, and are much less satisfying to operate.


I usually look at the lights instead of the switch to determine if the lights are on.

I haven't experienced many outages recently, but I'm fine with lights off until I turn them back on as a default. Its also possible to just have the lights revert back to their previous state as an automation in HA, although it seems like a waste of time to program instead of turning lights back on as you need them.


Yeah this. Shelly relays can work that way.


fingerbot. yes, a real thing


> after bedtime, the lights still come on when someone goes in the bathroom, but very dim, etc.

I’d be curious to hear more about this. Most of the “smart” light solutions I’ve tried struggle to go directly to a specific lighting level without some bright flash as they activate.

What brand switches/lights are you using to do this with?


(Not the parent poster) I have Phillips Hue lights and they can turn onto a dim setting without a bright flash. They also can fail-normal if you change the default settings.

They've added a popup to the app recently saying that soon Hue will require an account to work though, so I don't recommend them anymore. I've been meaning to move them to a separate offline network before they force update them to require an account. I originally purchased them because of how well they functioned locally without needing any Phillips cloud stuff. But sometimes I still use the official app instead of my homebrew setup.

If you own your own home, smart switches with dumb dimming capable lights are the way to go IMO. I'm still renting though.


Most commercial lighting controls allow you to preset the initial dimming level. Acuity, Lutron, Leviton, Wattstopper, Hubbell, etc.

I’d stay away from consumer grade stuff, it’s pretty much all garbage. Commercial controls will come with a 5 year warranty.

Most commercial lighting controls have 0-10v dimming, but you can get forward or reverse phase line voltage dimmers to use with consumer grade LED lamps (bulbs).


I’ve had wemo switches on a nighttime schedule. Dim at night, bright during the day, no flashing.


I have a similar setup, and use a mix of Leviton, Inovelli and Lutron switches.

No flashes from any of them.


None of my Candeo dimmers flash.


What's your favored smart switch brand?

I went Leviton as they looked the most like low-key, plain-old On/Off lightswitches. But the reliability has been terrible - constantly dropping off the network or requiring a reset (at least the early models I have). It's disappointing considering I thought it was a well-established brand; after dealing with some of their tech support / engineers I'm of the solid opinion they should stick to non-smart appliances.


The feature I want doesn't seem to exist. I'd like what looks like a conventional switch, but with a solenoid that flips it up and down to reflect the status of the light.

It'd be even cooler in two-ways, where using the switch on the one side of the room causes the other switch to match. Not sure why this isn't available either.


I grew up with the small toggle mercury switches from the 70s. I was able to adapt to the kind of z-wave smart switch that has a similar shape, fitting the same face plate in a bank of three switches where I only swapped out one for a smart switch.

It's kind of like a joy stick, so in a neutral center position and you flick it momentarily up or down from center to ask for on or off. You have to learn not to lift and hold for too long, because that is how to get it into a very primitive reconfiguration mode. As I recall, you can reconfigure the LED and maybe its behavior on power restoration.

I configured mine so the LED is on when the light circuit is on, to show me the status of an exterior light on the other side of an opaque door. But, I think the default is the inverse so it acts a bit like a night light to locate the switch in the dark. Of course, it's a hideous blue as is the modern fashion.

I linked it to an existing alarm system to set some rules like turning on and off around dusk and dawn periods and turning on in response to camera-based motion/people.


The next best thing I've seen are the smart switches that are just two buttons, up and down for on and off. I just want to be able to hit up for on, the actual switch state is less of a concern. That's been my annoyance with two-ways.

I've ordered some Inovelli switches which do this and have an RGB LED if I need a state status indicator.


Grew up when they were always switches... not sure I can change. I can't feel around in the dark for two buttons, and know what the hell they are.


A British company called Den had a product that was exactly this.

Sadly it was very expensive and also locked down to their private cloud. The company went bust and took everyone's 'smart' homes with them.


I went with Lutron Caseta. It is way more reliable than z-wave when you have a large number of devices, but they limit each hub to 75 devices which kinda sux.

As a side note Lutron did a pretty good job with led brightness which is a big deal at night with lots of devices.


I was in the same boat as a Leviton HomeKit switch early adopter. Between poor firmware and a critical Ubiquity UniFi AP multicast bug, it was frustrating. Eventually both were updated and the switches have been solid since.


I started with Lutron Caseta switches specifically for the fail normal feature. They even had wireless remotes for their switches that require no software or cloud at all.


Do you have a list of devices you use? It would be very helpful, since HomeAssistant has hundreds of integrations, and it's a lot of work to track down devices that -

- FAIL NORMAL - WORK OFFLINE - YOU CAN STILL BUY

I really want my smart home devices to meet these criteria, but at the same time I have a bunch of other stuff I do.... so it would be awesome to have a starting point from people who have done it already.

Mozilla used to have such a database, but seems to have forgotten it.


"Work offline" and "You can still buy" are satisfied by looking for Zigbee, Zwave, or Thread/Matter based devices. These don't connect to the internet by design and require an inexpensive dongle to form a mesh network. In very few cases WiFi devices with local HTTP API or MQTT are perfectly fine as well, a good criteria to look at is whether Tasmota or ESPhome (alt firmware) list support for them.

"Fail normal" would be trickier, I don't think there's one size fits all. For lights, prefer switch relays over smart bulbs. Look out for customizable "default" state when power comes back on.


I recently bought some Philips wiz switches. I could have bought cheaper for literally 1/4 cost but they are internet first with zero local support or like tuya which is offline but still needs internet to work.

Most of the stuff either looks to be subsidized to keep online access which will earn data or offline capability is charged more because they dont get data


Interestingly, you can control wiz lights with OpenRGB. It doesn't really surprise me lol. https://www.reddit.com/r/OpenRGB/comments/jptv2a/philips_wiz...

There's also a home assistant thing for them.


yeah. i plan to use it exclusively for home assistant completely off grid


Can you explain the steps you have to take if you want to move through your house without the lights?

Is the switch always "on" and the sensor then turns on the light and you just have to turn the switch "off"?

And then if the switch is turned "off" will you need to first turn it "on" again in order to make the automation work properly again?


I bought Eve brand motion/occupancy/illuminance sensors for high traffic areas. I run them in Matter mode so everything is local and vendor neutral. I use an Apple TV as a controller and I use HomeKit automation to create rules to turn lights on and off.

By using occupancy and time of day conditions I can have multiple rules to turn on lights to different brightnesses at different times of day. I turn on sets of lights vs individual lights so it’s not the absolute most efficient in terms of power but on the other hand having lights turn off automatically is a good saver when you have kids.

I use Lutron Caseta wall dimmers and dimmable LEDs everywhere so they already have a nice fade-off effect. I once tried to code a fade-on effect but it turns out that instant on is preferable so I gave up on that (it was unreliable anyway).

For low traffic areas like closets I use Lutron Caseta motion sensors; they work great and have very little configuration.

One note of advice - there is a lot of grey market Lutron stuff on Amazon; you can get burned by clones or up-labeled stuff that doesn’t function exactly as advertised. I would stick to buying at a home store or buying from the Lutron store on Amazon.


Smart switches are always on to the switch, which then switches the light on/off either via buttons or the network.

So it doesn't matter if you manually turn them on/off - they remain network accessible.

This is why they're strictly nicer to use than smart bulbs. Even if you want smart bulbs, you'll probably want smart switches too, but if you have smart switches you only really get a benefit from smart bulbs if you want to control the colour of the light.


> you only really get a benefit from smart bulbs if you want to control the colour of the light

You can control brightness of a smart bulb. Not all dumb bulbs are dimmer-friendly. That said, you can always replace those with dimmable dumb ones.


That's true, I guess I should have expressed that slightly differently - my point was that the only capability you can't get from "just" a smart switch irrespective of your choice of bulbs is changing colour.

But also, smart bulbs with a dumb dimmer is the worst combination, so if upgrading somewhere, if it has dimmer switches that's an extra reason to replace the switch too, irrespective of whether you also replace the bulbs...


All the switches I've bought are different from normal ones. They are always in a central position and you push on the top for on and bottom for off. Some are also just a single button and pressing it toggles the light.


i wouldn't be so against 'smart lights'. There must be a brand that could still satisfy your needs. One advantage of 'smart lights' is the option to dim the light closer to the night when you prepare to sleep, you kinda adapt the light to be weaker for your body to be prepared for sleep in 1-2hrs


> For this reasons I have no smart light bulbs in my house.

hmm... wonder why bulbs can't fail normal.

maybe they should make bulbs with a deadman switch. If they don't get a "ping" from a controller in a certain amount of time, they revert to normal light bulbs?

or yeah... smart switches.


In my experience, unless you have a strong need for something like dynamic color temperature control over your light bulbs/fixtures, it's more practical and economical over time to use a "smart" light switch, rather than a "smart" light bulb.

The smart bulbs may have appeal for people that are unable or not allowed to modify their light switches.

By keeping the "smarts" at the switch level, you have a lot more choice in what bulbs you use (e.g. along color temperature, color rendition, light output, power consumption/efficiency, etc) versus the smart bulb.

The Lutron Caseta series of lighting products are basically the gold standard for being "fail normal" functional without network connectivity to the system control bridge, and the system also uses different RF frequencies than 2.4GHz Wifi based "smart" switches, so it doesn't rely on or potentially create congestion issues on your home Wifi network(s).


We use the hue lights as night lights, and have them turn red, then off on a schedule. I have to turn them on and off again to reset them to white but my 6 year old knows how to do it, so that feels simple enough to me.


We have a fan/light in our bedroom that has a single switch and two chain pulls. We use smart bulbs for that light (I think it was $30 for two, so that the fan can function independently. Also avoids the need to install a custom light switch. I suppose if the bulbs burn out faster than other LED bulbs, it might be worth it to do something else. But if the bulbs last a decent amount of time, and assuming prices keep going down, I imagine we'll get smart bulbs again to replace them.


The problem is that a light switch multiplexes/conflates power and control. The signal that the bulb is supposed to turn off is that it doesn't have power anymore. Smart light bulbs need power even if the signal from the switch is that they're supposed to be off.


> I avoided things [..] where you had to cycle power or disconnect the device to reset it

I totally agree with your principle about fail normal, but how is this a violation to that?


I’m not who you’re replying to, but in my case the hub being unavailable should mean everything can still work as normal. For a lot of smart bulbs, a busted hub means you can only control them by switching them off then back on since you were relying on the hub to control them.

Some switches allow for direct control of zigbee or zwave smart bulbs so even if the hub is non functional, a press of the switch will still toggle or even dim them.


Do your luminance sensors trigger lights to go on automatically, or just in conjunction with motion? Also, how do you set up HomeKit rules to make this happen?


Tuya devices are available in Zigbee for about $5, and the Zigbee versions have no way to phone home.

The nice thing is you can:

1) Buy eight random Tuya Zigbee outlets ($40)

2) Three PIR presence sensors ($10)

3) Fancy Sonoff Zigbee USB device ($20)

4) Three RGB-CCCW lightbulbs ($15)

5) Three or four temperature/humidity monitors ($15)

And you're at the $100 mark with a basic smart home without breaking the bank, with a good path to upgrade if you like it.

The main annoyance are shipping times from China.


Only thing I'd add is to try to get devices that can be flashed with esphome[0] for future-proofing. There is an onramp[1] for devices that can be flashed with Tasmota.

Also be very wary about devices that are not (verifiably) UL listed / CE rated, especially if the device is to be plugged into mains and tucked behind some furniture (or worse yet, installed into the wall). [According to internet folk lore] some of these can be grounds for being denied insurance coverage in the event of a fire or other damage [citation needed]. Personally, I don't mess around with random-china-devices and mains outside of the workbench.

[0]: https://esphome.io/index.html

[1]: https://devices.esphome.io/guides/tuya-convert/


> Some of these can be grounds for being denied insurance coverage

Is there a reason you think insurance wouldn’t pay out because you used a non-listed device? This is something I frequently see people asserting without any basis in reality, and I’m curious where it comes from. People do stupid things that insurance covers all the time. I do agree that you should only use listed devices whenever possible.


Best include the whole quote: >Some of these can be grounds for being denied insurance coverage in the event of a fire or other damage.

Honestly, I don't know and I haven't personally heard of anyone getting denied claims because of stupid things related to DIY repairs/modifications. I think this repeated wisdom comes from things that we read in HOA and rental agreements about DIY modifications.

I'll edit my comment with a [citation needed]. Thank you for the question :)

It does make me wonder: what if a fire caused by a DIY installation of a ebay gadget resulted in loss of life? If the aggrieved parties went to court, who would be held liable?

Here is another discussion: https://old.reddit.com/r/HomeImprovement/comments/7vwe23/doe...


I am less than impressed with Tuya. They want to be an ecosystem, just like HomeKit or SmartThings, so you either have to go all in on them or use some bridging solution. And they charge (a lot) for their cloud development platform (used to have a free tier), and they change apps from time to time requiring new accounts and reconfiguration, etc. Not a fan.


I really wish Tuya would just sell products and provide a way to flash them, because under the hood the platform is quite sensible: serial controllers for core functions with a wifi daughter board.

So if you can chip swap them, and ESP can drop right in with ESPHome. If they'd just let us flash custom firmware without needing an exploit then you'd be able to run ESPhome without any fuss on the raw chips (the Bekan firmware is included in ESPhome now - it's great).

They're sitting on a pile of easy "family and friends" recommendations if they'd just drop the ecosystem aspiration.


That's a really broad-reaching statement, much more so than might seem to a casual reader.

In an ideal case, each of these devices would:

1) Be open-source

2) Be programmable in a stack of kid-friendly languages, with a stack including Blockly, CircuitPython/JavaScript, and full-fledged kernel hacking

3) Clean, clear documentation and web interfaces for doing this

4) Integration with a secure non-wifi protocol like Zigbee

5) Have a standard, maintained back-end, so things like security fixes can hit all devices, no matter the sensors

Kids can (and some would) learn to do things much as they do with Scratch or Hour-of-Code projects, and it'd just be a different dynamic. There is a mint to be made there if a platform like Tuya could pivot here.

It's a decent chunk of work, but far from astronomical.

Step 2 would be to do something similar for HomeAssistant, or for a similar platform, and there ought to be devices which ship with that. The Zigbee coordinator should be programmable, configurable, and kid-friendly to do so. It should also automatically install security updates (ideally, via Ubuntu, rather than the vendor; Ubuntu is looking to make money; a $5-per-device plan for long-term remote maintenance would do it a lot better than giving me warnings about my machine being insecure, and if I won't pretty-please opt into having them track me with their premium platform)


If they are Zigbee, then it doesn't matter what they want to be?

Just get a Zigbee dongle for a Pi and pair them if you want a hub.

Admittedly I do not use Tuya, I'm only going off the parent comment about it being Zigbee but Zigbees ad-hoc mesh hasn't failed me.


This is really helpful to know - Zigbee for a while was a premium compared to other protocols and it's nice to discover that has drastically changed.


It's still often double the price.

* Wifi spy-on-you-compromise-your-network version: $2

* Zigbee version: $4.

I can spare the extra two bucks, though.


Or buy the wifi one and flash with esphome or similar.


>Building my offline smart home took the better part of a weekend

Yeah, right.

Nobody in their right mind should be making their home "smart" for the convenience or efficiency. It's a hobby. A frustrating, inconvenient, burdensome, potentially expensive, challenging, neverending hobby.

It taught me to love light switches.


It's actually easier now then ever before. Buy smart bulbs for cheap off of temu. They all integrate with alexa or google home automagically.

I now never touch a light switch.

"Computer dim lights to 40%." I never bother touching a light switch. This guys set up is too complicated. The easy way to do it nowadays is to buy smart devices that integrate with the google or alexa echo system and you just talk to alexa or google to get it to do what you want.


Alexa and Google Home are literally microphones with connections into the cloud


I'm always amazed that everyone seems okay with this, and will even say so when pressed on it. But those same people will get a look in their eyes as if they're going to shit their pants, if someone else picks up their unlocked iPhone and starts scrolling.


I'm amazed that people are afraid of a home assistant in their living room, yet carry a cloud connected microphone+camera around with them all the time (with the added feature of sending GPS tracking data back to the manufacturer, carrier, and apps that you granted location permission to, like a weather app).

If you trust that your phone isn't listening when it's not supposed to, why don't you trust the home assistant (even if it's made by the same manufacturer)?


I 100% agree with you on this. And I don't carry a traditional smartphone for exactly the reasons you mention.


> If you trust that your phone isn't listening when it's not supposed to, why don't you trust the home assistant

Do home assistants claim they are not listening when they are not supposed to?


It's because they have sexts on their phone. A recorder is not as big of a deal. Especially if I'm fully aware that the entity listening to the recording is listening to billions of people and couldn't care less about my one voice.


Even with the microphone switch turned off?


With the microphone switch turned off they don't send audio to the cloud but they're also no longer smart devices. The only words they can detect using local processing are their limited set of wake-words. But using Alexa or Google Home is literally the opposite of an offline smart home system if that's your goal.

Even if you create tasks that can function through a button press or something they still rely on the cloud.

Voice control locally is really hard though. Or at least it used to be. I thick OpenAI Whisper is available for local/offline usage if you build your own wrapper around it? I tried adding (local open-source) voice to my home system about 8 years ago, and again 3 or 4 years ago and it was very rough. It might finally be feasible with the current state of local AI.

For an example, my home robot was named "Marvin" (from H2G2) and the local detection was so poor, this is my list of "matching" wake words.

['Marvin', 'arvin', 'artin', 'marlin', 'marten', 'margaret', 'why are']


They are still smart to the extent you can schedule things to play on it at certain time from another device.

I didn't really value voice control until I had young kids.


> It's actually easier now then ever before.

Agreed, but Alexa fails hard if you have no internet, and my understanding is that Google Home also becomes mostly inoperable.

I've tried Home Assistant but could never get it to work reliably. HomeKit is great and works offline if you have a home hub (an Apple TV, a HomePod, or an iPad).


> Agreed, but Alexa fails hard if you have no internet

It also fails hard with Internet. I’m sick of being on my living room asking Alexa to turn on the light just to get the bedroom light turned on (each room has its own Alexa/Light pair, so there should be no confusion).


If they're assigned to the same room as the lights there shouldn't be, but check in the (awful) app which of your Alexa devices picked up your voice.

Walls reflect sound, and things like curtains muffle it, and you might be surprised which device picks up your voice best in different positions.

I had to adjust placement etc. to prevent the Alexa in my son's room from regularly picking up my commands from my room better than the Alexa in my room when the doors are open.


Yes, I had interference at one moment and moved the devices to the farthest points on each room, so that doesn't happen now, but the problem I mentioned before (turning on the wrong light) still happens.

I forgot to say that the problem mostly occurs when I ask Alexa to set the (unspecified, but hopefully the one belonging to the room the corresponding Echo is) light's brightness to X. Sometimes, in that case, it turns on the light from the other room.

I didn't check the audio transcript when this happens though, that's a good one, thanks.


That's an odd one. Not seen that. Lots of aggravating little quirks, though. Annoyingly so many of them would be trivially addressable by users if we just had a way of adding simple rules.

E.g. "this request on this device refers to X", or more generally "when you hear X it probably means Y".

As an alternative, I've spent more time than I should passive-aggressively repeating the same instruction and then flagging every single failure in the app. I have no idea if it makes any difference, or if the things I've done that with that have improved were due to general improvements to their voice recognition, but it gives me some limited satisfaction (I now wonder what the financial tradeoff is of fixing the reported issues vs. any benefit potentially gained by just having the reporting function but sending it straight to the bin to make people feel like they're being heard...)

One of my goals for this year is to experiment with HomeAssistant or similar to at least start to replace or supplement my Alexas.


hah, I've been doing the same, purposefully calling commands I know will fail so I can flag them, even adding a swear word or two so it also gets flagged on their side and, perhaps, someone can then take action. But in the end, the smarter choice (despite being talking about smart devices), was to change my commands to accommodate Alexa’s quirks.

I’ve installed home assistant recently too for the flexibility, but until I get a zigbee stick I still depend on Alexa as the interface with the lights.


Try google assistant. Google assistant actually has a little bit of an LLM in it, so it's a bit smarter.


It's still pretty dumb, though. For example, it'll often misunderstand "turn all the lights off" as turn the lights off or worse, turn the lights on (even though they're already on).


Alexa has been most reliable when a command does not require a third-party cloud service.

For Amazon Basics WiFi smart plugs, the device type can be configured as "Light" instead of "Plug".

Echo 4 works as a Zigbee hub, avoiding dependency on a third-party cloud service.


Offline by default is great. It lets me decide which devices are remote controllable (thermostat) and use a VPN to access my home network for everything else.

I’ve got a mix of Lutron and Phillips Hue devices with a Honeywell Thermostat tied together with Home Assistant on a raspberry pi. (Lutron needs a hub. The hue devices connect directly to the pi.)

It’s been absolutely rock solid. I’m using Lutron Pico remotes as switches. I haven’t had to replace a battery in over a year after installing everything. Hue motion sensors just work.

Lutron switches are absolutely critical to my setup. They work (and paired remotes work!) when the network is down, which makes automation a progressive enhancement. Same with the thermostat, it’s offline first. Wifi connectivity is optional.

I tried living with smart bulbs but they get really expensive if you’re doing a whole house. And rebooting light switches is absolute insanity. I do not want automation bad enough to make my light switches less reliable to get it.


This summer I replaced a couple switches with Lutron and they’ve been very solid, in six months there’s been only twice where an automation didn’t set a state correctly and I don’t even know if I can blame Lutron.


Offline first is the only way to go.

The cloud is always someone else's computer, and any free service will likely end before your hardware needs changing.

Lutron switches are great too, I have them. I am not a super fan that you have to seem to have to buy their pro hub to get telnet access to the lutron switches and also not use the cloud.


I keep trying to talk myself out of wanting to do this. I live in a very small studio-style home with a total of four lightbulbs in it. It takes fewer than 20 steps to get from any one corner of the house to any other.

But every time I read an article like this, I can't help but think how cool I would feel if my house could tell I was coming and turned my lights on and my heat up, or dimmed and then turned everything off once I got in bed.


We've got an offline setup, using HA, HomeKit and zwave. Some of the best features for us:

- ability to turn on house heat when we're headed home from a trip, or turn on the AC for the pets if there's a heat wave when we are traveling.

- ability to turn on the tea kettle when driving back home from an errand. Needs prior setup of course, and a switched outlet that can handle high current.

- ability to align porch light schedules with sunset/sunrise. I never have to think about it.

The "don't want to get up, i'll just do it from my phone" thing is nice, though, especially if you are stuck under a cat.


I don’t see the added value of much of the smart home things. I’m used to turning the lights on with a light switch and never thought “this is too much effort, I wish there was a way to not have to press this switch”. The only smart thing I have in my house is one of those light switches with a built in timer, for the lights outside the house, because I want to make sure I don’t forget to turn them off at night, which could disturb my neighbours. I have quite a few switches for all the other lights in the house, and I feel that turning the lights off before bed is like a ritual that puts me (and the family) in sleep mode.


It's worth looking into.

I also had only a few switches and the trade off was I could now dim them, at different times and different ways.

Tied it in with a Logitech Harmony Hub at the time for instant movie mode. I got a lot of use out of that little hub to not have to go full home automation.

Home Assistant is great though, it's much easier now, it will know you're coming via app and turn off everything. You can do the good night thing too.


Motorised blinds has been the game changer for me. I never want to adjust blinds, but natural light is nice.

Now my blinds automatically go up at 8.30, and close at sundown and I don't have to think about it - but my rooms are pleasantly exactly how o want them at all times.


So you mind me asking how you set that up, or what you bought? Have they been reliable?


I mean in my case I wouldn't broadly recommend my approach: I bought these https://www.zemismart.com/products/zm25tq-2-25 and then chip-swapped them with ESP8266s. That's definitely not a casual thing but...

What I'm most happy about is how I got them hardwired - I notched my cornice and slid an archetrave (narrow) light switch up into the cornice on a mounting block, caulked around it, and then ran a thin bit of surface conduit down to another slim junction box next to the blind. You can "see" that the power is there, but it blends nicely and means the blinds are powered off my lighting circuit - no batteries to worry about, and a shutoff in the room if I ever change out the motors.

Motor-wise I'm happy so far - the limits work, and it's been set and forget with Home Assistant driving them through ESPHome. Unfortunately the motor is a Realtak-based chip, not Beken, so no Tuya-cloudcutter exploit exists to get ESPHome on their wirelessly. If I was doing it again from scratch I'd try and find something easier to de-cloud. As it is since I know the motors fit and know how to open them up, we've got a bunch more we're planning to do since we have some really big windows we'd need multiple blinds to cover, and we just never considered it practical till we did this.

EDIT: Basically it's a home automation upgrade I've been incredibly happy with the outcome for, but man if Tuya would let go of the lock-in aspirations then it would become dead-easy to recommend to people.


I've also been looking at hard wired blind motors I can control with an ESP8266.

Did you write/record anything online about the chip swapping, or can you recommend any resources?

Did you end up deciding on something easier to decloud for your future ones?

Thanks!


It's very worth motorized blinds especially if you have a lot of windows.

Every setting you do manually throughout a day or season can be automated.

Tie it in with movie mode to close everything, etc.

Luvolite and their rebranded partners is a decent bang for the buck: https://www.louvolite.com/

I hear Ikea is worth looking at too.


One of the things I'm actually worried about is that there are several things in my house that I don't think could be automated, at least not within the parameters available to me as a renter.

I do have two accordion blinds I raise and lower daily, but only two. One wall of my house is a giant sliding glass door with floor-length curtains, though, which are as manual as it gets. They don't even have a stick to guide them. I just grab an edge and pull. I don't think my landlord would appreciate it if I mount a whole different track, but I guess it might be different if he doesn't find out.

My heater is my biggest concern, though. It's a propane-fed floor unit (house is very small, as I mentioned). It's controlled by walking over and pushing buttons on the top of it. It has no remote. The thermostat is part of the unit itself. Turning power to the unit itself off and on would kill the pilot light, never mind that in the winter I can't have it go off. I just want it to go from 65 while I'm home down to 55 while I'm not. It only takes a couple minutes to warm the house (again, house is quite small), but the pipes would freeze if I let it get any colder.

And that's where I come back to, "How inconvenient is it, really, to open my curtains in the morning and turn the temp down when I walk out the door?" The heater is even adjacent to the door.


It sounds like your setup works for you.

In other cases a room can't keep it's temperature stable and might need the blinds open or closed to help regulate the temperature.


Sometimes it's not the time saved, but a change to your mindset, that you don't need to even think of walking across the room to reach the switch before sleep. Such change accumulates and at a point I felt the difference, hopefully that works for you as well.


I actually like the act and the ritual of turning all the lights off before sleep. It marks the end of the day and the start of sleepy time.


This line of reasoning could be applied to the switch from candles to electric switches. Putting out the candles at night puts you into sleep mode, why would you want bright lights after the sun is down. At the time the fire risk was similar. Not everyone wanted to electrify their homes.

I still use switches in some places in my apartment, but haven't had a need to touch my bathroom and kitchen light switches in a year. Once you start getting used to your automations, it really does feel like a level up to your home.


A good one to keep in mind: https://xkcd.com/1205/ ("Is It Worth The Time")

Though of course the fun/cool factor is a separate thing (:


The tooltip on that comic captures how i feel about nickel-and-diming my own attention. But maybe that just means I think doing HA stuff is fun.


Next thing you know, you're learning how to flash ESP firmware and how Zigbee protocols work.

The cool factor is maybe 25% of it for me. It's mainly an obsessive hobby.


It's such a fun hobby, and easy to jump into with just knowledge of nodejs or web-dev based Python. It was my first serious foray into working with any kind of hardware at all.

And you're entirely right it's an unstoppable gateway to learning how to code arduino's and then esp32's, and then eventually hardware projects that aren't even smart home related.


I'm not a fan of Smart Homes, but I can appreciate this take on it. Making it all work is the cool part - everything else is just a side effect.


Automation isn't as smooth as it sounds but it's nice to be able to control things from your phone.


A dozen years ago, I designed and architected a "smart lock", back when that was a thing. Anyway... one of the most important features that we didn't advertise was the ability to use it without registering with the Internet service. It could be used entirely in offline mode. In fact, in most cases, you could use this device without it ever connecting to the Internet.

I think that consumers should have a choice, and they should only need to connect to additional services or a subscription model if there are useful reasons to do so. Most consumers simply do not need their "smart lock" to phone home. If you wanted to do more interesting things, like issue temporary keys to run an Airbnb, then sure, it makes financial sense to pay a small subscription fee. But, most folks just want a little convenience.

Of course, it helps that I'm generally distrusting of businesses and of how behaviors will change after my departure. If you want your products to be ethical, the ethics must be built in from the beginning.


I work at a place that does smart locks (for businesses though) and my first question to them during the interview was what happens when the internet is out. Thankfully they thought of that and it can even be taken offline permanently after the first time setup.

What I heard from other people in the industry is that when Facebook had that huge multi-day outage, it was partly because their smart locks couldn't open externally without an internet connection, and it was relying on Facebook's DNS which was the source of the huge outage.


I had long and contentious arguments about this. It really opened my eyes to how little innovators really think about these problems. From the beginning, I was concerned about ensuring that our product fails safe, that we had good ESD protection, that our encryption protocols were industry standard, and that we went through third party security auditing.

As I liked to say, I wanted to build a product that I'd feel confident about giving to my grandmother. She should be able to use it even if she lacks familiarity with current technology, and I should feel that she's safer for having it.


I have similar feelings, except I joined after those arguments happened. After working in ad-tech I wanted to move into a job where I didn't feel guilty about what I was building. It wasn't even particularly invasive ad-tech, but still F&$# ads.

I don't want to name my company mainly so my coworkers don't learn my HN account, but basically every product feature involves a consultation with a very well known white hat hacker.


The Schlage lock I bought in 2015 works like that, it just uses z-wave iirc. I originally paired it with a wink hub until they went to crap, then moved it over to a hubitat elevation hub. Yeeah... should've gone with a raspberry pi and a z-wave dongle... well whatever lol.

The lock still works fantastically well. I admit the new ones with homekit support are way slicker because you can set it up so it unlocks if you hold a paired apple watch up to it. That's slick dude. Hella slick!


Building an offline smart home using Home Assistant is signing yourself to an unpaid SRE and nobody at home appreciate your work, it maybe a fun activity but don't expect too much out of it.

I did about 20% of the article's setup which took about a weekend of time, then randomly after Home Assistant update certain things start not functioning, i.e. I bought some $2 Xiaomi BLE temperature sensors and the key I setup just somehow stopped working, then its another half day wasted on trouble shooting them.

I regret my time wasted on them, especially given Home Assistant's data retention is not as great as I was expecting, i.e. default storage is only 14 days for temperature sensor and that sqlite DB is huge with this limited data.


I thought the limited history was weird too and had bumped up my retention to 1000 days or something. Fortunately I only got a couple hundred days into that before they released just recently an update that includes trends in the history graphs. Apparently that data was there all along, just not being shown. It is not full data but enough to fill in the graph.

Just thought I would mention it.


I've tried some advanced lighting at home, when I refurbished apartments in 2011-2018, before smart home became commodity, and quickly understood that I don't need any kind of these "advancements", because it adds little value but it fails a lot more often and needs an order of magnitude more maintenance.

Regarding lights, I understood any spot lights are nearly impossible to plan ahead correctly, and are used rarely. what is really needed is multiway switch for the ceiling light, and 2 levels (1 dim bulb for dim light, more bulbs for bright). The rest -- local spotlights, dimmers, adjustable hue -- add very little value, but need maintenance and are hard to repair (try finding a rotating knob for a dimmer). Use table-top lamp or one with a clamp to save space, with yellowish light for local lighting, same for bed light. That's it.

Using smartphone may have seemed ok when they were new in 2010. Now I see they're pain to use, apps live their own life, you have many distractions, and it often takes equal amount of time to walk to the switch to check/turn off, as to browse to it in the phone. Same if you have kids -- you get distracted out of the phone, but phone won't save you time, it's much harder to use smartphone with kids nearby.


I went with the Apple HomeKit compatible camp, because it does indeed all work locally across your local LAN without a network connection - its not foolproof, but it mostly just works, and works well at that - and more importantly works when the internet is out.

The biggest thing with Apple is they get that houses have more than one person living in them, and provided everyone has an Apple device, it all just works.


Word to the wise: you have to have a HomePod or Apple TV to do anything other than control devices when you are home, with no automations. I couldn't even install smart light bulbs without a hub. Also, you can't share with your spouse/family (so they can control lights) without a hub.


I do not have any faith in Alexa OR Google home, despite Amazon on paper being a juggernaut of market share and Google being a juggernaut of AI. How they are fundamentally architected is bad. Cloud-based services that run over a single WAN connection? That basically guarantees Google Home and Alexa are bound to be only ever used for frivolous things you don't really need because the smart assistants are fundamentally unreliable.

Initially I didn't think this was THAT big of a deal, but the more experience I got with smart homes the more I'm thinking the ecosystem's are doomed to plateau while Homekit keeps trucking past them since its reliability problems are not as severe. Amazon and Google are building castles on sand.


Before Google bought Nest, I even remember Nest made sure their products could all communicate with each other on the local network without the Internet. Nest devices set up a local network for themselves in the IPv6 ULA range. IPv6 addresses are so plentiful that a made-up ULA network won't cause any problems. I thought that was a pretty clever technique to ensure falling back to offline use. It did generate some questions on various online forums when people discuss Nest home devices were sending out IPv6 RAs.

I guess but cannot confirm that Google has continued this practice. It didn't seem like the problems you mention exist, unless Google did something stupid and disabled all of this perfectly working functionality.


Besides what you mentioned there’s the local home SDK. Google is still using the actual Nest app and I’m pretty sure what you mentioned works through that app. There’s also matter now for local control. The thing is that there’s this mishmash because unlike Apple they weren’t local first across the board from the get go.

In any case, I’m holding out for a HomePod mini refresh because if they throw a s9 chip in there it’s going to be able to do basic voice recognition offline

Maybe matter can save Alexa/Google home and I’m too pessimistic but I don’t like how they work now.


I've been pretty happy with HK augmented by Homebridge. However, I'd go out of my mind if it weren't for the Controller for HomeKit app[^1] to allow backup and restore, and it's still not perfect due to Apple restrictions on how third-party apps are allowed to interact with HK. Controller also is the only way to access more advanced automation options that are impossible to do through the Home app.

Just the other day after a power outage, three Nanoleaf bulbs in my home refused to rejoin HK and I had to repair them. That meant deleting them from HK first. Fortunately I was able to use Controller to restore most of the scenes/automations that involved those bulbs. But it was tedious and didn't restore everything.

At this point I'm seriously considering switching to Home Assistant to act as my HK automation hub. That would give me the best of everything: local control, HA for programming, and using my Apple devices to turn things on and off.

[^1]: https://controllerforhomekit.com/


> and it's still not perfect due to Apple restrictions on how third-party apps are allowed to interact with HK.

And other Apple restrictions. I've got a lot of stuff looking really good with this combo. And then I added a Brilliant (https://www.brilliant.tech/home?tab=system) Smart "Outlet", particularly for my living room, which has six can Hue lights, and a lot of ambient stuff around the TV - it's great for driving a lot of scenes, daylight, evening warmth, media (where the front row of cans are off), etc. But it could also so a lot more that would be nice (Christmas lights, which are off a smart switch etc.) - except Apple doesn't allow external devices to initiate HomeKit actions. So a lot of potential usability is lost.


This is very true.

Our place came with an Ecobee thermometer. I threw it up on Homekit and my partner had it on their watch and phone instantly. Too easy.


Can you please elaborate? It works when the internet is down?


Yes, if you have a home hub (an Apple TV or a HomePod¹). https://support.apple.com/en-gb/HT207057

Homebridge is a great addition to a HomeKit setup, too. https://homebridge.io/

¹ EDIT: Removed iPad mention, since as @js2 notes, "iPad as a home hub" support is being deprecated.


That's interesting. I have not looked into using the Apple ecosystem, but just assumed it was all centered around the HomePod. Not needing the Homepod now makes me more interested


You need an AppleTV or HomePod to act as the hub. Without that, you get no automation nor ability to control devices from outside your home. An AppleTV is also needed for Thread support. Using an iPad for a hub is deprecated and not supported in the new architecture.

You can of course use HomeKit devices with Home Assistant in both directions. HA can obviously serve as the automation hub for HK devices ("accessories" in HK parlance) and HA can expose itself to HK so you can control HA devices through an iPhone, iPad or Mac.


> An AppleTV is also needed for Thread support.

Or a HomePod mini, or a 2nd gen HomePod, or a supported 3rd-party device that can act as a Thread border router.


Ah, thanks for the correction on that. Maybe plenty of folks are happy with HomePods for their hub but all the complaints I read are also folks using HomePods. It's hard to know whether they have spotty WiFi or if HomePods are just inherently less reliable hubs.

I will say that having my wired AppleTV act as a hub, I've had no trouble at all. I have maybe 50 accessories and a bunch of automations, some fairly complex. e.g. my garage door automatically opens for me as I near my home as long as my iPhone is in CarPlay mode.


iPads are deprecated as hubs and not supported in the new architecture. HomePods are notoriously unreliable as hubs, but that may be due to folks who have spotty WiFi in their homes. It's best to have a wired AppleTV to act as a hub.


You do not need a Hub if you want to use it from inside the house with no internet, it will work by itself.


The futuristic idea of a smart home is that you can talk to your smart home.

"Computer, dim lights by 30%"

"Computer, open curtains."

"Computer, vacuum the floor."

"Computer, play some jazz"

All of these are phrases are actual literal phrases that I use in my home, some on a daily basis. It can only be done, with current consumer tech, through the internet. All you need is a roomba, some 4$ smart bulbs, a spotify account, a 30$ auto curtain robot, and an alexa. For google home you can do the same but you can't call it a "computer."

In the future they will most likely be hooking up some LLM super computer to the home. In that case it can only be online.

The idealistic version of a smart home involves what we see in Star Trek TNG. Talking to the computer and only an online version of that can fulfill this vision currently and in the future. If you go offline, what you get is what I term a "programmable home" more than a "smart home".


>In the future they will most likely be hooking up some LLM super computer to the home. In that case it can only be online.

Well, not necessarily. The open source LLMs i.e. Mistral/Llama 2 can be run offline if you have a good consumer grade GPU.

I'd like to see an open source LLM control home devices Alexa style.


Have you looked into Assist with Home Assistant? It's offering local voice control with custom wake words.

https://www.home-assistant.io/voice_control/


Modern phones could easily handle every example you just gave. Heck, even the most recent Apple Watch could.


Tasker on Android is wonderful :)


I am planning to do this soon(TM).

Probably starting with ESPHome to control my heat pumps over IR.

The remote works but I forget to turn it off when not in one of the rooms, and it can't do smarts like keeping temperatures in desired bounds.

An ESP32 running ESPHome with high power IR LED, a presence sensor, temperature sensor, and some pre-built library to control heat pumps[1]. it looks like it should be fairly simple to implement with Home assistant.

Now if I could only disable the beep from the heat pumps receiving commands.

I would like to do smarter lighting, but the lack of decent smart light switches that support local control and are also licenced for use in AU are a blocker there.

[1] https://github.com/crankyoldgit/IRremoteESP8266/wiki#ir-send...


I haven't done a lot of home automation, but I did set up some Amazon Dash buttons to play some music on our house speakers, which was fun.

When Amazon discontinued them and actively pushed an update to brick the devices, it was a nice inexpensive wake-up call to not trust phone-home IoT devices.

Sometimes the phone-home comes in the guise of over-the-air updates that are supposedly good for security or add features. But sometimes they actually remove features.

I think the author of this article has it right — the best security and most trustworthy IoT setup is to host it yourself; never connect things to the internet at large. If your gizmo doesn't support that mode of operation, don't buy it.


I recently bought some smart devices and I've been playing around with plugging/unplugging my cable internet connection to see what continues to work and what doesn't. It's nice to have evidence of Matter-over-Wi-Fi (not just Thread) continuing to work even when there's no internet connection, though this may vary depending on the hub in use. TP-Link Tapo devices can also be controlled over Wi-Fi without internet, separately from Matter. Even if you ignore the privacy ramifications, it's pretty magical when tapping a button on your phone toggles a light with nearly zero delay.


Loxone is a pretty nice all-in-one solution, or as a base that can be then connected to HA, from lighting controllers to heating etc, and fully offline, especially in Europe where Lutron and the like aren't being used en masse (or are simply not compatible). The only downside is that it's pretty hard to configure by hand since the system is pretty complex.


But Loxone is also a very different system, living in it's own bubble. When I talked to my local Loxone representative, they told me you have to get their special bulbs (costing 80$ a piece), running over their own wiring (24V, not 240 as everything else), their own light switches, their own everything. They literally told me I would have to have everything electrical done by them. In the end I passed and I'm going to slowly move things to ZigBee compatible stuff.


One of the best discussions in a long time I have seen about smart homes, thanks


I've done something very similar, NOT with ZigBee or any other wireless devices, but with wired ShellyPro, a Victron p.v. inverter, some WaveShare ModBUS RS485/tcp etc, and my few notes are:

- HA have a slick UI, but it's a MONSTER, less monstrous maybe then OpenHAB but still a monster, I HATE it's YAML config, it's use of SQLite is well... And it's less horrific way to deploy, by pip in a virtual environment is meh, at best;

- wires are needed for reliability, but while ShellyPro and WaveShare seems to be reliable (in few years almost no issues) they are still limited, damn expensive and not much comfy to keep them up to date automatically and centrally. In general most IoT products are crap at best, badly documented, buggy, dysfunctional and damn expensive;

- most sound reasons for home automation lay in energy saving/automation, I normally see no sound reason to switch on the lights from a mobile phone instead of a physical switch for instance, but most appliances seems to be designed without any clue on how they can be used and integrated. A small example, I have a Daikin/Rotex heat pump for domestic hot-water, it's not really a small economic device, well: just to read water temp to makes decision I need a 300+€ extra card, my take was a far cheaper pt100 inserted via the hot-water return intake I do not use. Remote piloting can choose "do not heat", "heat full power, heat-pump if possible + classic resistive heater", "try heating with the heat pump for 15' than goes full power", "choose automatically what to do".

WHY THE HELL not offering a simple:

- try heating with ONLY the heat pump

- try heating with ONLY the resistence

- do not heat

- heat full power

leaving the extra bit for "choose internally what to do"? I still have not answer, and to heat only with the heat pump, for instance because I have just 600-800W spare from my p.v. I have to switch any 10' "do not run" for a minute, than "start with the heat pump" in a loop.

My VMC is even worse: it's only ModBUS, native, but various registers store/read different values than those documented, a small set of them are totally undocumented, some fails to read or write randomly so I need a bit of extra logic to try again few times.

IoT can be a nice addition, but so far there is simply too much crap both on electronic side and on the digital side.


The Smart Home is the ultimate triumph of capitalism. A product that nobody needs who's biggest value is mining user's data in order to sell that user more shit they don't need.


> mining user's data

The article is about offline Smart Homes.

Using something like HomeAssistant, and products supporting integrations with local control you can eliminate data going to third parties.


I get that it was about offline Smart Homes. I just got stuck on the fact that the author said they weren't concerned about privacy.


Did we read the same article? The author didn't say that.


You'd be surprised how much time you can actually save yourself and get back for living towards other things by automating the right few things for yourself.

Get a stopwatch and try it out.


I'm sure that's true, but I just don't see the point. No one ever died saying, "man, if only I'd lived life more efficiently".


That was probably before the invention of robovacs.


Pretty sure I spend more time fucking with my smart home setup than me or anyone in my family will "save". It's a gimmick at best.


Playing around with things to tweak more is hobby time to me.

Setting it up for others to use it is another. The comment about Apple Homekit "just working" has some merit. If it's not automated in the background on a schedule, and on demand, there's some merit to it.

Maybe there's a sweet spot of not having to hack every little thing.

My smarthome setup for example is centered around becoming an appliance of the home that stays with it, and making design considerations for that.


And how do you use your precious time that you have saved through careful improvements in efficiency?

More scrolling on HN? Yeah, big win.


30 minutes a day saved is 15 hours a month, and about 22 work days (8 hours) a year of waking time. Awake time.

I get that much more time with my kids or towards something else I want.

It's free time for the taking for a fixed investment, I'll take it. It might not make sense for you and how you value your time, but in time it might.

The thing about doubt like yours is nothing new will reach a brain that starts closed off. I generally avoid doubt worshippers who validate their doubts by painting them on others instead of openly entertaining a viewpoint that isn't theirs. I got no problems being straight with you the way you're willing to behind a keyboard. I understand the fun part of being a devils advocate and a skeptic, but not everything has to be for everyone, nor does it have to be validated by you to be acceptable.

To answer your question, HN is limited on a few devices, a few times a day, with the procrast settings, and in grayscale. The hosts file has been blocking it for many years. After a while I pick up and put down the device I have for reading.

What do you do that works for you?




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

Search: