I recently learned about Home Assistant here on Lemmy. It looks like a replacement for Google Home, etc. However, it requires an entire hardware installation. Proprietary products just use a simple app to manage and control devices, so can someone explain why a pretty robust dedicated device is necessary as a replacement? The base model has a quad core processor, 4 gigs of ram, and a 32 gig hard drive. Admittedly it’s no gaming PC, but it’s no arduino either.
What actually happens when I turn on a smart switch in my home? Does that command have to be sent to a server somewhere to be processed? What really has to be processed, and why can’t a smartphone app do it?
Edit: I am still getting new replies to this (which are appreciated!), but I wanted to share what I’ve learned from those who have posted already. I fundamentally misunderstood how smart switches work. I had very wrongly assumed that when my phone is connected to the WiFi, it sends a signal over the local network to toggle the switch, which is connected to the same network, and it turns on/off. While there are technologies that work like this (zigbee, kinda?), most smart home devices rely on a cloud server to communicate the signal. This enables features like using the switches from outside the home network, automation, voice controls, etc. The remote server is what’s being replaced.
This is really amazing to me. I had no idea that it was using the internet to send the on/off signal from my phone, up to a server (multiple servers), just to send the command back to my home network, and to the device. That seems like an absolutely bonkers system to turn on a switch. I would be better off to repurpose an old RC toy to control the switch!
What is bad is when the supplying company goes out of business, you are left with junk. Self Hosting is the way.
Also if you buy Kasa TPlink plgus and switches there is a git HS100 repo that has scripts to run to preprogram your switches to use a localhost instead of baked in proprietary IP server, and scripts to associate your switches and plugs to your wifi without an app. https://github.com/jkbenaim/hs100
With this CLI tool you can also manipulate the plugs and switches direct by IP address rather than via homeassistant server.