These things aren’t bad, I’ve got a few that I use sort of successfully, but the speaker and mic aren’t very powerful. I was thinking of building one with an ESP32 and i2S (not i2c, that threw me off too) speaker/mic, but I’m wondering if I’d be reinventing the wheel here if there’s a better alternative already out there.
I simply use an USB conference speaker/microphone plus the Assist Microphone add-on. (in my case this one from Microsoft, it works great with my RasPi.)
I actually prefer that over the Echo or other embedded devices, as it is able to pick up my voice from further away and the output audio quality is much better. (My use case is something similar to commercial proprietary systems like from Amazon/Google.)
The M5Stack Echo I use on my night stand with push to talk for quick actions, for that it is enough.