Building Pavouk's Async USB to I2S - diyAudio
Go Back   Home > Forums > Source & Line > Digital Line Level
Home Forums Rules Articles diyAudio Store Gallery Wiki Blogs Register Donations FAQ Calendar Search Today's Posts Mark Forums Read

Digital Line Level DACs, Digital Crossovers, Equalizers, etc.

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 13th July 2016, 06:18 AM   #1
diyAudio Member
 
Join Date: Oct 2012
Location: Taoyuan, Taiwan
Thumbs up Building Pavouk's Async USB to I2S

One day, I've decided to build Pavouk's USB to I2S project which my friend suggested me to do. This board including isolation of I2S which isolates the signal and ground from PC to DAC. And I send files to PCB maker for making customized PCB. After the PCB is done, it takes another months to collect the materials and finally, after making several mistakes, I started to solder the components. The easiest component was, surprisingly, the AT32UC3A3256 chip (it has 144 pins), and the most difficult component was the oscillator (4 pins only). (resistors and caps are between them)

The project page:
http://www.pavouk.org/hw/audiosystem...256usbi2s.html

The firmware was the one for Henry AudioUSB DAC 128 mkII with volume control fix. I programmed the FW in Windows 'cause it always shows error when I programmed in Ubuntu. When I connected it to the PC, it just works well. But Windows doesn't support UAC2 in kernel, I just able to play music in 16bit 44.1/48 kHz in UAC1 mode. I put it on my DAC (PCM1704) replacing XMOS. Surprisingly, it sounds better than XMOS (I do made an isolation circuit for XMOS using ISO7640FM). I thought it is due to bad component (maybe OSC?) in XMOS board or something wrong with my ear but I'm not sure for this. I played music in foobar in UAC2 mode through ASIO driver, unfortunately, it sounds worse and flat than in UAC1 mode which sampling rate just match the format of the music file.

This board just designed well but it would be great if it has more space for fitting different type of oscillators and bigger LDO chip. The size of 2.5 x 2.0mm is just too small and not available for hi-end oscillator.

This was my first cloning project of digital circuit.
Please feel free to give some suggestion.
Attached Images
File Type: jpg 5KnfHOgMnqazE6zpW15ukQ.jpg (126.1 KB, 461 views)
File Type: jpg 5jMu4BxSw0GMvKjJRbWyPu.jpg (164.4 KB, 455 views)
File Type: jpg 7hwpWvFqtHkOmfCAUetjGf.jpg (214.0 KB, 454 views)
File Type: jpg 4T06oFTZWX2seCXsjHpGjC.jpg (132.2 KB, 446 views)
File Type: jpg 6GGRRDGjnA8vviAsC72yK2.jpg (234.4 KB, 474 views)
File Type: jpg 75uIBoXNx1oRzOfbnGIRiw.jpg (210.4 KB, 153 views)
File Type: jpg 6wCAh1wuCXx2STKBR4gDRz.jpg (214.0 KB, 139 views)

Last edited by moses1202; 14th July 2016 at 02:10 AM.
  Reply With Quote
Old 13th July 2016, 03:23 PM   #2
diyAudio Member
 
Join Date: May 2006
Location: Holland
Quote:
it sounds better than XMOS

The Isolation breaks up ground loops between computer and DAC. This would explain the improved sound.


But there is more room for improvement.

In this design, the Atmel seems to run on a multiple of 12 MHz (internal frequency multiplier). It differs from the external audio clocks of 22.5792 or 24.576 MHz.

Similar situation with the XMOS, runs on a multiple of 26 MHz. This results in approx. 2000ps jitter on all I2S pins. Unless I am wrong you could have a similar issue with this application.

This jitter is added to the opto coupler jitter that is specified at approx. 1000ps.

So you could end up with approx. 3000ps of jitter on the isolated I2S interface signals BCK, WS, and DATA and approx. 1000ps jitter on the isolated SCK output.

Not really great isnít it?



So this is what I would suggest:

Use IL715 isolators instead, here is why (check the jitter specs):

https://hifiduino.wordpress.com/2011...or-i2s-or-not/


If I am correct these have (almost) the same pin layout so it should not be difficult to use these on the existing board.



Then we need to get rid of the 2000ps of jitter on the Atmel I2S pins. It can be fixed easily by synchonously reclocking the I2S signals. Using 3 x 74LVC1G79 flip flop for example. Data input goes to the Atmel I2S pin, clock inputs all go to pin 2 of IC3 (non-inverted audio clock).

The low jitter I2S signals can be taken from the flip flop Q outputs and fed to the digital isolator inputs.

These flip-flops only have 5 pins:

1 = Data input
2 = Clock input
3 = Vss (0V)
4 = Q output (non-inverted)
5 = Vdd (3V3 for example)

If there is an issue with phase (distorted sound) you might want to invert the audio clock that connects to the Flip-flops. With the XMOS all worked fine with an inverted audio clock routed to the XMOS and a non-inverted audio clock routed to the flip-flops.

The IL715 will add 100ps, you have to live with that, either way itís a significant improvement compared to approx. 3000ps jitter in the original design.
  Reply With Quote
Old 13th July 2016, 03:30 PM   #3
diyAudio Member
 
Join Date: May 2006
Location: Holland
I attached an oscillogram of the jitter that I measured on an I2S pin (BCK) of the XMOS. The jitter amplitude equals approx. 2 sub divisions (2ns or 2000ps peak to peak).

After synchronous reclocking with the 74LVC1G79 you would measure a single transient and greatly reduced jitter level.
Attached Images
File Type: jpg xmosbckjitter.jpg (96.5 KB, 118 views)
  Reply With Quote
Old 14th July 2016, 02:11 AM   #4
diyAudio Member
 
Join Date: Oct 2012
Location: Taoyuan, Taiwan
Thanks for detailed reply.
But,
Quote:
Originally Posted by ecdesigns View Post
The Isolation breaks up ground loops between computer and DAC. This would explain the improved sound.
If you see very close to the pic
Click the image to open in full size.
you'll find that (you are close to the screen, of course) I do made an isolation circuit when using XMOS. The ISO7640 chip just behind Pavouk's board.

Correct me if I got it wrong.

Last edited by moses1202; 14th July 2016 at 02:24 AM. Reason: Delete some comments
  Reply With Quote
Old 24th April 2017, 05:20 AM   #5
Mayday is offline Mayday  Sweden
diyAudio Member
 
Mayday's Avatar
 
Join Date: Mar 2004
Location: Sweden
Reviving an old thread, but I will be building two of these boards when I've recieved all parts and the PCB's.

Currently trying to get all SW running on Ubuntu 17.04 64bit.
__________________
The more you learn, the more you realize how little you know...
Revived my blogg
  Reply With Quote
Old 27th April 2017, 07:07 AM   #6
Mayday is offline Mayday  Sweden
diyAudio Member
 
Mayday's Avatar
 
Join Date: Mar 2004
Location: Sweden
Quote:
Originally Posted by Mayday View Post
Reviving an old thread, but I will be building two of these boards when I've recieved all parts and the PCB's.

Currently trying to get all SW running on Ubuntu 17.04 64bit.
Managed to break the OS lol
I have got the SW running on Linux mint 32-bit now though.
__________________
The more you learn, the more you realize how little you know...
Revived my blogg
  Reply With Quote
Old 27th April 2017, 03:45 PM   #7
lemon is offline lemon  Greece
diyAudio Member
 
Join Date: Apr 2009
It is interesting project.
You followed the exactly schematic like moses1202 or build different?
  Reply With Quote
Old 27th April 2017, 03:56 PM   #8
Mayday is offline Mayday  Sweden
diyAudio Member
 
Mayday's Avatar
 
Join Date: Mar 2004
Location: Sweden
I sent the .brd file to oshpark for fabrication.
So I suppose it is exactly the same.

I am waiting for the second shipment of parts, it should've arrived today...but Swedish postal service is not what it used to be...

AND, I haven't recieved the boards yet. I went with 2oz Cu so turn-around time was a bit longer.
__________________
The more you learn, the more you realize how little you know...
Revived my blogg
  Reply With Quote
Old 27th April 2017, 04:36 PM   #9
lemon is offline lemon  Greece
diyAudio Member
 
Join Date: Apr 2009
OK, we will wait for your feedback.

I have the curiosity, how easy will be the fw programming with Mint32, I have Mint32 on my PC but I am newbie with this, yet!
  Reply With Quote
Old 27th April 2017, 05:44 PM   #10
Mayday is offline Mayday  Sweden
diyAudio Member
 
Mayday's Avatar
 
Join Date: Mar 2004
Location: Sweden
Not sure tbh, it took me several days to get the sw installed and understand(I think lol) how to use it.
Completely new to this stuff as well. Searched around on the web, the most helpful was the github readme(s) and some search results I got when searching as problems/roadblocks occured.
__________________
The more you learn, the more you realize how little you know...
Revived my blogg
  Reply With Quote

Reply


Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Sonore Async USB-I2S interface with onboard OSF barrows Vendor's Bazaar 48 9th August 2016 01:35 PM
Building USB I2S Converter For TDA1541 DAC wandermatt Digital Line Level 2 27th March 2014 02:58 PM
Building USB I2S Converter For TDA1541 DAC wandermatt Digital Source 0 15th March 2014 05:41 AM
PCM2707 to Pavouk AD1865 I2S DAC ...it will work? rinox Digital Line Level 4 20th October 2013 01:53 PM
new async USB-I2S module Gluca Swap Meet 7 6th June 2012 06:05 PM


New To Site? Need Help?

All times are GMT. The time now is 03:39 PM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2017 DragonByte Technologies Ltd.
Copyright ©1999-2017 diyAudio

Content Relevant URLs by vBSEO 3.3.2
Wiki