I want to use PCM1808PWR ADC at 96kHz 24-bit to convert analog instrument signal to digital (in short I want to build USB audio interface). How should I send I2S output from ADC through USB port? I want to keep it as simple as possible, rather without software development. It is meant to be a single, cheap board with 2 or 3 IC's in conversion part of circuit.
1 Answer
Checking answers to a different question
Found the question Stereo I2S To USB Audio. Looking at the devices suggested in answers to that question to see if they will meet the requirements in this question:
- CM108 High Integrated USB Audio I/O Controller. Doesn't meet the requirements since:
- Mono recording only
- 48 kHz maximum Sampling Rate
- CP2615. Doesn't meet the requirements since 48 kHz maximum Sampling Rate. It is also marked as Not Recommended for New Designs.
Possible use of XMOS xCORE 200 based device
From further searching found some modules which are based upon the XMOS XU208. While the XU208 is a xCORE Multicore Microcontroller, XMOS provide reference software for USB Audio. E.g. see Application Note: AN01027 Porting the XMOS USB 2.0 Audio Reference Software onto XU208 custom hardware
An example module is XMOS XU208 32Bit 384kHz DXD DSD256 DSD reclock SPDIF USB I2S in/out PCB. That module could meet the requirements since since from the feature list:
- Support up to 32bit 384kHz 2 channel input and 2 channel output or DSD256(native) two channel output. I2S input and output is working at the same sampling rate.
- Supports a 96kHz LRCK (i.e. sample rate).
- With the DIYINHK firmware, no driver is needed for Windows 10/11,Mac,Linux. I.e. no software development.
- From the pictures of the PCB there are pads to connect the I2S signals and select the sample rate:
From the information on the DIYINHK webpage it isn't clear if the firmware supports I2S in both master and slave modes, or only one mode. The PCM1808 ADC is described as support both modes, so even if the DIYINHK supports only one mode the PCM1808 should be able to set to a compatible mode.
I2S
audio data interface format, whereas the question containsI2C output from ADC
. Can you edit to clarify which audio data interface format you intend to use. What is the difference between I2S and I2C (I2C vs I2S )? might help to explain the different in terminology. \$\endgroup\$