it would be nice to add aes output.
and that there would be the possibility of the board working from 3.3v (Lifepo4 power).
With Best Regards.
Thanks hifir,
It will work from either external 3.3V rail or from GPIO.
But I don't think there is space on PCB for AES XLR connector. You can use an adapter if you really need AES.
Regards,
Ian
ok, this project will be an addition to fifopi ultimate?Thanks hifir,
It will work from either external 3.3V rail or from GPIO.
But I don't think there is space on PCB for AES XLR connector. You can use an adapter if you really need AES.
Regards,
Ian
hi Ian, two questions. Can automatically switch to S/PDIF if presents
. Can automatically switch to USB streamer when powered
. Possible to have a control panel
Ian
1. will it be possible to use RPi pins to select the source (not just auto if present in S/PDIF or USB channels)?
2. how many GPIO free pins be available in the RPi?
thank you
Hi Ian,
Will this clock work with the new transport/ receiver you’re making?
Low jitter abbasaudio tube clock for CD,upgrade,ECC88 11,2896 mHz Low jitter abbasaudio tube clock for CD,upgrade,ECC88 11,2896 mHz | eBay
Will this clock work with the new transport/ receiver you’re making?
Low jitter abbasaudio tube clock for CD,upgrade,ECC88 11,2896 mHz Low jitter abbasaudio tube clock for CD,upgrade,ECC88 11,2896 mHz | eBay
Thank you so much ilgavro. I'd be very interested in evaluating it.
I can send it back to you when I finish the test. Please let me know.
Regards,
Ian
@Jacklee worked out getting a Neutron Star to work with the FiFoPi and posted info in this thread:
IanCanada's Latest RPi GB Goodies Impressions... and your tweaks, mods and hints...
Either search for Jacklee or for Neutron.
Greg in Mississippi
I like my RPi DAC HAT and FifoPi combinations.With low jitter XOs, good power supply and sync mode, I really enjoy the sound quality and couldn't help listening music with them everyday.
But for many years, I have huge CD collections. I miss then so much and want to listen to them on my RPi DAC system(No doubt true bit-perfect through S/PDIF). As well, I also have a lot of music sources that can be accessed from PC through a USB streamer, such as Foobar2000, Youtube, and many more.
So I decided to design a ReceiverPi to extent the ability of RPi DACs to access more music sources. It will be the first S/PDIF, external I2S/DSD interface board for RPi based audio applications.
Besides the music from RPi GPIO itself, ReceiverPi will have three additional music inputs:
1. Coaxial S/PDIF through RCA ( isolated, up to 192KHz)
2. Optical S/PDIF ( up to 192KHz ,of course isolated)
3. I2S/DSD input for external USB streamer and other digital music sources, up to 768KHz
ReceiverPi by Ian, on Flickr
I'd also like the ReceiverPi to have follow features:
. Low jitter and low noise design for better sound quality.
. Seamlessly integrated with FifoPi and ESS DAC HAT(sync mode) by installing between RPi and FifoPi or between RPi and DAC.
. Can automatically switch to S/PDIF if presents
. Can automatically switch to USB streamer when powered
. Can run RPi DACs even without a RPi (RPi free mode)
. Run ESS DAC HATs directly at sync/async mode even without FifoPi (light weight mode)
. Possible to have a control panel
. Reserved GPIO port for possible or user designed Linux/Web based software control
. optional independent DC power input
. Can be easily configured as S/PDIF FIFO by integrating with FifoPi and TransportPi
. DIY friendly and plug and play
I'm having the a finished prototype PCB now. I'm working on it. More update will be posted soon.
Ian
Ian, any plans for ak4137 SRC board to put it between this board and FifoPi ? 🙂 ...
Good afternoon. Hope we are all well.
Having read a lot of this thread I feel I am nearing a time to purchase a Fifo board.
I currently run ethernet>Rpi Volumio>isolator v2>ian dual dac>ivstd.
So I have room for improvement by adding a fifo board. But which one should I go for? Is it a no brainer just to choose the FifoUltimate. I currently dont listen to any DSD files. I stream from Spotify and I internet radios via Volumio. I may some day add an external hdd.
Does the ultimate NOT do anything that Ian's earlier fifo boards may do?
I'm not really sure what crystal speeds I need/ listen to. I use the up sampling option in Volumio. Currently set at the 700 something option, was at 300 something setting for a while too. I cant hear much change. The ess controller always seem to say 192k and 12Mhz if playing internet radio but drops to 44k for Spotify.
Any advice for this less experienced user appreciated.
Having read a lot of this thread I feel I am nearing a time to purchase a Fifo board.
I currently run ethernet>Rpi Volumio>isolator v2>ian dual dac>ivstd.
So I have room for improvement by adding a fifo board. But which one should I go for? Is it a no brainer just to choose the FifoUltimate. I currently dont listen to any DSD files. I stream from Spotify and I internet radios via Volumio. I may some day add an external hdd.
Does the ultimate NOT do anything that Ian's earlier fifo boards may do?
I'm not really sure what crystal speeds I need/ listen to. I use the up sampling option in Volumio. Currently set at the 700 something option, was at 300 something setting for a while too. I cant hear much change. The ess controller always seem to say 192k and 12Mhz if playing internet radio but drops to 44k for Spotify.
Any advice for this less experienced user appreciated.
Any advice for this less experienced user appreciated.
I tried both of Ian's FIFO solutions and liked FIFO_Pi better. Its the one I would recommend, provided it is used with the optional Shield and or other modifications to the stack I wrote about previously.
Ian, any plans for ak4137 SRC board to put it between this board and FifoPi ? 🙂 ...
If I had time to design an AK4137 HAT, I'll make it running in SYNC mode for even better sound quality🙂.
It's already on my list but I'm not sure when I have time.
BTW, just run DSD64 and DSD128 from ES9038Q2M dual mono DAC HAT in true SYNC mode with success. DPLL stopped completely. The sound is really amazing with new improvement!
I'll post the steps later.
Regards,
Ian
+1If I had time to design an AK4137 HAT, I'll make it running in SYNC mode for even better sound quality🙂.
It's already on my list but I'm not sure when I have time.
BTW, just run DSD64 and DSD128 from ES9038Q2M dual mono DAC HAT in true SYNC mode with success. DPLL stopped completely. The sound is really amazing with new improvement!
I'll post the steps later.
Regards,
Ian
Well, ak4137 in SYNCH with ak4499 combo would be welcome then ... I think 🙂
Agreed about the wisdom of including AK4137. Sounded best with ES9038Q2M when synchronous with dac clock. However, there was a funny issue with timing for best sound quality that I never had time to get to the bottom of. Be much appreciated if Ian gets that resolved for all users.
ShieldPi V2
What are the new improvements
1. ShieldPi V2 has double shield layers. The two shield layers are independent from each other. Both of them are connected to GND through one point at GPIO.
2. ShieldPi V2 also has an open window for XOs of FifoPi. So that taller XOs such as Pulsar can be used with it. The open window also makes it possible to swap XOs without disassemble the RPi/DAC stack.That's really great for evaluating different clocks, or changing XOs for music according to personal preference.
3. ShieldPi V2 uses gold plated PCB for better high frequency performance.
4. Gold bars are available along the edges of ShieldPi V2 PCB. Additional shield materials can be soldered to the bars.
5. Optional DC input terminal block footprint is reserved. Power supply can be feed directly into the GPIO through this DC input (DC power doesn't go through shield layers).
6. It can also be used as GPIO extender.
I've tried many different kind of GPIO connectors, so for the best is P/N: SSQ-120-03-T-D
They can be sourced either from Digikey or from Mouser.
I'll make the ShieldPi V2 PCB for free if I get chance to open a new GB by the end of this year.
Ian

ShieldPiV2_2 by Ian, on Flickr

ShieldPiV2_3 by Ian, on Flickr

ShieldPiV2_1 by Ian, on Flickr
What are the new improvements
1. ShieldPi V2 has double shield layers. The two shield layers are independent from each other. Both of them are connected to GND through one point at GPIO.
2. ShieldPi V2 also has an open window for XOs of FifoPi. So that taller XOs such as Pulsar can be used with it. The open window also makes it possible to swap XOs without disassemble the RPi/DAC stack.That's really great for evaluating different clocks, or changing XOs for music according to personal preference.
3. ShieldPi V2 uses gold plated PCB for better high frequency performance.
4. Gold bars are available along the edges of ShieldPi V2 PCB. Additional shield materials can be soldered to the bars.
5. Optional DC input terminal block footprint is reserved. Power supply can be feed directly into the GPIO through this DC input (DC power doesn't go through shield layers).
6. It can also be used as GPIO extender.
I've tried many different kind of GPIO connectors, so for the best is P/N: SSQ-120-03-T-D
They can be sourced either from Digikey or from Mouser.
I'll make the ShieldPi V2 PCB for free if I get chance to open a new GB by the end of this year.
Ian

ShieldPiV2_2 by Ian, on Flickr

ShieldPiV2_3 by Ian, on Flickr

ShieldPiV2_1 by Ian, on Flickr
Last edited:
I've tried many different kind of GPIO connectors, so for the best is P/N: SSQ-120-03-T-D
They can be sourced either from Digikey or from Mouser.
Yes many of the GPIO connectors are sub standard. The pins on Pi GPIO are .6mm x .6mm
Many 'GPIO' parts are .6mmx.4mm even from the official Pi suppliers..
What are the new improvements
1. ShieldPi V2 has double shield layers. The two shield layers are independent from each other. Both of them are connected to GND through one point at GPIO.
2. ShieldPi V2 also has an open window for XOs of FifoPi. So that taller XOs such as Pulsar can be used with it. The open window also makes it possible to swap XOs without disassemble the RPi/DAC stack.That's really great for evaluating different clocks, or changing XOs for music according to personal preference.
3. ShieldPi V2 uses gold plated PCB for better high frequency performance.
4. Gold bars are available along the edges of ShieldPi V2 PCB. Additional shield materials can be soldered to the bars.
5. Optional DC input terminal block footprint is reserved. Power supply can be feed directly into the GPIO through this DC input (DC power doesn't go through shield layers).
6. It can also be used as GPIO extender.
I've tried many different kind of GPIO connectors, so for the best is P/N: SSQ-120-03-T-D
They can be sourced either from Digikey or from Mouser.
I'll make the ShieldPi V2 PCB for free if I get chance to open a new GB by the end of this year.
Ian
ShieldPiV2_2 by Ian, on Flickr
ShieldPiV2_3 by Ian, on Flickr
ShieldPiV2_1 by Ian, on Flickr
The ShieldPi should be designed with a grounding terminal to allow the user to externally connect to the ground, such as a separate grounding box. The grounding box can be replaced by a high quality speaker cable that is mainly made of copper.
Last edited:
GPIO I2S/DSD terminator for RPi
RaspberryPi GPIO port was originally designed for I/O signals. Its impedance is not constant and not continues. By comparing with good transmission lines such as u.fl coaxial cables, RPi GPIO is not really ideal for transmitting digital audio signals.
Reflections, ringing, overshoot, ground bounce, all these kinds of things could happen when digital audio signals are transmitted over RPi GPIO. They will not only degrade the jitter performance but also introduce additional noise to the DAC ground through digital audio signals.
Though it is impossible to match RPi GPIO impedance as good as coaxial cables, but we can still make some compensation to the GPIO pins to make things better in some degree. GPIO terminator was exactly designed for these propose.
With GPIO terminator being plugged into the last piece of the stack (normally the DAC HAT) , the digital audio signal quality will be slight improved and the overall noise fed into DAC from the GPIO digital audio signal and ground will be reduce in some degree.
The attached waveforms show the real measured eye diagram of a DSD128 signal that received at ES9038Q2M dual mono DAC end from a FifoPi. The first one was without GPIO terminator, while the second one was with the terminator.
Real test also indicates that with the GPIO terminator, under the same condition, DPLL of an ESS DAC is easier to be locked at lower bandwidth.
GPIO terminator works for all kinds of RPi audio applications that use GPIO for I2S.
GPIO I2S/DSD terminator

GPIOterminator2 by Ian, on Flickr
How to use the terminator

GPIOterminator1 by Ian, on Flickr
GPIO DSD128 signal without terminator

WithoutTerminator by Ian, on Flickr
GPIO DSD128 signal with terminator installed

WithTerminator by Ian, on Flickr
Ian
RaspberryPi GPIO port was originally designed for I/O signals. Its impedance is not constant and not continues. By comparing with good transmission lines such as u.fl coaxial cables, RPi GPIO is not really ideal for transmitting digital audio signals.
Reflections, ringing, overshoot, ground bounce, all these kinds of things could happen when digital audio signals are transmitted over RPi GPIO. They will not only degrade the jitter performance but also introduce additional noise to the DAC ground through digital audio signals.
Though it is impossible to match RPi GPIO impedance as good as coaxial cables, but we can still make some compensation to the GPIO pins to make things better in some degree. GPIO terminator was exactly designed for these propose.
With GPIO terminator being plugged into the last piece of the stack (normally the DAC HAT) , the digital audio signal quality will be slight improved and the overall noise fed into DAC from the GPIO digital audio signal and ground will be reduce in some degree.
The attached waveforms show the real measured eye diagram of a DSD128 signal that received at ES9038Q2M dual mono DAC end from a FifoPi. The first one was without GPIO terminator, while the second one was with the terminator.
Real test also indicates that with the GPIO terminator, under the same condition, DPLL of an ESS DAC is easier to be locked at lower bandwidth.
GPIO terminator works for all kinds of RPi audio applications that use GPIO for I2S.
GPIO I2S/DSD terminator

GPIOterminator2 by Ian, on Flickr
How to use the terminator

GPIOterminator1 by Ian, on Flickr
GPIO DSD128 signal without terminator

WithoutTerminator by Ian, on Flickr
GPIO DSD128 signal with terminator installed

WithTerminator by Ian, on Flickr
Ian
RaspberryPi GPIO port was originally designed for I/O signals. Its impedance is not constant and not continues. By comparing with good transmission lines such as u.fl coaxial cables, RPi GPIO is not really ideal for transmitting digital audio signals.
Reflections, ringing, overshoot, ground bounce, all these kinds of things could happen when digital audio signals are transmitted over RPi GPIO. They will not only degrade the jitter performance but also introduce additional noise to the DAC ground through digital audio signals.
Though it is impossible to match RPi GPIO impedance as good as coaxial cables, but we can still make some compensation to the GPIO pins to make things better in some degree. GPIO terminator was exactly designed for these propose.
With GPIO terminator being plugged into the last piece of the stack (normally the DAC HAT) , the digital audio signal quality will be slight improved and the overall noise fed into DAC from the GPIO digital audio signal and ground will be reduce in some degree.
Ian
Ian
Did you determine the optimum resistor value to use for the termination?
Although I wonder if it depends on your actual stack? Maybe just from the fifopi up.
Randy
RaspberryPi GPIO port was originally designed for I/O signals. Its impedance is not constant and not continues. By comparing with good transmission lines such as u.fl coaxial cables, RPi GPIO is not really ideal for transmitting digital audio signals.
Reflections, ringing, overshoot, ground bounce, all these kinds of things could happen when digital audio signals are transmitted over RPi GPIO. They will not only degrade the jitter performance but also introduce additional noise to the DAC ground through digital audio signals.
Though it is impossible to match RPi GPIO impedance as good as coaxial cables, but we can still make some compensation to the GPIO pins to make things better in some degree. GPIO terminator was exactly designed for these propose.
With GPIO terminator being plugged into the last piece of the stack (normally the DAC HAT) , the digital audio signal quality will be slight improved and the overall noise fed into DAC from the GPIO digital audio signal and ground will be reduce in some degree.
The attached waveforms show the real measured eye diagram of a DSD128 signal that received at ES9038Q2M dual mono DAC end from a FifoPi. The first one was without GPIO terminator, while the second one was with the terminator.
Real test also indicates that with the GPIO terminator, under the same condition, DPLL of an ESS DAC is easier to be locked at lower bandwidth.
GPIO terminator works for all kinds of RPi audio applications that use GPIO for I2S.
GPIO I2S/DSD terminator
GPIOterminator2 by Ian, on Flickr
How to use the terminator
GPIOterminator1 by Ian, on Flickr
GPIO DSD128 signal without terminator
WithoutTerminator by Ian, on Flickr
GPIO DSD128 signal with terminator installed
WithTerminator by Ian, on Flickr
Ian
Similar to RAC mask

Nowadays, the global audio market is sluggish, and many audio manufacturers have long stopped research and development. The ES9038 chip has been published for several years, and many DAC manufacturers have not developed the ES9038 DAC. However, Ian has not been affected at all, and still works constantly, which is really admirable.
Hello ,
I just bought I2SoverUSB viii and want to connect to Fifopi . Can you help to let me know how to connect :
There are two modes of connection on I2SoverUSB (I2S like protocols on board oscillators and I2S like protocols with external MCLK ). Which one should I use ?
Thanks in advance .
I just bought I2SoverUSB viii and want to connect to Fifopi . Can you help to let me know how to connect :
There are two modes of connection on I2SoverUSB (I2S like protocols on board oscillators and I2S like protocols with external MCLK ). Which one should I use ?
Thanks in advance .
- Home
- Source & Line
- Digital Line Level
- Asynchronous I2S FIFO project, an ultimate weapon to fight the jitter