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

Disabled Account
Joined 2020
^^


Nice. Thanks for sharing. I also plan on using cases also for my portable and desktop builds.

I hope to add an OLED screen in the next few weeks for the portable. Unsure if I'm adding a OLED, AMOLED or soon to be released 2021 iPad Mini for the desktop case.

The power button cannot be underestimated. Either can a IR remote. Loving the power button on your video. I have one on the portable, but wasn't sure if it's possible on the desktop. Now it's a must have.

Hoping to start on MKIII/StationPi in about three weeks.

Oh, also SuperCaps sideways is nice. I'm considering building a RPi-free rig. BridgePi -> ReceiverPi -> Q3 -> TransportPi since I have a few UCconditioners I don't know what to do with so sideways SuperCaps is definately a consideration for that build.
 
Last edited:
Disabled Account
Joined 2020
For those whom have wired batteries,

For my portable build, I scaled back to one A123 18650 since I can integrate my build all into one piece. With the 26650, it's just too large and it has to dangle around.

I just noticed I have enough space to add another 18650 next to the current 18650.

Is wiring in parallel as simple as it seems? I'm using 18650 battery holders.

So:

BT1 + => BT2 +, BT1 - => BT2 -

then

BT1 + => BMS +, BT2 - => BMS -

and that's it? Simple and straightforward?
 
Disabled Account
Joined 2020
Thanks for your response.

I get about 3 solid hours (RPi + Q3 + TransportPi [OPT OUT into a self battery-powered DAC) off a single 18650. The 26650 around 6-7 hours. My DAC gets around 7 hours on it's own.

That's a great idea about tabs. I'm not comfortable yet soldering directly onto the battery, but tabs should be okay. I didn't consider the battery holder bottleneck since for this use case priority is safety first and the battery holder would be attached outside the case.

I may be able to skip the parallel step since I ended up getting a new case. I may end up going back to the 26650 if it fits inside the case along with the Ian Stack. I'll know this weekend when I receive the case. I'm trying to keep things tight and minimalistic so the first prototype worked well, but for the second prototype I figured it's better to try to incorporate the battery inside the case.

If I run a single 26650 do you still recommend going with a tab? Or the tab is just recommended only if I go parallel (2+ batteries)?

It should be pretty simple to order 1-2 batteries with tabs if needed. I have extra 18650 and 26650 sitting around, but none have tabs.

I do hope to experiment with "parallel" one day, it's something I'm curious about now even if I don't get to implement in this project.
 
Last edited:
aha, OK, so its just the FIFO and transport running from the A123? the rest has its own battery power? if your run time is already acceptable, then I wouldnt worry about paralleling 2 cells. yes, I would just solder directly to the tabs. yes, avoid soldering direct to the cell, it wont work anyway and you will damage the cell with the heat.
 
Disabled Account
Joined 2020
Yes, plus the RPi all via FiFo GPIO.

The DAC has it's own batteries (2 x Enix 3.7V), I just need to feed OPT IN (top left). No headphone amp needing power as it doesn't have one, zero amp involved since amps colour and distort. It outputs directly from the FPGA DAC for max Transparency and Resolution, no amps:

Hugo-2-PCB.jpg


If I'm able to incorporate a single 26650 in the new case, I'll likely go with a battery holder for now. The 18650 is acceptable @3hours, but I had space to add another on my first prototype so parallel would be nice to not waste space. I'll focus on trying to get a 26650 in the second prototype.

Do you still recommend a single 26650 w/ tab for optimal performance in the long run? It runs about $30 (26650 with tab) w/ shipping for just a single battery ($7 regularly with no tab) so I need to justify.

If there is a performance difference as a single battery not parallel versus a single battery w/ battery holder, I'll definitely pick up a 26650 with tab one day.
 
Last edited:
If thats a Hugo 2, which is what it looks like, it has an amp onboard. Depending on your headphones impedance and efficiency, you may be able to drive with the 2qute (no amp) given it has fairly low output impedance, due to the dac already having a buffered output (essentially a unity/low gain amp)

You'll excuse me for saying it sounds like you have been spending a bit too much time at head-fi. headphone amps do not cause distortion any more than a buffer.

now, if you took your unit and added another amp unnecessarily, that may add unnecessary extra distortion; but to assume the output of the hugo is somehow more pure than if you added an amp to a dac, to drive more demanding headphone loads; would be folly. in fact, if your headphone load is harder, like 300-600Ω, or something like an HE6 with low efficiency without a bit of gain (current gain/voltage gain, or both), the distortion may be higher without.

re batteries, i'd just stick with what you have for now. dont worry about making an expensive order just for a single cell. if you are only driving an optical out with that battery, its unlikely to make any difference having a few mohms more resistance from the holder.
 
Last edited:
Disabled Account
Joined 2020
Many thanks for your help. It gives me the confidence to try parallel if I have to re-visit.

I haven't been up2date on Chord talk for a few years, but from what I remember there is no 'amp' or traditional amp in the path. There is a output stage which I guess can be labeled as a 'amp', but the DAC designer was able to eliminate the traditional amp stage.

If I can find the right 26650 w/ low profile tab, I might try that out. The one I have been eyeing that's in stock is too exposed in a small footprint setting. I guess I can cut off a good chunk of tab if needed.

6610_v1.png


It's a great idea, I do hope to incorporate the tab in my build once it's stable. It's just I ended up spending more on tools and accessories than the whole Ian package so I just want to slow down a bit.

I'm also not fond of the quality of the 26650 battery holder, so should be able to justify if it works out. Although I do like the quality of the 18650 battery holder.

This is a fun and great DIY learning experience so far. I wouldn't be able to get this far on my own without the guidance on the Ian threads.

I'm waiting for this low-profile tab to be back in stock:

genuine-a123-systems-26650a-lifepo4-cell-w-tabs-8.gif
 
Last edited:
Disabled Account
Joined 2020
aha, OK, so its just the FIFO and transport running from the A123? the rest has its own battery power? if your run time is already acceptable, then I wouldnt worry about paralleling 2 cells. yes, I would just solder directly to the tabs. yes, avoid soldering direct to the cell, it wont work anyway and you will damage the cell with the heat.

Many thanks again @InspectorGadget for the 'tab' idea.

I received two cases. Immediately ruled out one as it's too large for application. The smaller case works out almost perfect, but a single 18650 or 26650 battery holder is too large. Even a 18650 with tab does not fit. Amazingly, I think a 26650 with tab is going to workout.

So I should get the best of both worlds now. Smallest footprint possible along with a 26650 battery @ 3x the power of the 18650 battery.

I don't know if the 'tab' idea would of hit me after just designing the layout. I would hate to resort back to the 1st prototype although it would be okay. Just fortunate to know the 'tab' option before designing layout.

1st prototype - 18650 battery holder and BMS on outside of case.

2nd prototype - 26650 battery with tab and BMS on inside of case.

Both prototypes similar size.

Confirmed working: IR Receiver and Rotary Encoder
Just arrived: OLED
 
Last edited:
Fix Topping D90(D70) HDMI I2S/DSD popping sound problem by HdmiPi MkII

Topping D90 is the lowest price AK4499 flagship DAC. For evaluation, I bought one months ago . The sound quality is good for me. But still not as great as I expected.

Fortunately it has a HDMI I2S input, all significant sound quality related signals such as I2S/DSD and MCLK can be fed externally. That's a great potential.

Both PCM and DSD sound quality really got improved after I connected my FifoP Q3 digital transport to the Topping D90 through a HDMI cable. I'm really happy with the improvement. However, the biggest problem I've found is that it generates loud popping sounds in speakers when switching between PCM and DSD, or start/stop a DSD music. Topping D90 FW doesn't mute the DAC at those moments. That problem would be totally unacceptable.

After doing some research, I found Topping D90 has a MUTE input signal connected to the PIN16 of the HDMI signals. I believe I can fix this problem by making use of the MUTE output (isolated) from my FifoPi Q3.

So I made some modifications to my HdmiPi board. Please see the attached pictures for the details. After I connected both MUTE and DSDEN signal from FifoPiQ3 to the modified HdmiPi, the Topping D90 DSD popping sounds were gone. This problem was fixed perfectly! I can enjoy the improved AK4499 sound quality now. That's so great!

Some settings of Topping D90 DAC needs to be changed from default, otherwise the left/right channel will be reversed.
Hold the power button when you turn on the power switch to enter the setting mode,
1. Change setting 8 to REV
2. Change setting 9 to DSDR/DATA

The modification job is not that easy because the HDMI connector pins are very small. I'll implement this feature in my new HdmiPi MkII transmitter design very soon.
This feature may apply to Topping D70 and many other I2S/DSD DACs with HDMI input.

Stay safe and enjoy the weekend DIY at home.
Ian
 

Attachments

  • FixD90PopSound1.jpg
    FixD90PopSound1.jpg
    319.5 KB · Views: 396
  • FixD90PopSound2.jpg
    FixD90PopSound2.jpg
    272 KB · Views: 395
Last edited:
Noise from FifoPi/TransportPi HDMI output on 44.1 Help, please?

I have the stack

Raspberry Pi 4 (Volumio) -> ConditionerPi -> ReceiverPi -> FifoPi Ultimate -> TransportPi (HDMI out)-> HDMI Receiver -> is2-to-PCM board -> DIY AD1965 DAC

It works fine when playing 96/24 .... which I had been exclusively using via Volumio's resampling feature in preparation for integrating a MiniSharc in slave mode, which requires that.

I'm looking at taking the system in another direction so I removed the resampling and added a second clock (NDK2520 SDA) for the 44.1 family.

It works fine playing 44.1/16 via spdif (using various other DACs as the AD1865 does not have a spdif input) but ....

... using the HDMI output from the TransportPi, I get digital noise (with the music far behind it in the background).

To summarize

spdif out from TransportPi works 96/24 (Accusilicon Clock)
spdif out from TransportPi works 44.1/16 (NDK Clock)
HDMI out from TransportPi works 96.24
HDMI out from TransportPi DOES NOT work 44.1/16

Help?

Thanks in advance
 
resolved!

I have the stack

... using the HDMI output from the TransportPi, I get digital noise (with the music far behind it in the background).

To summarize

spdif out from TransportPi works 96/24 (Accusilicon Clock)
spdif out from TransportPi works 44.1/16 (NDK Clock)
HDMI out from TransportPi works 96.24
HDMI out from TransportPi DOES NOT work 44.1/16

Help?

Thanks in advance

Resolved with a clock switch- must have been an inadequate solder on the adapter on the original NDK clock... except I wonder why it worked fine for spdif? Just happy it's working now... and also appreciative of what Ian has created and what it has contributed to my system's sound.
 
Ian, thanks for the compliments :)

Some more pictures of the final result, also the grounding improved because I did not realize that the StationPi has 2 different earth screens (TP1 and TP2), 1 specifically for the RPi and 1 specifically for the right side where the FifoPi and the TransportPi house, the star earth point is now on one of the metal inserts that are pressed into the bottom as standard.

To create more space for the coax spdif output with some fine tuning regarding the dimensions, I also 3D printed a new back plate.

The power switch LED is a bit too strong so I have to come up with something about that.

The Raspian still sounds like a Swiss timepiece :worship: so as far as I'm concerned, this conversion is more than successful :)