Handles the hacked 48kHz audio that triplicates the 16kHz signal in the current 48kHz XMOS firmware
Puts left and right channels into separate ring buffers to pass less filtered audio to mWW and the fully clean file to the voice assistant (prepared for a future XMOS firmware update)
TODO: These changes really should be under a new microphone platform, not bolted onto the existing I2S microphone
mWW runs in tasks instead of in the main loop: one for spectrogram feature generation and another for the actual inference
Tasks communicate and are controlled by an Event Group
Wake word detection information is passed from the inference task to the main loop using a queue
mWW models can be enabled or disabled on the fly. They will automatically be loaded and unloaded as needed
mWW will always run unless stopped, even while the assist pipeline is running
I'm holding off merging because I haven't tested it on the 16 kHz XMOS firmware that most people are running. I may have broken the microphone!
This will require a follow up PR after merging to change the external component branch back to dev in the yaml file
I'm holding off merging because I haven't tested it on the 16 kHz XMOS firmware that most people are running. I may have broken the microphone!
This will require a follow up PR after merging to change the external component branch back to dev in the yaml file