XMOS-based Asynchronous USB to I2S interface

I have ordered a buffalo III and plan to use it with my waveio. I am trying to figure out if I should use the isolated outputs or not. Since the jitter reduction of the es9018 is supposed to be very good would the best solution be to use the isolated outputs? I will then get the isolation from the USB connection and the extra jitter introduced by the isolator will be taken care of by the es9018?

What is your opinion?
 
Hello ENSen,
After listening to the BuffIII with WaveIO for several months now, there is in my opinion no perceptible difference in sound quality between micro-coax or NVE isolator output. BUT: this is only my opinion. I did not have measured it. Maybe other members could shine their light on this.
 
Hey ENsen,

You could also pick up a FIFO from iancanada on his GB II? They are running in sync mode to the Buff III using the MClk from the FIFO. It has a clock for each freq band and it's multiple.
Ill be doing this once it arrives.
Source is an Alix 2D2(mpdpup)> WaveIO> FIFO> B III> tube I/V. Will see how it goes.

Just a thought!
 
Do you think that kind of battery will be OK for interface?:

Speed Power online store

I think it should last for 10-15 hours of listening before recharging? There would be no problem with voltage drop during that time? I only tried gel acumulators 6v or 12V but its too much for XMOS interface and I would rather avoid any regulators.
Can I buy that linked battery and be sure its enough for interface? Thank you.
 
ENsen...

I have ordered a buffalo III and plan to use it with my waveio. I am trying to figure out if I should use the isolated outputs or not. Since the jitter reduction of the es9018 is supposed to be very good would the best solution be to use the isolated outputs? I will then get the isolation from the USB connection and the extra jitter introduced by the isolator will be taken care of by the es9018?

What is your opinion?

Something to consider: you may also want to try using your B-III in synchronous clocking mode with the Wave IO. To do this, you remove the Trident reg which powers the B-III's onboard master clock, and then provide the masterclock from the Wave IO. Running the ESS chip this way disables the chip's asynchronous sample rate converter and DPLL, and some believe the ESS DAC sounds better (more natural, better timbre) running this way (but only if the source is low jitter in the first place). You can find details on how to do this in the B-III threads.

My preference with my B-II (and a different XMOS USB interface) is to use synchronous clocking, and a non isolated interface between USB receiver and DAC. Then I power my USB receiver board with two isolated supplies (one solely for the oscillators) and turn off the +5VDC power from the computer side. Try it, with a low jitter source, you really do not "need" the ESS' "jitter reduction", and that "jitter reduction" circuitry may be doing more harm than good.
 
Dear Lucian,

I received my board today and have no words enough to thank you.

The packaging is excellent, the board itself very well designed and crafted, and last but not least... super duper communication with you made all this experience a very enjoyable one.

Do please sign me up for Revision II, I look forward to getting one of those whenever you have them built.

cheers,
Pepe
 
Hello ENSen,
After listening to the BuffIII with WaveIO for several months now, there is in my opinion no perceptible difference in sound quality between micro-coax or NVE isolator output. BUT: this is only my opinion. I did not have measured it. Maybe other members could shine their light on this.

Thanks for sharing your experience.

Hey ENsen,

You could also pick up a FIFO from iancanada on his GB II? They are running in sync mode to the Buff III using the MClk from the FIFO. It has a clock for each freq band and it's multiple.
Ill be doing this once it arrives.
Source is an Alix 2D2(mpdpup)> WaveIO> FIFO> B III> tube I/V. Will see how it goes.

Just a thought!

Thanks for the suggestion but I am trying not to add features or projects right now since I do not have the time for it. Otherwise Ian's FIFO would be a very interesting project. For now i will just use the WaveIO and connect it directly to the BIII.

Something to consider: you may also want to try using your B-III in synchronous clocking mode with the Wave IO. To do this, you remove the Trident reg which powers the B-III's onboard master clock, and then provide the masterclock from the Wave IO. Running the ESS chip this way disables the chip's asynchronous sample rate converter and DPLL, and some believe the ESS DAC sounds better (more natural, better timbre) running this way (but only if the source is low jitter in the first place). You can find details on how to do this in the B-III threads.

My preference with my B-II (and a different XMOS USB interface) is to use synchronous clocking, and a non isolated interface between USB receiver and DAC. Then I power my USB receiver board with two isolated supplies (one solely for the oscillators) and turn off the +5VDC power from the computer side. Try it, with a low jitter source, you really do not "need" the ESS' "jitter reduction", and that "jitter reduction" circuitry may be doing more harm than good.

I have read about this solution but since I use one coax and three toslink inputs apart from the WaveIO I can not remove the on-board clock (unless I would go for the Ian FIFO solution as per PET-240's suggestion but that will be a future project).
 
USB power...

barrows
"and turn off the +5VDC power from the computer side"

Please could you tell me how you do that in Windows 7?

Many thanks
Jonathan


I use a custom music server running Voyage/mpd built for me by Sonore. It has an onboard, audiophile, USB output card, and this card has a switch on the back panel which allows for the USB output voltage to be defeated.
The easiest way to block the USB voltage on an ordinary PC would be to cover the power pin on the computer end USB plug with a small sliver of kapton tape. I have done this before as well, a little fiddley, but it can be done with a pair of tweezers and a steady hand.
 
I can't help thinking there has to be a way to do it in software in Win7 but I bet Microsoft's USB drivers don't offer end users that ability.
It's highly doubtful that the USB host hardware has the ability to control power for individual USB devices without completely shutting them down. So, it's not a matter of MS drivers so much as a general hardware limitation.

However, since you're building your own USB device, you have the option of disconnecting the USB power trace on the device itself. You could also make a USB cable with the power line cut.
 
Member
Joined 2004
Paid Member
There is some power management stuff in the usb spec, but its the device, not the host that is expected to do something. Usually is used as part of the standby function of the host. What the host has is an electronic circuit breaker that tells the host a device has failed. That is all at the hardware level.
 
The easiest way to block the USB voltage on an ordinary PC would be to cover the power pin on the computer end USB plug with a small sliver of kapton tape. ..

Also very easy way is to build your own USB cable. I cut connectors off a usb cable, and replace the cable with CATV twisted pair. (use plenum version which has teflon dialectric). To run without power, just eliminate the +5v line leaving 3. instead of twisted pair, braid. Keep it as short as possible. I run with 6 inches.

The home built cable gives a nice little boost in SQ.
 
Dear Lucian,

I received my board today and have no words enough to thank you.

The packaging is excellent, the board itself very well designed and crafted, and last but not least... super duper communication with you made all this experience a very enjoyable one.

Do please sign me up for Revision II, I look forward to getting one of those whenever you have them built.

cheers,
Pepe

Hello Pepe, thank you for letting me know! I do not know for sure when second revision will show up since there are many features that I want to add and sometimes are overwhelming me but when I have something to show, it will be posted here!

@jrling: dear Jonathan, you do not need to cut USB +5V wire as long as placing the jumper of J12 pin-header on EXT side will make the work for you... That's because all the USB5V signals (from USB-B connector and J1 header) are wired together through D3 and D4 diodes and connected to pin 1 of J12 pin-header and, in the same time, to VBUS pin of ULPI chip (U3). Since all the chips on WaveIO can be powered by using USB 5V (J12 = USB) or EXTernal power supply (J12 = EXT) there will be no effect if USB5V is applied to VBUS and external voltage is absent as long as there are no 'living' chips there to process that information.
Hope it helps,
L
 
Last edited:
No higher bitrate than 16 connecting via SPDIF-Buff III possible

I got it last monday. The pcb is beautiful :)
I'm waiting to build the psu, as I wont even hook it up usb-powered. ;)

I also use xxhighend player, so KS at 176.4k is very important to me as well, and I hope the 24 bit issue will be resolved soon. Til then i'll use only hardware attenuation.

Hi Telstar,

Please look at this topic for a solution.
USB-I2S interface WAVE IO connected to Buff III does not work in KS

Ed
 
Hello Pepe, thank you for letting me know! I do not know for sure when second revision will show up since there are many features that I want to add and sometimes are overwhelming me but when I have something to show, it will be posted here!

@jrling: dear Jonathan, you do not need to cut USB +5V wire as long as placing the jumper of J12 pin-header on EXT side will make the work for you... That's because all the USB5V signals (from USB-B connector and J1 header) are wired together through D3 and D4 diodes and connected to pin 1 of J12 pin-header and, in the same time, to VBUS pin of ULPI chip (U3). Since all the chips on WaveIO can be powered by using USB 5V (J12 = USB) or EXTernal power supply (J12 = EXT) there will be no effect if USB5V is applied to VBUS and external voltage is absent as long as there are no 'living' chips there to process that information.
Hope it helps,
L


Hello Lucian,

I would like to report something on the line you commented. It might actually matter whether you have wired or not the +5V line in the USB cable. Let me first describe my setup and then come back to this point:

.) WaveIO board externally powered with a Twistedpear Placid regulated power supply and connected to the DAC via the isolated SPDIF output. My DAC is a Buffalo32S DAC from TwistedPear (I also have the BuffaloI, BuffaloII and BuffaloIII)

The WaveIO produces gorgeous liquid music from my laptop Macbook Pro with Snow Leopard, any player you name it (Amarra, Pure Music, Audirvana+, Fidelia, Decibel,....). It works wonderfully at any frequency (44.1Khz to 192Khz) and any bit depth. Moreover, I succesfully managed to activate the so called integer mode in order to tell my Mac to transfer the music file (represented as integer numbers) without converting them to 32 bit floating point and then back to integer, as my Mac usually does. The result is fantastic, I have never ever heard playing so well Pure Music for that matter.

I have also tested to play music connecting my modified Squeezebox Touch (software mods: TT3 and Triode digital out plugin) to the WaveIO with USB. The music flows magically, it still remains to be seen whether it is better than the direct connection with SPDIF to my DAC.

As you probably know, it is possible to connect an IPAD to an external USB device via the Ipad camera connector. It basically ads an USB output that can be used to play music. The thing is that once I connect the USB cable coming from the WaveIO to the Ipad, this tells me that there is an external USB device connected that consumes too much to use it and so it does deactivate it. How come does the Ipad can think that there is an external device consuming any power if that device is actually powered by itself with a external power source ?. Hope it is clear what is happening .... Perhaps if I could "cut" the power in the USB somehow that would not happen.

Above all, I just want to thank you Lucian for that marvelous piece of work that is the WaveIO. I am looking forward to add the external FIFO clocking from Iancanada once I have the TentLabs clocks.

best regards
Pepe
 
Hello Pepe,
perhaps it's related to USB descriptors that WaveIO is reporting due enumeration process. Even if I didn't dig too much into XMOS firmware, I remember seeing somewhere that there was one value (or more?) that is/are telling to host the amount of current needed for the device plugged into USB port to function properly. Being a hungry one, WaveIO reports 500mA which I suppose it's too much for iPad (a battery powered device) to give it a shot. Maybe from the hardware point of view, the power issue is solved with your Placid... but the software doesn't know this yet :)
Anyway, thank you for telling me! I'll look into the firmware and on next revision I'll set descriptos accordingly!
Kind regards,
Lucian

Edit: I know that it's too early (given the fact that you received your WaveIO recently) but if I'll find those values and make the changes accordingly, you could send card back to rewrite the firmware hoping that you can use WaveIO with iPad too. Anyway, if those values will be changed, there's no going back to power WaveIO through USB Bus because less than 500mA is a no go for it :)
 
Thank you Lucian,

It all does make sense to me, I am always learning and having fun with it.

It is a very good idea if you would mod the firmware so it could report something like close to zero current needed IF the WaveIO is externally powered. That´d be awesome. Please let me know once you have any solution developed and I will send you my board to rewrite the firmware. Very kind of you for providing this opportunity.

Just more question that it is perhaps already answered somewhere else: what is the maximum speed of the isolated SPDIF output ?. I believe that it is limited by design to 192Khz...

best regards,
Pepe