Learning from mistakes: Smart Home
In the past 2 decades I've learned a lot about programming. Not so much on a technical level, though I've definitely grown that way as well. But, more on a holistic level. My prior post about abstractions provides some insights there. But the same thing is happening with my smart home devices. And some truly weird things are happening.
My first camera was a Nest outdoor cam. I read the reasoning behind avoiding a company like Google. And I decided that they were wrong. And they were. Mostly. Google didn't sell my data or shut the service down. But, they did shut down the API which my smart home software relies upon. I'm still grand-fathered in. But I doubt that will last forever.
Beyond the camera though, I've been fortunate. August got bought, but the new company hasn't "Googled" the API or anything like that. At least, not yet. And I don't care too much about my Nest Thermostat. I don't even view the thermostat temperature in my smart home, though a few screens do have it. Then, I have both Hue and Ikea lighting. Both of which are unlikely to disappear.
The true oddity though is this; I trust Ikea more than Philips. Ikea is still investing anew in their smart home application and products. Philips is to a degree. But not to the degree that Ikea is.
But this all brings me to what I've learned. Or rather, come to accept. Buy products which don't rely on someone else's cloud infrastructure or good will.
While it sucked in the beginning that Tradfri didn't have their own remote services, it has become yet another reason why I have a bit more trust in their solution. With little to no critical server stuff coming from Ikea, if they wound down the business there would be less reason to kill off the existing functionality. Hue on the other hand, has its hands deeper in the server side functionality. If they ever decided to kill off the Hue lineup, it might be easier to just brick everyone's devices than rip out all of the tendrils into their cloud.
I now prefer products which only communicate locally.
I have the benefit of being computer literate. I set up my own VPN the other night, tied to a free DNS record which I have a script I use which keep things up to date. I setup an open source smart home system which can take the smarts beyond what is available on any particular platform. And all for "free". I pay for internet of course, and the products.
With the VPN I can access my smart home without anyone else's cloud.
Right now, I have a pretty complex setup. But, I'm OK with that.
OpenVPN is my remote access solution. FreeDNS provides the DNS record. A client script they referenced is running as a cron job to keep everything in sync. Home Assistant provides the UI and smarts. And Shinobi is being used to capture my video feeds. Between Home Assistant, Shinobi and the hooks into Tensorflow, my $60 outdoor IP Camera is smarter than a Nest Cam even with the paid subscription. I also have as much storage as I want. And far better latency as I don't need to stream to the cloud. Unlike the Nest Cam which doesn't expose any known local APIs and is under Google's control, my new camera is primarily accessed locally.
It still feeds data out to an online service. But, it isn't dependent upon that.
The moral of the story is that I can pay a lot of money for a fancy product with a service. But, oddly, spending that money doesn't buy me peace of mind. Nor does it necessarily ensure a better experience. The products which aren't affiliated with these massive smart home companies are often cheaper and more open in design. And that openness allows the community to extend. So, you can end up with a better solution at a fraction of the cost.
In the future I'll probably do more Raspberry Pi based DIY projects and reserve purchases for things with more complex constraints. Like this camera. I don't think I'd want to try and make an outdoor IP Camera on my own. An indoor one on the other hand? Absolutely. Same with temp sensors, buttons and smart displays. Those are things I can do on my own with little to no risk and better results in many cases.
Comments
Post a Comment