These are not viable options for the vast majority of users. Most peppe don't have a clue how to set up open source options, let alone set them up with usable hardware.
The average consumer wants out of the box solutions that don't require a degree in Computer Science to use.
Home Assistant is getting far easier to set up than you might expect, especially because they now do in fact have out of the box devices. It's not quite as ridiculously simple, not quite yet, but they're rapidly improving and it won't be long until they're better than Amazon Alexa/Google Home/other commercial solutions.
I am relatively tech savvy, installed HA recently in a VM on my media server and the thing was just a massive pain in the arse, particularly trying to migrate Thread devices from Apple Home to HA.
Sure things might be getting easier but they’re certainly not easy.
Just to chip in with a plug for HomeAssistant. I am really not very techy at all, but so far I have used the out-of-box HA Green version and:
-installed waterproof exterior socket, remotely controllable
-installed various interior sockets
-installed smart thermometer to control our little plant propagator
So far it seems to be a case of checking that the thing you are going to buy has a working HA integration program (which seem to be added on a fairly frequent basis) and then just adding it to the network. The only vaguely difficult thing I had to do was log in to my router homepage and change the wifi mode to allow the exterior socket to connect.
I'd much rather just not use Amazon/Google/etc where possible, as I don't like the feeling of being used.
What are these "out of the box devices"? I looked into things a couple of years ago, and back then it was all too much effort to set things up and keep things running and integrated, so I just went with Smart Life stuff from AliExpress. But would love to have Home Assistant if it means I don't need to spend weekends just reading docs, pairing, setting things up, connecting stuff...
Look at Home Assistant Green [0]. They've also got a smart speakers as of just recently [1], although they're still a "preview edition". The prices seem comparable to other similar smart home devices, IMO.
For the wifi smartlife stuff, you can use the official cloud based integration or if you want local control, the unofficial tuyalocal. The official integration is really easy to use but if your internet connection drops, you can't control your devices so I prefer to use tuyalocal it still requires to add the devices to the smartlife app once and then you add a device from the addon by scanning a qr code with the app. Once this is done you have local control over the device.
Zigbee devices require more initial setup, you have to buy a dongle, install the Zigbee2mqtt addon and the mqtt integration, but once this is done adding a devices is a really simple process : you put the devices into pair mode and allow pairing for 90s in the Zigbee2mqtt page and rename your device to something
useful.
I've got HA set up (nearly 2 years now with a whole host of things connected: Bluetooth, WIFI, iOS devices, Zigbee, etc.) and I think I'm only just getting to the point now of two weekends worth of reading docs (primarily because their documentation seems to be written by developers rather than technical writers). Most time I've spent tinkering with HA was modifying their embedded `mastodon.py` to make it work with GotoSocial (but I think someone upstreamed a fix for that and it's no longer required.)
They're already better compared to commercial solutions regarding device/service support and complex automations.
But missing opinionated defaults, really, you still have to roll your own home/away/vacation solution. Creating a dashboard requires you to understand the meta of Home assistant which takes a lot of time.
People asking should I get PI or NUC every single day in the reddit. I am happy with my 2000lines long configuration file except scripts and automations. But it won't be easy for someone is not tech savvy.
Home assistant is a nightmare to set up. Even with their hardware, you need to learn a whole new vocabulary and God help you if you stay off the happy path.
If HA (which is a wonderful project) is your example of usable OSS software, then your bar is set lightyears away from what actual consumers need.
At no point did I say it's usable by the average, non-tech-inclined user. I said it's getting much better, quickly. It absolutely still needs work to replace something like Amazon or Google have.
I like your confidence in the competitors. Which ones do you recommend?
I need a timer, integration with smart home (turn things on and off), play songs and radio, I need to announce to my other devices. And the set up should not be a month long side project.
How much will it cost me to replace Alexa in at least 5 rooms...
Home Assistant. Sure, non-tech people might have an issue setting it up today (it's easy and getting easier, but it's not turn-key easy yet), but for you personally, this shouldn't be an issue.
Assuming you have a spare Raspberry Pi or some other compute you can dedicate to it, replacing Alexa in every aspect except the microphones is at most a couple hours of installing, configuring and testing stuff. I don't personally know how things are on the market with replacing the always-on microphones in every room, but ignoring that (let's assume for a moment you're fine with using either a phone or a smartwatch as voice I/O), you get:
- A better and more capable integration with smart home than anything on the market;
- A chance to pick whatever LLM you want to power your logic (just bring your own API key, ofc.), which instantly makes it much better than Google's Assistant, Siri and Alexa; this has been the case for around a year now, and the Big Companies are still playing catch-up with the simple "just feed it to GPT-4 / Claude along with some context and tools, and let it do what you want" approach.
- You can configure the activities whichever way you like, expose whichever smart devices you like, and you don't have to speak brands anymore. No more "Hey ${brand 1}, use ${brand 2} to play ${brand 3} on ${brand 4}" - you can just say "Please play whatever in the living room" and it just works.
(In my case, some of the most frequent commands are off-hand lines like "warm up the kids' room a bit, please", and "kill the ACs", or any variation that rolls off the tongue best. Claude knows what to do with zero config. Home Assistant alone cut the time to operate ACs from 2 minutes to 5 seconds (cold-start) relative to the vendor app; running things by voice from a watch is just a cherry on the cake.)
- If you're on Android, you can (and, again, could for around a year now) expose your phone to Home Assistant; setting the HA app as your assistant + coupling it with Tasker lets you also replicate the on-phone feature of commercial assistants, but better, because LLMs. It's smarter and sends less sensitive data to iffy cloud services (you control where STT and TTS happen).
- Timers and announcements and weather and such, you can obviously also handle through Home Assistant. The defaults should be enough for this (you might need to "add weather integration", "add timer integration", etc. - couple UI clicks in the UI, each). HA is simple by default, but you can also do more advanced stuff, at any complexity level between this and arbitrary code execution, through no-code, low-code (e.g. NodeRED) or yes-code means.
Going back to the topic of microphone arrays - I didn't look into it much; there are DIY solutions (with DIY quality of listening - which may be OK, depending on environment; almost 2 decades ago, I got a lot of mileage out of cheap microphone soldered to a 2M cable and glued to the side of the wardrobe, + Microsoft Speech API on the PC), I think I recall some people selling packaged microphone arrays, and I wouldn't be surprised if you could reuse Alexa hardware for the I/O part. But I honestly don't know. I'm fine with my phone and watch for I/O at the moment.