Asynchronous I2S FIFO project, an ultimate weapon to fight the jitter

Hi Ian,

I am looking to set up the dual clock board to see if I have the same issue as the post above but also to compare/contrast the sound. Initially I have the 2 default clocks but I want to start planning a proper comparison and this means looking at the power supply.

so far I have...
1) Replaced the header with 3 x u.fl sockets (see pic below). I will be using the isolator board before the clock board (although perhaps this isn't the recommended route as it doesn't appear to be mentioned in the manual)?
2) Looked into changing the jumper settings for 45/49MHz XO's. I'm a little confused by the jumper settings. In the manual it says, for example, that for U1 the jumper should be tp3-4 for 22.xxMHz but then in the double-speed manual it says that for U1 the jumper should be between tp4-5 for 22 but between 3-4 for 45MHz. This seems to contradict each other but perhaps I may need to select frequencies with the button too. I'm sure it'll become obvious when I power it up

I can't find an answer to how to power the clock board directly as I'm guessing that it will be needed if I use the isolator board. Oliver from dvbproject asked a similar question and you said that you could pm him the details - I think I need to remove L11 but I didn't want to apply 5v before checking! ;-)

Cheers,
Crom

Hi Crom,

Sorry for my absence from the thread. I was out of town for ski :snowman:.

Let me answer your questions:

If you want to power the clock board directly with having an isolator board between FIFO, you don't need remove L11. The isolator will cut all electronic connections including power supply. So, please just go ahead with powering the clock board from its DC input connector.

In this case, there is also no need to power the isolator externally. The fifo and clock board will power it from either side via FFC cables.

Enjoy your project!

Ian
 
Last edited:
Thank you for your assistance wktk_smile. I ordered some shorter (10cm) u.fl cables (I tried 5cm but this was unfeasible when trying to connect everything - when I put everthing in a case I may attempt this again) and this has allowed the mclk to successfully obtain and hold lock across both DAC boards.

I have to say that I truly don't like those u.fl connectors!! Expensive and fragile - not good for my clumsy fingers ;-) but imho they do produce better result than just using ribbon connectors.

You can try the bigger diameter (178) u.fl cable for mclk, it works even better :)

Ian
 
Hello,

I have a question about the Sis570 clock. I want to build a sound server that resample everything to 32/358,8-384 with sox. I want to connect this server directly with i2s, but as i want to keep the server in a different box, i have to use a lvds transmitter/receiver.

I think i found somthing thas is suitable with the wandboard and community squeeze operating system as it offers the options i want. I ask some precision with the compatibility of the wandboard with i2s and lvds, i they answer this (CSP is the optional card they develop) :

As i'm not sure to understand and not familiar with that, if i want to use this configuration, i have to connect the locale clock to their board and to the dac, could the Sis570 board do that ?

Why don't you just use an USB to I2S converter such as amanero or waveIO?. This way you could have your DAC-FIFO-SI570-USB/I2S CONVERTER in one box and the wandboard in a separate box working as streamer connected to the DAC box trough a USB cable. I'm using that setup and SI570 works great (only difference is that I'm building a one-box solution, so everything is integrated).

Besides, CSP is istill under developemnt and it will take time to be available, with a USB converter and the wandboard as it comes you are ready to go.

EDIT: Forgot to mention that, the whole point of the CSP board is to use it as a DAC, paired with the core module of the wandboard working as server/player, so if you already have your own DAC you don't really need it.
 
Last edited:
...I have a question about the Sis570 clock. I want to build a sound server that resample everything to 32/358,8-384 with sox. I want to connect this server directly with i2s, but as i want to keep the server in a different box, i have to use a lvds transmitter/receiver...

Why don't you just use an USB to I2S converter such as amanero or waveIO?. This way you could have your DAC-FIFO-SI570-USB/I2S CONVERTER in one box and the wandboard in a separate box working as streamer connected to the DAC box trough a USB cable...
+1 for Alcaudon setup

I'm using a similar setup: Wandboard-Amanero Combo USB-FIFO-Isolator-Clock-PCM/I2S-DAC.
Wandboard is still out of the box but I also plan to have a one box solution with an USB port for an external USB-Drive.
 
+1 for Alcaudon setup

I'm using a similar setup: Wandboard-Amanero Combo USB-FIFO-Isolator-Clock-PCM/I2S-DAC.
Wandboard is still out of the box but I also plan to have a one box solution with an USB port for an external USB-Drive.

Same as I'm using, except that my DAC is a BIIISE and I don't need Ian's I2S-PCM driver board. Anyway, I really should put myself in the waiting list for one because I'm sure that sooner or later I will feel the urge of building a NOS DAC ;).

Ian's stuff and community squeeze are the best two things that could happen to us poor mortal DIYers. Thanks Ian!!! :D.
 
I agree with you, quiet now it's more simple to go with usb... it's sure i will have to use it at the beginning, it's also a better idea as i'll have to wait a card that still not available yet and is redundant for me as it's include a useless dac.
In my configuration i want to keep the sound server external. I also want a dac with two input, as i also need to connect my computer on it with usb.

I see the psaudio i2s with hdmi spec and some sound server using it (the sonore for exemple) i want to give him a try and keep the usb board to use with my cumputer. A compatible board for my dac is far less expensive than an usb interface (DAC - Aune kit Module d'entrée HDMI vers I2S) and if these dev boards like wandboard or raspberry pi have direct i2s out, why not use it ? Also it seems, if what i read is not ********, a better quality connection than usb.

Datashit say that the sis570 have a mclk optionnal out, but it need to be connected very short... not very good for me if i want something external. Is their a way to get a proper clock outpout with a connector or am i doom to keep all the stuff integrated in one enclosure ?
 
@Hochopeper - wld you mind adding the answer to the wiki (or updating links to new manuals if there are any)? I'm happy to help with wiki if ok with you.

Hi Crom,

I didn't notice this earlier as I haven't had time to actively follow this thread lately. I think most of the manuals are up to date, I'll double check them this weekend though, you're welcome to edit the wiki page if you find any mistakes or things, it's a public page for benefit of all so any help is appreciated :cool:



@all

In other news, I have ordered some prototype PCBs for a PSU design that I hope might be of use to FIFO builders ... two isolated supplies on one PCB (one for each side of the isolator board ;)). LM317 pre-regulator and TPS7A4700 output. By using pre-regulator we get additional PSRR at audio freq but also ability to control volt drop over the TPS7A4700 so that it's not trying to dissipate too much power itself. Will have positions for CRC snubber between transformer and rectifier also. Will post back here with details when I have built and confirmed the prototype is working! I'll also be building some of the tools that Frex has designed for PSU noise measurements so we can see how close we get to datasheet spec for the regulator.

Regards,
Chris
 
Hello chaps. I'm a bit late for this party, but better late than never!

I've spent a number of hours skimming the various threads and the wiki on Ian's FIFO project and I've just signed up to the current waiting list.

Can I just outline my proposed use of the FIFO to see if I've grasped the salient information. I'm planning a network renderer/dac. I have no need for spdif etc. inputs and I will derive my i2s signal from a Raspberry Pi (RPi) or Beaglebone Black (Bbb); I've not tried the Bbb yet but have a couple of RPi-based renderers.

Question #1. The i2s available from the RPi doesn't have MCk; I assume that this doesn't matter with the FIFO project because it's all going to be reclocked with a master MCk.

For the DAC component I plan on using one of these;

SABRE HI END DAC 24bit - 192khz with ES9023 WM8804 and i2s input / diy DAC | eBay

connected via the "low noise, high bandwidth UFL connectors" on that DAC board (same connectors as on Ian's modules I believe?). I also believe the DAC module would slave to the FIFO master clock?

I will be streaming files with either 16 or 24 bit depth and all sampling rates between 44.1KHz and 192KHz, randomly selected from the music library. I'm unclear whether I should go for the twin clock module or the Sil570 module?

I want to experiment with batteries and regulators so need to include a battery management board and some TPS7A4700 reg boards; how many TPS7A4700 reg boards would I need for a FIFO and clock board, I assume 2?

Do I need an isolator board?

Sorry for having lots of questions but there is so much information to wade through.

Thanks for your help

Ray

 
Hi Crom,

I didn't notice this earlier as I haven't had time to actively follow this thread lately. I think most of the manuals are up to date, I'll double check them this weekend though, you're welcome to edit the wiki page if you find any mistakes or things, it's a public page for benefit of all so any help is appreciated :cool:

Thanks Chris, I've added a FAQ section but please re-arrange into the sub-projects if you feel it'll be easier to read - I couldn't decide which was best. I'll add to it as i come across stuff.
 
I'm only a beginner on this journey but hopefully this will be useful to you...

Question #1. The i2s available from the RPi doesn't have MCk; I assume that this doesn't matter with the FIFO project because it's all going to be reclocked with a master MCk.

I use the clock board mclk output to feed the dac and just the i2s signal from the waveio board in my implementation - should be the same with you I think.

For the DAC component I plan on using one of these;

SABRE HI END DAC 24bit - 192khz with ES9023 WM8804 and i2s input / diy DAC | eBay

connected via the "low noise, high bandwidth UFL connectors" on that DAC board (same connectors as on Ian's modules I believe?). I also believe the DAC module would slave to the FIFO master clock?

I can't get the link to work but yes, sounds right. I'd use u.fl connectors and certainly with my implementation 10cm or less worked perfectly.

I will be streaming files with either 16 or 24 bit depth and all sampling rates between 44.1KHz and 192KHz, randomly selected from the music library. I'm unclear whether I should go for the twin clock module or the Sil570 module?

I am still experimenting (having got both). 570 will be cheaper option as it has clock included.


I want to experiment with batteries and regulators so need to include a battery management board and some TPS7A4700 reg boards; how many TPS7A4700 reg boards would I need for a FIFO and clock board, I assume 2?

I think you only need one reg board for the 570 board. Buy as many battery modules as you want to use for power supplies.

Do I need an isolator board?
No but it's a nice to have. It does increase the number of power supplies you need as you will need to separately power the clock board.

Good luck with it all...it's a great project!
 
No but I think I've found the one. Not entirely sure about all the fancy selling ;-) but the connections should be fine and it certainly looks like you can re-clock it from Ian's boards. I'll be very interested in your project when you get going as I've got a pi sitting doing nothing at the moment.
 
Hello chaps. I'm a bit late for this party, but better late than never!

I've spent a number of hours skimming the various threads and the wiki on Ian's FIFO project and I've just signed up to the current waiting list.

Can I just outline my proposed use of the FIFO to see if I've grasped the salient information. I'm planning a network renderer/dac. I have no need for spdif etc. inputs and I will derive my i2s signal from a Raspberry Pi (RPi) or Beaglebone Black (Bbb); I've not tried the Bbb yet but have a couple of RPi-based renderers.

Question #1. The i2s available from the RPi doesn't have MCk; I assume that this doesn't matter with the FIFO project because it's all going to be reclocked with a master MCk.

For the DAC component I plan on using one of these;

SABRE HI END DAC 24bit - 192khz with ES9023 WM8804 and i2s input / diy DAC | eBay

connected via the "low noise, high bandwidth UFL connectors" on that DAC board (same connectors as on Ian's modules I believe?). I also believe the DAC module would slave to the FIFO master clock?

I will be streaming files with either 16 or 24 bit depth and all sampling rates between 44.1KHz and 192KHz, randomly selected from the music library. I'm unclear whether I should go for the twin clock module or the Sil570 module?

I want to experiment with batteries and regulators so need to include a battery management board and some TPS7A4700 reg boards; how many TPS7A4700 reg boards would I need for a FIFO and clock board, I assume 2?

Do I need an isolator board?

Sorry for having lots of questions but there is so much information to wade through.

Thanks for your help

Ray


For Q1, please search my posts in this thread, I hooked up rpi and fifo successfully.
mck is not needed if i2s is feeded into fifo via backdoor modded interfaceboard.
 
For Q1, please search my posts in this thread, I hooked up rpi and fifo successfully.
mck is not needed if i2s is feeded into fifo via backdoor modded interfaceboard.

Thank you, very helpful; I haven't got that far reading through the thread yet!

I know that a recent update of the Raspbian kernel (3.10 I seem to recall) has i2s output enabled, so do I still need your version?

I need to find out about the 'backdoor' now as I had assumed just feeding i2s to the FIFO board would suffice.

BTW, I use GMediaRenderer (the resurrected, bug-fixed version) to make my rpi into a headless upnp/dlna renderer. Has worked perfectly.

Ray
 
For Q1, please search my posts in this thread, I hooked up rpi and fifo successfully.
mck is not needed if i2s is feeded into fifo via backdoor modded interfaceboard.

From my reading on the i2s backdoor earlier in this thread it would appear that it is only required if you're using the spdif interface board to provide 'conventional' inputs; I only plan to have a network feed via the rpi so I think I just need to route the rpi i2s output straight to the FIFO board?

Thanks

Ray
 
From my reading on the i2s backdoor earlier in this thread it would appear that it is only required if you're using the spdif interface board to provide 'conventional' inputs; I only plan to have a network feed via the rpi so I think I just need to route the rpi i2s output straight to the FIFO board?

Thanks

Ray

Ray,

You're right, if rpi is your only source there is no need for the spdif interface board.

Chris
 
I think I'm getting a good grasp of this project now, though some of the very technical stuff goes over my head.

Another question if I may; is anyone running the whole solution from batteries? I'm wondering about using batteries for the FIFO and DAC boards. I've seen mention of LiFEPO4 batteries but these seem to be targeted at the clock modules.

Would NiMh cells be suitable; it's easier to construct the right voltage modules with 1.2V cells. I've used them a lot in radio controlled models and found them reliable.

Alternatively, some of the Salas designed shunt reg boards will provide the power...

Sorry if this has been addressed before but I still have a long way to go to read right through the threads and my interest is now well piqued.

Ray
 
I haven't experimented much with batteries but will do. From what I remember the Lifepo's were selected because they sounded best - but make sure that you buy from reputable dealer (link is in here somewhere or on dvbprojekt's blog on this site). I don't see why you can't run the whole thing from batteries. Check out how fussy different batt types are about their charging - again there was quite a detailed discussion earlier in this thread. There was also something about using a fuse inline when testing to safeguard the boards...from qusp I think.