Creating a Circuit Board from Scratch

I've been dabbling with creating my own circuit boards for a while now. I recently used KiCad to design this audio DAC circuit board. I had the board manufactured by OSHPark and assembled it myself using a solder paste stencil and my DIY solder reflow oven.

CS4334 Audio DAC Breakout Board

The board plays audio using a typical 3.5mm headphone jack that can be connected to speakers or headphones. Sending I2S data to the board is necessary for audio to be played. This is discussed below.

Designing the Board

Big thanks to John Winans for his KiCad tutorials. He does a great job at explaining how to use KiCad to quickly prototype a PCB and get it manufactured at a very affordable price.

I'm into audio projects and have been using audio DAC chips in various projects for a number of years now. I decided to use a Cirrus Logic CS4334 DAC chip for this project. Similar Cirrus DACs have been used in a number of popular consumer products over the years.

Cirrus makes an evaluation board for the CS4334. I didn't purchase this board, but I did use the schematics in the datasheet as a model for the circuitry of my breakout board. See my schematic below. The KiCad project, including this schematic, the PCB layout and the bill of materials can be found in my github repo here.

CS4334 Audio DAC Breakout Board Schematic

The schematic is fairly basic. It has the power, ground and I2S data input pins going to the CS4334 chip. The left and right analog output from the CS4334 go through identical low pass filters before going to a typical 3.5mm audio jack.

The PCB layout I made in KiCad without the front copper:

CS4334 Audio DAC Breakout Board PCB Layout

...and the PCB layout with the front copper:

CS4334 Audio DAC Breakout Board PCB Layout

KiCad also allows for generating a 3D representation of the board you're designing, giving you a very good idea of what the manufactured board will look like.

CS4334 Audio DAC Breakout Board 3D Model

After the design process is done in KiCad there are a number of manufacturers online you can have manufacture your PCB. I chose OSHPark since they were the most affordable and timely manufacturer I could find. They accept KiCad files for manufacturing without the need to generate Gerber files.

OSHPark printed three of my boards for only $8.80 USD with shipping included. It took about ten business days to receive these boards. Here's an example of one of the printed boards. I put a quarter next to it to give perspective of its size.

CS4334 Audio DAC Breakout Board PCB Layout

Assembling the Board

The next step is how to successfully solder the parts onto the board. These SMD (surface mount) parts can be difficult. I've tried a few different methods:
  • Hand soldering. I have a Weller WESD51.
  • Using a hot air rework station with solder paste. I have an Aoyue 852A++.
  • Using a solder reflow oven.

For me, I've found using an oven works best. I'm a big fan of DIYing on the cheap and happened to come across the Adafruit EZ Make Oven while looking for a reflow oven. It seemed to be a pretty easy project to put together and very affordable compared to actual reflow ovens, so I gave it a shot, and it turned out well.

The process is pretty simple: Lay down some solder paste on the board, place the parts on the board, put it in the oven for a few minutes, let it cool for a few more minutes and BAM, you have an assembled circuit board.

First, getting the solder paste on the board. I think the best approach is to use a stencil. You could probably do it without a stencil; using solder paste in a syringe and dabbing it on the pads, but I've found the stencil really helps quickly and properly distribute the solder paste and make sure it only ends up where necessary.

OSH Stencils will print you a stencil for your OSHPark order for a reasonable price. They printed me a plastic film stencil for my board with shipping for about $19 USD. Using the stencil is pretty straightforward. Lay it down over the board (tape helps), put down a glob of solder paste, spread it over the stencil using the credit card like spreader provided by OSH Stencils and you're good to go as shown in the images below.

CS4334 Audio DAC Breakout Board Stencil with Solder Paste

Carefully peel back the stencil to reveal the perfectly placed solder paste on the board.

CS4334 Audio DAC Breakout Board Stencil with Solder Paste

After the solder paste has been applied, I use high temperature polyimide tape to tape the board down to the tray of my DIY solder reflow oven. I then use tweezers and magnifiers to properly layout each component as shown in the image below. Note that I don't put the headers or the 3.5 mm stereo audio jack on at this point. I hand solder those after all the surface mount parts have been properly soldered.

CS4334 Audio DAC Breakout Board Parts Layed Out Before Oven

After all the parts have been properly laid out it's ready to go into the oven!! As mentioned, I created my own Adafruit EZ Make Oven. It's an awesome project and so far has worked great, producing excellent surface mount soldering results in just a few minutes. Here's a pic of the oven cooking my board in my kitchen.

Important: Do not use the toaster oven for preparing food after using as a reflow oven. Solder usually contains lead and possibly other nasty elements that can cause serious health issues. ...My lawyer made me say that.

CS4334 Audio DAC Breakout Board Parts Layed Out Before Oven

Here's a closeup of the Adafruit PyPortal while the oven is in use. The targeted soldering profile temperature is the green line, and the actual temperature is the red line. Note how closely it follows the targeted profile temperature.

CS4334 Audio DAC Breakout Board Parts Layed Out Before Oven

It only takes a few minutes to bake the board, turning the solder paste into quality solder joints between the board and the tiny surface mount parts. After letting it cool, I hand solder the audio jack and header pins and the board is now fully assembled!

CS4334 Audio DAC Breakout Board

Using the Board

The video below shows my board in use. I have an STM32F411 development board sending I2S data to my DAC breakout board. I wrote a small STM32F411 program that sends a short piano sample of audio to my DAC board. This program can be found on GitHub here. My DAC board's 3.5 mm stereo jack is then hooked up to a typical pair of powered speakers to hear the audio.

Any questions, just let me know, I'll be happy to discuss.

Date: July 11th, 2021 at 10:24am
Author: Terence Darwen
Tags: Embedded, Audio, DAC, Cirrus Logic, CS4334, PCB, circuit board, KiCad, I2S, STM32, STM32F4, STM32F411, Audio Software