STM32 4 Channel Audio
STM32 4 Channel Audio Board - fully assembled
What is it?
This is a small (2" x 2.5") board with an STM32F105RBT6 MCU, a pair of CS4344
audio DACs and a variety of I/O resources to support development of embedded
audio synthesis applications.
- 32-bit ARM Cortex-M3 CPU rated for 72MHz clock
- 64kB SRAM
- 128kB Flash
- 7 Timers
- 3 SPI (2 with I2S capability)
- 2 I2C
- 5 USART
- 1 USB device
- 2 CAN
- 51 GPIO pins
- 16 Chl to 2x 12-bit ADCs
- 2 12-bit DAC
- Note: Footprint is compatible with other 64-pin QFP parts in the
STM32F105/7 family for additional resources.
- Onboard 3.3V Regulator (4.75V - 15V input range)
- Filtered Analog 3.3V Supply
CS4344 Stereo Audio DACs
- USB mini-B device connector
- Power and User LEDs
- Reset button
- 4 position DIP switch
- 4-pin SWD compatible programming interface
- 6-pin FTDI serial compatible interface
- 4 ratiometric pots on 4 analog inputs
- 14 lines MCU analog/digital I/O
- AC-coupled line-leve stereo audio on 2 3.5mm jacks
- Raw Audio + references and supplies for DC coupling
Interfaces and Jumpers
- JP1: USB +5V supply. Install to power from USB.
- JP2: FTDI 6-pin serial +5V supply. Install to power from FTDI USB/Serial
- J2: Raw Audio. Direct access to 4-channel DAC audio output, as well as
supplies and mid-point references.
- J3: USB. Mini-B connector for USB device access.
- J4: STM SWD. 4-pin in-system programming connector.
- J5: Power: 4-pin keyed power connector (+5V only).
- J6: 6-pin serial connector compatible with the FTDI USB/Serial pinout.
Use this to create devices that can talk directly to a USB host with
minimal cabling. Could also be used for bootloaders.
- J7: 14-pin DIP footprint for access to unused GPIO on MCU.
- J8, J9: 3.5mm line-level audio outputs.
- S1: Reset button - tied directly to the MCU reset input. Handy way to
quickly reboot your MCU after flashing new code into it.
- SW2: 4-position DIP switch directly connected to MCU GPIO.
- LED1: Power indicator - lights up when 3.3V is present.
- LED2, LED2: User GPIO - connected to GPIOB-8,9. Useful for diagnostics.
- VR1-VR4: 10K ratiometric pot inputs to 4 ADC input channels.
The STM32 family of parts are supported by a variety of commercial IDEs, all
of which are available in low-cost or limited free versions from the
I prefer to use open-source tools, so I've set up a development environment
based on the GNU C compiler for ARM, available for free from Mentor/Codesourcery.
For downloading to the target I use an STM32F4 Discovery board with stlink V2.
To ease development I also use the STM32 Standard Peripheral Library to
as a starting point for my code and then optimize out the heavyweight functions
as required. Links to all of these are here:
- 2012-02-03: Started Schematic, order parts.
- 2012-02-04: Started Layout.
- 2012-02-09: Order PC boards.
- 2012-03-04: PC boards arrive. Initial checkout good.
- 2012-03-07: I2S DACs work.
- 2014-01-31: Added example code.
Interested? Contact me at the email below and I'll give you a link where you can
buy bare boards directly from the PCB fab. Cost for boards is about $8/ea, but with
setup and shipping expect to pay a bit more. Parts will run another $10 or so depending on
where you get them and which version of the processor you want.
Return to Synth page.