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.