Decent affordable DAC for PC?

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
So, how does I2S work in practice? Take for example the RasberryPi board with the PS1's DAC (schematic @ http://feuerbacher.net/DogBreath/PS1/output/AusgangsstufePS1.jpg )

What has to be connected to where, and what else is needed? (other than power, of course).

RaspberryPi as of the currently available information does not seem to have I2S taken to the external header, if I look correctly. But all this is preview information, we have not seen the final board yet. But the pins are present, hooked to TLW4030 codec directly.

Here is an insightful discussion on hooking beagleboard to external codec, regarding changes in the alsa linux driver. The point is their external codec has a different master clock frequency than TWL4030 and requires re-configuring the clock divider of OMAP. Most likely you would have to do the same as the master clock 25MHz of TLW4030 is very rare among standard audio codecs.

Output frequency configuration for I2S in beagleboard? (underrun problem) -- ALSA Devel

This about describes the level of complexity you would be faced with. No rocket science, but nothing trivial either. Plus there is the wonderful alsa-devel mailing list where you can ask the board driver developers for help. If you are fine with this level of expertise, your project will most likely be successful. If not, I would not pursue this route.
 
OK, i've had a decent look at that thread, and also found this post which explains the physical output. (4 data pins and 4 grounds, AFAICT).

When they are talking about the codec, i guess this is what is controlling the hardware that deals with outputting the I2S data from the audio stream etc? And this hardware is seen by the OS as a soundcard, right?

Looking round the post i linked and DAC schematic (+ related DAC datasheet), i have figured out what is going on with most of the pins.. but i'm not sure what the 'PD' pin would be, and idea?

Whilst i can't be certain since i haven't started looking at it from step 1-- and sure there will be some 'growing pains'-- I am relatively comfortable with that complexity. And definitely willing.

Are there any cheaper boards out yet with I2S output? (all i really need is I2S and USB2 out) And do literally all somewhat-modern DACs take I2S input?? IE if i go the I2S route i can be looking for what specific chip i want without having to worry about compatibilites etc.
 
I thought you were looking for a cheap plug-and-play solution with reasonable performance...

If you go with I2S yes, you have the option of building with a zillion chips, but as phofman says 'No rocket science, but nothing trivial either.' You can easily end up with degraded performance due to PCB layout or other factors if you're a novice.

In your position I'd buy the Behringer to have something to listen to, it's UKP22 from Amazon and I'd get a PCM1794 or what-have-you from TI as a sample (yes they'll give you one if you register, and a PCM2706 to recover I2S from USB) and mess around building it at my leisure (while listening to the Behringer).

:)

@verdec No problemo.
 
Last edited:
Member
Joined 2011
Paid Member
I was going to suggest the FiiO D3, but it does not have a USB input.
There are a lot of decent USB DACs based on the TI PCM27XX series. They sound quite good. Maybe something like the MUSE DA20. Have a look on eBay.

HotAudio.com (Dave) sells one based on the PCM 2705, called the DAC Destroyer, which goes for $70. I have not heard it myself because I own one of his DAC WOWs (which is fantastic), but lots of people seem to like the value the Destroyer offers. Dave's a great guy to deal with, too. He makes them all by hand and obviously takes great pride in his work.
 
Last edited:
When they are talking about the codec, i guess this is what is controlling the hardware that deals with outputting the I2S data from the audio stream etc?

In this context codec means the integrated circuit - DAC, often combined with ADC. Usually the codec is controlled via I2C bus (or a similar serial protocol) which handles digital volume control, muting, pre-emphasis, etc. Take a look at some AKM datasheets.

The usual audio codecs accept I2S input format. There are codecs with Intel HD audio inputs (often from Realtek) but these are used on motherboards only. Again, take a look at the wide selection of AKM codecs, they have detailed datasheets online.

And this hardware is seen by the OS as a soundcard, right?

A sound card consists of two major parts:

1. Communication controller (PCI controller, USB device controller). On one side it communicates with the PCI (PCI bus, USB bus, PCI-e bus), on the other side it communicates with codecs (I2S for data + I2C for control, Intel HDA for data+control)

Example: Envy24 for PCI, PCM2706 for USB, integrated Intel HDA controlled in intel south bridge, etc.

2. One or several codecs (ADCs, DACs). If they provide some control functions and these functions are hooked to the communication controller, the driver can operate these functions via the controller (I2C, GPIOs, etc.)

Optionally there can be SPDIF transceivers (e.g. AK4113/4/7), DSP processors etc.


Looking round the post i linked and DAC schematic (+ related DAC datasheet), i have figured out what is going on with most of the pins.. but i'm not sure what the 'PD' pin would be, and idea?

Power down?


Whilst i can't be certain since i haven't started looking at it from step 1-- and sure there will be some 'growing pains'-- I am relatively comfortable with that complexity. And definitely willing.

Well, good to hear that :) But you have been warned :)

Are there any cheaper boards out yet with I2S output? (all i really need is I2S and USB2 out) And do literally all somewhat-modern DACs take I2S input?? IE if i go the I2S route i can be looking for what specific chip i want without having to worry about compatibilites etc.

This is an interesting page too Adding a new DAC - Ubicom Developer

I tried to google some brand new arm linux board under 100USD, to no avail. There is a used beagleboard on ebay. If you want to go this route, you might want to wait for RaspberryPi which should be really inexpensive.

Twitter
 
Last edited:
@counter culture; thats a decent suggestion. Thanks for the info on the TI chips. I guess the PCM2706 isn't part of the samples program. If true, where should these be acquired? is ebay ok??

@phofman; ..powerdown sounds sensible. Yes the rasberryPi looks perfect, but its not out yet so.. 'don't count your chickens' type thing. I see there has JUST been a new board, the 'BeagleBone' released which is ~$88. Any idea if this has I2S out? i couldn't find any info about that yet, but otherwise fits the bill.
And hey, if you don't do things that are out of your comfort zone, you don't improve, right? :)
 
I have the PCM2706 (USB->I2S) and PCM1794A (I2S DAC) and am looking at options of what to do and have a question about a possible pairing of the PCM2706 with the playstation as a USB DAC.

Given a correct circuit for the PCM2706, would i be able to just connect the 4 I2S lines directly to the AK4309AVM (+remove original I2S connections) and use it otherwise as-is on the playstation? (for USB DAC only).
 
The FIIO D3 does really sound good--$28 on amazon. It works up to 192Khz @ 24 bit. I have tested it with up to 96/24 and it works fine.

It sounds better with an external regulated power supply; it comes with a cheap switching 5v wall wart. I got the 12V 3A pyramid regulated power supply off amazon for $28--the one that people rave about for use with the $300 or so V-DAC. Just use a voltage regulator like the LM7805 or the LM317T--along with the .33uF and .1uF input/output caps--to bring the voltage down to 5 volts. There is noticably more clarity, separation, less mudiness with this mod.

It has SPDIF input. My computer has a SPDIF output so it works great for me.. you can get a SPDIF to USB board or device and use it with it if needed.
 
Last edited:
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.