What IC is used to send dig data from usb to DAC?

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Ive always been interested in learning more about the process of USB to DAC. I am attempting to teach myself about how USB actually sends and receives audio steaming data. Can anyone point me in the direction of a well adapted USB streaming IC, I am not even aware of what this type of IC would be called so I cant find any!
 
with the TAS1020B, it is called usb audio steamer, but it requires rom and programming. Firsttly I do not have a way to program it, and secondly I have never dont any kind of USB programming had have no idea where to start with the TAS1020B. will the TAS1020B or similar chip come with preloaded software to run with windows audio drivers or is this a blank chip that NEEDS programming to be use at all? are there any chips that actually come set up to interface with windows audio driver and then output a serial or "I SQUARED 2" interface?
 
Which makes a lot of scene for a company with equipment and experience behind them, but i have neither. I need something that an operating system, windows based is what I use, can recognize as an audio device and be used as a standard sound-card with windows. How much configuring and programming would be needed on my end if i ordered a usb to i2c chip from mouser or digikey.
 
basically as i said, I know very little about USB, but a decent amount about DAC and the audio process. My interest is rooted very firmly in diyaudio, and any IC i can buy that will allow me to feed the digital signal to the dac and by pass any interface/USB/ programming will help me tremendously.

Now I have after your last message looked into the USB to I2C devices on sites like mouser.com, but none are tailor made to work in a streaming audio application. They just list windows 7 (32-64bit) driver compatability and list a few applications that MIGHT be useful. None of which deals with audio.

Now are USB to I2C chips what i need to be looking into?
 
This won't be an easy project, usually USB controllers require firmware that "tells" it what kind of task to perform and how it will show up in windows for example. This will require a lot of SW programming to be done. This firmware is usually stored in an eeprom or an internal flash memory in the USB controller.

At work we use a Cypress (CY7C68013A) device to interface USB2.0 to MPEG + I2C and we found that it is no trivial matter to get it to work right!

The HW interface between a USB controller and a DAC IC could be as simple as an I2C connection to configure the DAC and an I2S connection to transport the audio data.
 
that is a perfect first build. I was hoping for a similar application but a higher bit and sample rate. full 24/96k would be perfect. how do I interface a DAC with a usb controller IC

The USB1.1 specs don't allow more than 16 bit/48kHz. In order to get past that you need an USB 2.0 device but for those there are no native drivers (in any operating system), so you need to provide those drivers too.
USB1.1 devices from TI don't require any controller to work.
 
its still a bit muddy in this thread

i2c is the 2 wire serial communications protocol used to program and control the device. I2s or IIs for short is the audio data format which has several incarnations depending on the dac being used

generally in PCM, the most common format this days it will contain

Master clock (MCLK)
Bit Clock (BCK)
Serial Data (SDATA)
Ground (GND)
 
The USB1.1 specs don't allow more than 16 bit/48kHz. In order to get past that you need an USB 2.0 device but for those there are no native drivers (in any operating system), so you need to provide those drivers too.
USB1.1 devices from TI don't require any controller to work.

incorrect

USB 1.1 (UAC 1.12 i think) will allow 96khz

UAC2 is native in mac OS and has been for years
 
Last edited:
no, its native for any operating system that complies with the standard just like UAC1, that being Mac OS and linux, just because windows has been dragging its feet keeping with the standard does not mean its not a native standard. the devices are limited to 16/48 not the standard any UAC2 standard device (and a few others) that is capable of 16/96, will do so even on a host that is only UAC 1.12.

any native standard requires that the code be part of the operating system to work, it just happens that win is useless in this regard, so useless its baffling

also i knew i was forgetting one above

MCLK
BCK
LRCK or word clock
SDATA
GND
 
Last edited:
This will require a lot of SW programming to be done. This firmware is usually stored in an eeprom or an internal flash memory in the USB controller.

At work we use a Cypress (CY7C68013A) device to interface USB2.0 to MPEG + I2C and we found that it is no trivial matter to get it to work right!

This is what I was afraid of, looking at professional DAC's ive notice chips like the TI tas1020b which require software programming.

Now I am not totally apposed to learning this (although my interest in this hobby does not lie with USB/DRIVER programming) but I have had very sparse luck when looking around for code/examples or anything that could set him in the correct direction.
 
Last edited:
Use the PCM2706... There is nothing to program, it just works!

no, its native for any operating system that complies with the standard just like UAC1, that being Mac OS and linux
So can you make a PCM2706 work with 24/96? If not, then UAC1 is worthless as "standard" because is not supported/recognized by cip manufacturers.
I can concot a "standard" tommorow and claim that MS "doesn't follow it". But if nobody else (but me) follows it, it is useless.
 
Last edited:
Use the PCM2706... There is nothing to program, it just works!

This is a very nice device, I wasn't familiar with it. Easy enough to build an application with. It is a SMD device so some soldering skills are required.

It doesn't do 24/96 but do you really want all the extra hassle just to extend the frequency range beyond 22KHz? Only bats will be able to hear that!
 
Use the PCM2706... There is nothing to program, it just works!


So can you make a PCM2706 work with 24/96? If not, then UAC1 is worthless as "standard" because is not supported/recognized by cip manufacturers.
I can concot a "standard" tommorow and claim that MS "doesn't follow it". But if nobody else (but me) follows it, it is useless.

haha yeah thats right, this 5+ year old (from a family nearly a decade old) device is limited and it has nothing to do with the UAC2 conversation. its a ridiculous argument, its like saying an SSD drive is useless if you cant make it pass its full bandwidth through a parallel port. the device hardware itself is not capable of 24/96 with any form of input or output, has nothing to do with the software
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.