So, after working on it for a while, I have finally got my own smart speaker built the way I want it. The full writeup of this project can be found here
A quick summary: It’s based on an orange pi zero plus 2 board connected to an amplifier running Armbian. One of the more interesting features on this one is that it hooks into the message bus to ensure that the amp is only on when it is needed. A few people on the forum wanted me to post about how well this works when I was asking about how to go about this. It actually worked very well, but I had to modify how the wakework event is sent because it was getting sent after the wake notification sound was played. As soon as I did that it worked like a charm. I’ve submitted this change to the main codebase and I’m told it’ll be merged some time tomorrow.
Aside from that there are some other bits and pieces in there that might be useful to someone attempting something similar. In particular is a way to hook an electrec microphone up to the orange pi with only minimal components.
I also had to develop a small skill to control my smartswitch for a lamp that is in the same room as the smart speaker. I’m probably not going to submit this skill to the market because I’m not sure how useful others will find it, but if I get a lot of people asking about it I might do it anyway.