Running EEG Signal Processing on Consumer BCI Headphones
The challenge
A consumer technology company was developing headphones that read the wearer's brain activity through EEG (electroencephalogram) signals, as well as playing audio. Its signal-processing algorithms had been written in Python for research. A direct translation to C would have needed far more processing power than the STM32 processor inside the headphones could provide.
What we did
Working with the client's team, we redesigned the signal-processing chain to keep its accuracy while cutting the processing load substantially. That meant optimizing the math, using features specific to the processor, and managing memory carefully so everything fit within the available resources. We wrote the result as efficient, maintainable embedded C, drawing on our BCI development and firmware development experience.
The result
The optimized algorithms were integrated into the STM32-based headphones, which launched as one of the first consumer BCI headphones and won a Best Product award at CES.
Work With Us