I want to get started designing my own hardware (digital) audio devices for signal generation and processing. The end goal is to design products which will be part of a modular synthesizer system.

I'm a bit of a beginner with hardware so I'm after some advice on an appropriate type of microcontroller to use. What features should I look for in a microcontroller to satisfy the needs.

I will need digital I/O for switches and audio in and out (presumably I will use discrete DACs/ADCs), analogue I/O for real-time control (pots/faders etc.) and sufficient computational power to do real-time DSP at reasonably high quality.

Through a bit of research and looking at the specs of existing hardware I was thinking that starting off with something general like an ARM Cortex M3 or M4. Would this microcontroller types be appropriate? I'd like if possible to program it in C.

The issue then is how I go about programming/prototyping with what I choose. Should I get a development board? Will that include some kind of IDE? Can I get a bare chip and program it as is?

Any advice or redirection elsewhere is appreciated.


closed as off-topic by Leon Heller, Ricardo, Daniel Grillo, Majenko, Nick Alexeev Mar 8 '15 at 23:17

This question appears to be off-topic. The users who voted to close gave this specific reason:

If this question can be reworded to fit the rules in the help center, please edit the question.


Look at Microchip dsPIC family of microcontrollers as the features they offer may fit your needs.

The family offers the following features:

  • 16 to 70 MIPS, DSP options
  • 30 MIPS DSC at 5V
  • Intelligent Integrated Analog: Op Amps, 10/12/16-bit ADC, DAC
  • Integrated Codec interface
  • Motor Control peripherals

dsPIC Diagram

You can find more detailed about dsPIC30F features here:

  • \$\begingroup\$ If that's not enough the new PIC32MZ are way faster and provides a DSP core too \$\endgroup\$ – Andres Nov 23 '14 at 18:35

The ARM Cortex M3 mbed LPC1768 board might suit your needs. It has 1 analog output, and 5 analog inputs and it runs at 100 MHz. You can find it here.


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