I am starting work on a project where I want to do some DSP using an embedded solution ideally with very low latency as it will be in a real time environment. In addition I want high quality, preferably 16bit 48khz, but I can settle for 12bit.

What I am wanting to know is if anyone in this community has done this before and has any words of advice. I have read all about it and have a dsPIC starter kit to play with.

Specifically I want to know if anyone has experience with PCM and how to efficiently apply filters then send back out.

I also want to know if anyone has any experience with Audio ADC's and DAC's and would have any suggestions for when I get to the point of developing my own board.

  • \$\begingroup\$ There is a new proposal at Areas 51: Broadcast and Media Technologies where we invites experts in codec development work. Please join and invite others. \$\endgroup\$ Feb 28, 2012 at 5:48

4 Answers 4


ATmega3250P + WM8731 codec: http://www.openmusiclabs.com/projects/microdec/

Other Reprogrammable Audio Platforms: http://wiki.openmusiclabs.com/wiki/OtherPlatfroms

Also see DSP recommendation for beginners

  • 1
    \$\begingroup\$ I've been getting the feeling that there aren't many people doing embedded DSP. At least not many who are able to publish their work. These links were very helpful to me though. \$\endgroup\$
    – Kellenjb
    Sep 8, 2010 at 14:13

Many dsPICs have an I2S interface for a codec. I interfaced an Si3000 voice codec to a dsPIC30F4013, using a PCB I designed, for speech processing. Higher quality codecs are available.


Here's a project using an mbed (ARM Cortex-M3) to do audio delay:


Here's a similar thing using the Maple:



In addition to the often suitable general-purpose-processor ideas, there have been some dedicated DSPs marketed which deliver either BiQuad or FIR filters, either built into an ADC/DAC chip, or as a tiny stand alone part with something like I2S in and out.

The idea seems to be that by doing this in special purpose hardware, you can configure it from an embedded CPU, without having to pick one with DSP horsepower or design your embedded software in such a way that near-real-time processing of the data is assured.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.