close-circle
Close
0%
0%

Square Inch USB Sound Card

Small audio interface for adding a digital channel to an analog mixer.

Similar projects worth following
close
A simple USB audio interface whose PCB fits within the area of a square inch.

Project details can be found in the project logs. I've linked them here for convenience:

  1. The Concept
  2. The Design
  3. The Build
  4. Testing
  5. Conclusion
  6. Fails

  • 1 × TI PCM2706 Audio interface IC
  • 1 × TXC 7M-12.000MAAJ-T 12 MHz Crystal
  • 1 × USB Micro Connector
  • 2 × 18 pF C0G Capictors
  • 5 × 1 uF X7R Capacitors

View all 14 components

  • Fails

    Jacob Creedon12/22/2015 at 20:10 0 comments

    There were a few hiccups along the way that I thought I would share for the benefit of future hackers.

    Initial Design Problems

    One of the first challenges was having eyes bigger than my PCB. This project is an entrant in the Square Inch Project so I was limited to a 1"x1" PCB. I really only need playback, but after looking at various interface ICs, I thought it would be neat to have a 2 input 2 output interface with a switch to change the plugs between playback and recording. When It came time to do the board layout I could make it all fit. So I scaled everything back down to my original idea and was able to get everything to fit.

    USB Connector Mounting Holes

    The USB connector datasheet specifies, and I had created a footprint including plated slotted holes for the shield studs, however, OSH Park does not support plated slots. Now I already knew this, but through some absent-mindedness I did not remember when I was designing it and further more did not notice that the slots were converted to holes in the preview when I submitted the gerbers.

    I ended up working around this by bending up the studs and turning it into surface mount connector and soldering those studs on top of the pad. The lesson learned here is to double check the preview you get back from OSH Park, it is pretty accurate.

    Further USB Connector Woes

    Unfortunately without the holes, there is no way to keep the connector aligned. With the pin pitch of the connector and with the connector pins basically being under the pad, this made the reflow of the connector a little more error prone and made rework a lot more tricky.

    On my first board there ended up being a short between a couple of pins. After various attempts to reflow, rework, desolder, and resolder this connector, I had mangled up the board pretty bad and torn up a few pads. Eventually I resorted to just soldering a USB A pigtail to various pads directly on the board to give me this monstrosity:

    Leaving behind a trail of mangled USB Micro B connectors.

    Thankfully with lessons learned in dealing with Micro B connectors, the next two boards were assembled just fine.

  • Conclusion

    Jacob Creedon12/22/2015 at 19:19 0 comments

    Design Retrospective

    Overall I am pretty satisfied with how this project turned out. The audio quality is superb (at least compared to my previous set up) and the device fits nicely within the channel strip, as opposed to having clunky interface boxes. There are a few things I would want to improve for the next iteration.

    First would be to come up with a better overall mechanical design. Depending on the holding force of jacks on the mixer, it can be a little tricky to unplug it from a mixer. I would probably want to figure out some kind of external (3D printed?) case to screw the plugs to. I would also probably add mounting holes to the PCB to offer some additional stability/strain relief.

    Second, would be to see if I could squeeze in an external ROM. The PCM2706 does not require an external ROM, however, if you want to use custom USB descriptor strings, you would have to set those up on the ROM. This would be useful for when you have multiple devices connected to the same computer and you wanted each to have a unique name. As it stands right now, I don't have a need for multiple cards on a single computer, so I had left it out of this first iteration.

    One question I had from someone in the Hacker Channel has the reasoning behind the selection of the PCM2706 as the DAC for this project. The selection was based upon the goals of this project, keep it small and keep it cheap. The PCM2706, as far as I have been able to tell, if the cheapest single chip solution I could find. The typical USB DAC design pattern these days is a two chip solution, one to go from USB to I2S and another to go from I2S to audio. This ends up being a problem for two reasons: first, two chips is more board area which makes it larger and second, two chips would be more expensive than one. The PCM2706 is an older design (2003 I think), and it is limited to 16-bit/48kHz sample depth/rate, however, for playback that is a non-issue. If I were to do it again, I think I would still use the PCM2706, for reasons of cost and simplicity. If I were to make another design for recording, I would probably go the two chip route for a higher sample rate as there are some advantages for higher sample rates for recording.

    Video Demonstration

  • Testing

    Jacob Creedon12/22/2015 at 18:28 0 comments

    After the PCB has been assembled and reflowed. It is time to test to make sure there are no shorts or opens. For testing this I opted to do continuity checks on the USB side, and a system check on the audio side.

    USB

    The USB connector was the most tricky to solder because the pins were underneath it, and the most prone to failure. The first step is to make sure there are no shorts between any of the pins. Next make sure that the pins actually reach their corresponding pin on the IC. Finally, make sure that the pins on the connector are not open between it and the cable.

    Audio

    Once the USB side is tested, we connect it to a computer to test audio output. For this testing I used a Raspberry Pi, so even if I messed something up, ruining a port on a Pi is not as bad as on my main computer. The first check is to see if ALSA picks it up. This can be done by running:

    aplay -l

    to list connected playback devices.

    So here we can see the sound card "USB Audi DAC" show up as card 1 subdevice 0. In ALSA this equates to the designation `hw:1,0`. Using that information we can then use `speaker-test` to generate test signals. I used the following command:

    speaker-test -c 2 -f 1000 - t sine -D hw:1,0

    to generate a 1kHz sine wave on both channels.

    This will alternate that sound on each channel every couple of seconds. We can then probe the pads with an oscilloscope to confirm the output.

    Once both channels are tested and looking good. We are ready to solder on the plugs and connect it to a mixer.

  • The Build

    Jacob Creedon12/22/2015 at 18:05 0 comments

    The PCB

    Assembly was done using manually applied soldering paste and reflowing it with a hot air rework station.

    The Plugs

    The 1/4" phono plugs are just standard solder lug plugs where I have cut the lugs down and bent them in towards each other.

    Marking the placement of the plugs.

    The pads for the plugs were extended along the whole length of the PCB edge so that different plug spacings could be used if they were different between mixers. However, it turns out, (at least with the two mixers I have with me, which are different brands) that spacing might be standard. I'll have to check a few other mixers when I get a chance, but it would be pretty convenient if that were the case.

  • The Design

    Jacob Creedon12/01/2015 at 04:07 0 comments

    After playing around with a few ideas, I settled on building a design around the TI PCM2706. The schematic is based heavily on the reference design from the datasheet. The EDA files (KiCad), schematic pdf, and gerbers can all be found on the github repository. I've included below renderings of the PCB in 3D.

    Front

    Back

  • The Concept

    Jacob Creedon11/23/2015 at 23:38 0 comments

    This is a project to submit to the Square Inch Project contest but to also fill a personal need. The idea is to be able to quickly add a digital channel to an analog mixer by having a compact, bus powered, USB Class Compliant audio interface.

View all 6 project logs

Enjoy this project?

Share

Discussions

George Chriss wrote 05/22/2016 at 04:59 point

"...I would probably go the two chip route for a higher sample rate as there
are some advantages for higher sample rates for recording."

Counter-intuitively sample rates higher than 48k create fidelity problems without providing any benefit.  Background reading: https://xiph.org/~xiphmont/demo/neil-young.html

Would it be difficult to incorporate into 1x1in design 'balanced' TRS output jacks for both channels?  Or a header of some description to sync clocks of multiple chips for unified playback?  It's not a feature readily found in commercial products but valuable nevertheless.

  Are you sure? yes | no

Hirschmensch wrote 06/19/2017 at 09:21 point

But a higher samplerate has the advantage of less aliasing artifacts when applying filters and such.

  Are you sure? yes | no

stefan wrote 01/13/2016 at 17:00 point

I use these micro b connectors if i can afford the extra space.

Never had any problems. http://imgur.com/mK1RBTu

cheers Stefan

  Are you sure? yes | no

Magnavoid wrote 12/30/2015 at 08:17 point

Haha, nice to see something so awesome made by you Jake. Good to see you're still alive and kicking out in Cali. It looks like you're still doing your typically awesome stuff. Keep up the good work. 

- Mike

  Are you sure? yes | no

lj0000 wrote 12/29/2015 at 05:29 point

why not put the usb at the corner facing away from you? the current set up stresses the connector and the cable. consider to use the older usb-B as its more sturdy

also, you can get similar usb sound cards, just mod the plug for much less trouble.

  Are you sure? yes | no

Jacob Creedon wrote 12/30/2015 at 18:29 point

Contrary to intuition, if you design it right, Micro B is actually more robust than Mini B. Because the profile is lower, the force applied on insertion is closer to the PCB, which ends up being a much lower long term mechanical stress on the solder joints. Also if you look at the datasheets, Micro B connectors are typically rated for more insertions than Mini ones. For example the connector I used was from FCI, which rated it at 10,000 insertions, the comparable Mini B connector is only rated for 5,000 insertions.

There are also other benefits to Micro B over Mini B in that Micro B cables are generally lighter than Mini B cables, so the over all connected stress is significantly less. Despite its appearance in the photo, the stress of the USB cable on the card is negligible, the leaning you can see with the boards is actually because it wasn't soldered to the connectors very straight.

Finally, I mentioned this earlier, but I have the connector going straight up, as opposed to out the sides, because I don't want the cable to interfere with the other audio jacks above, or any of the knobs/controls below.

  Are you sure? yes | no

lj0000 wrote 01/01/2016 at 14:13 point

happy new year!

i have a usb audio board based on burbrown that sounds great. it does come with mini B connector and the reason given was its more sturdy and the connectors are larger, thus less noise. (not sure if its true) I am tempting to swap it to microB as its easier to get a micro usb cable nowadays.

when the manufacturer states the insertion rates, yes its true, however, in your case there is lateral cable stress. i have came across many mobile phone microB females that failed and thus the feeling of less reliable.

another idea would be to add a built-in hub so you can daisy chain them all!

sorry i missed the earlier comment on the connector straight up.

  Are you sure? yes | no

Daniel Wright wrote 12/29/2015 at 00:51 point

Do you have any plans on selling pre built boards, maybe without the 1/4" plugs soldered on??? I would be interested as I don't have a way to solder surface mount components..

  Are you sure? yes | no

Jacob Creedon wrote 12/30/2015 at 18:42 point

I currently do not have plans to sell any of these as I am not sure if there is enough interest in something like this to make it worth the effort. There is still a long stretch between something hacked together over a few weeks and something sell-able.

  Are you sure? yes | no

Michael Stone wrote 12/27/2015 at 20:40 point

Hey! I saw this an it reminded me of my PICxie Development Kit a made a while back this year :) Very nice work!

  Are you sure? yes | no

robheffo wrote 12/24/2015 at 00:19 point

I have been having a look and you could probably put together a mono 12AU7 tube amplifier on a square inch board also to hang two of them off those jacks

  Are you sure? yes | no

helge wrote 12/23/2015 at 15:12 point

Nice project. Looks like putting the USB connector on one of the other edges to get a 90° cable angle would make sense here. You should also get a hot air station and a hot plate for those connectors (pre-heat to 150-180°C from below, then finish it off with some air).

  Are you sure? yes | no

Jacob Creedon wrote 12/25/2015 at 01:55 point

I had thought of going right angle, however, I was worried about it getting in the way of the Aux and Send jacks above the channels (they aren't connected in the picture, but I do use them). Also, with these style mixers having it come straight up is the preferred method.

I was using a hot air station, but a hot plate is definitely on my radar to add to my workbench.

  Are you sure? yes | no

ajlitt wrote 12/22/2015 at 20:34 point

I had the exact same problem with that micro USB footprint and OSHPark.  Fortunately I noticed the tiny drills where I expected slots in the preview and made a new part with PTHs that would fit the tabs.  

The tabs fit tightly in the holes, which worked surprisingly well to align the signal pins.  Much better than using an all-SMT jack for hand assembly.

  Are you sure? yes | no

alpha_ninja wrote 12/21/2015 at 07:55 point

Please make sure to upload photographic or video proof of this project working by the next deadline (in about two days!)

  Are you sure? yes | no

Blecky wrote 12/07/2015 at 01:10 point

[verified: no design files missing]

  Are you sure? yes | no

alpha_ninja wrote 12/02/2015 at 00:40 point

This is your one-week reminder to update design documents: https://hackaday.io/project/7813-the-square-inch-project/log/28566-design-deadline

  Are you sure? yes | no

Greg Kennedy wrote 11/24/2015 at 01:27 point

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates