Got the XMOS 384KHz USB Interface
Updated 4.21.13
Follow the discussion of this board and XMOS technology in general in the diyaudio thread: [link].
The new board
The new chip from XMOS
Cannot tell from the chip markings what part is it. It is “missing” the part number. But it is definitely a “U” part as there is no separate USB controller chip. Here is the datasheet of one version of the part: [link]
The previous generation XMOS devices required a separate USB interface chip (foto from here: [link]):
The audio clocks. According to the datasheet, pin 1 is the enable pin and pin 3 is the output pin. Looks like the enable pin is controlled by the XMOS chip, enabling/disabling the clocks for the corresponding sample rate.
The local ultra low noise LDO (excuse the left over cotton fibers from my cleaning :-)). You can bypass the USB power by removing FB1 and provide external 5V.
The 2 LC filters for filtering the output from the built in DC-DC converters. Here is place to add larger caps and increase the filtering.
Solid ground plane. CN1 is for external powering (instead of using USB power).
If you read the datasheet and compare the topology of this board you will find that the manufacturer has followed the build and layout recommendations from XMOS. In fact it is so simple, that not following the manufacturer’s recommendations is kind of hard 🙂
The new XMOS chip has several advantages over the old device
- Built-in USB receiver
- Requires much less external components and thus it has been optimized to be implemented on a 2-layer board
- Built in voltage regulators. The internally generated regulated power is further filtered by external LC filters – Here is an area to mod: add capacitance to increase the filtering 🙂
- The clocks can be positioned much closer to the device than in the previous design
Apparently 384KHz support was added by diyinhk according to this lively discussion at diyaudio [link]
FEATURES OF THE MODULE (From the manufacturer)
- 6.5uVrms Ultralow noise LDO. -The TI LP5900 [link]
- Solid ground plane (a must for high speed digital circuit)
- No Via in active circuit (via inductance always create jitter problem)
- FOX Xpresso ultra low ppm oscillators and Murata capacitors sourced from Digikey USA. -The two Xpresso 22.579 2MHz and 24.576 MHz clocks. Not the ultimate in low jitter, but pretty low jitter. See the graph below
- Gold plated USB connector
- Compact size 50mm x 30mm. -That is even smaller than the Amanero which is 30×70 mm approx.
- USB powered but can be externally powered by removing FB1 and connect 5V to CN1 (warning: over-voltage or reverse-voltage can damage the XMOS chip immediately. Any modification will void item warranty)
- Can optionally install series resistor to I2S lines (by cutting the traces)
Comparing the Xpresso clocks with Crystek.
DEVICE DRIVERS
I first checked it by plugging it to a Macintosh computer. Native MacOS supports up to 352K and 384K sample rate.
On the PC, it requires device drivers.
Version 1.63.0 is the latest driver from Thesycon.
No indication of 352K/384K capability for WASAPI shared mode. This may in fact a limitation of Windows mixer as it expects to resample every audio stream to the selected sample rate. However, in WASAPI exclusive mode, this part (the mixer) is totally bypassed and the output sample rate from the player application is passed directly to the hardware.
The driver also supports ASIO
CONNECTING TO DAC
Connected the board to my old Buffalo II DAC (80 MHz clock) and tested all sample rates from 44.1KHz all the way to 384KHz. With the 80MHz version of the Buffalo II DAC, 352.8KHz and 384KHz work fine with oversampling turned off. All sample rates work as advertised. Modern designs are pretty robust, especially this version of the XMOS chip which requires only a few external components.
The socket in the XMOS device matches the socket pin arrangement for the latest version of the $99 ES9018 board and a ribbon cable can be used. For the Buffalo simple cat-5 twisted pairs can be used.
Here is an implementation from a reader with diyinhk $99 DAC board:
The XMOS is hiding…
Hi!
May I ask you a basic (FAQ?) question regarding this board?
Can this XMOS board play 32bit data?
I found some comments on the another bbs and described that XMOS can be played 32bit data despite it is unsupported.
I don’t know. It is not easy to test either. You will need a logic analyzer and see if there is any data on the high bits in each data frame…
I’m using this interface and I experience intermittent pops and clicks, not sure if its a lock issue, are you having this issue? When I use his isolated interface, there sound is crystal clear.
Never mind, I forgot to disable the onboard clock
Nowadays these interfaces are rock-solid. What DAC are you using?
I’m using the diyinhk es9018 dac with your software control, the problem resolved itself, after a reboot. I just built an enclosure for it. I was trying out implement full menu access and control from the remote, but it seems a full code overhaul would be required.
Glad to hear. Do you have any photos to share?. The thing about remote access for all the settings is that the screen is so small that you have to be close to the device and thus the rotary encoder seems adequate. I think what is needed is for remote access of the inputs and I’ll add that in some future version. With remote access of inputs you can set two inputs for the same source but different parameters and compare.
hi i sent a few pics to hifiduino@yahoo,let me know if you receive them
Hi, is this better than amanero ?
Also interested to hear any comparison between these similarly priced items (assuming group buy used on the Amanero).
I have both boards. The Amanero supports DSD and the current implementation of the XMOS board does not suppurt DSD. Both are capable of 384KHz PCM sample rate.
I suppose the sound quality is the same between them!? Using a separate PS involves removing a piece and soldering on the two connections. The Amanero I think is easier in this respect, using the pin headers for PS.
I think the biggest advantage the Amanero has is support for DSD. I would say that without careful listening, I can’t tell them apart. The XMOS is a second generation device and its simplicity of implementation is a plus; the Amanero is also a simple design and it does not use DC-DC converters.
Thanks for the answer. Not much between them then.
The Amanero not only offers probably the best DSD support available ATM but IMO it also provides far more flexibility to the DIYer thanks to its I2C command capability and triggers (DSDOE and Mute), the latter can be traded for external clock enable pins when using the Combo384 in slave mode (special firmware needs to be used), with this change MCLK pin becomes an input pin and external sync reclocking can be used which doesn’t make sense fo ESS async DACs but can make a lot of sense for other DACs from Wolfson, TI, AK, AD, etc.
Oh Yes, I forgot those features. In addition the DSD pin can signal relays to switch input lines when a DSD signal is present. This is not important with those DACs that share DSD with I2S but not all DACs share the DSD and I2S signals.
Hi,
would you have an idea as to why the xmos would cause pops and clicks, not experienced with the c-media?
I have not experienced pops nor clicks with my XMOS interface. What is your setup? ES9018 DAC?
yes i am using the ES9018 DAC
If you are experiencing pops/clicks with the XMOS and not with the c-media, then I would suspect the PC/driver side.
I know this is a little old….but the DIYINHK device will output TTL-level i2s? Meaning I can run it straight into my Buffalo?
Thanks!
Cool! Has anybody tried to install it with Android?
I am using this board with Windows PC and couldn’t see the 384 KHz Sampling rate listed in the windows Sound Properties for this device. I already installed the UAC 2.0 driver. How can I verify the 384 Khz PCM audio?
You need to an application that can output directly (without using the windows internal mixer -think it is called WASAPI exclusive mode) such as foobar and download a track with that sample frequency (and this will need a lot of tinkering to get it working)