DIY soundcard intended for measuring amplifiers

Kostas the pleasure is mine.
A very good software (REW) can make a dumb monkey look like a smart monkey if only he finds the right buttons to push.
But a very good software can't polish a turd.
Besides having built yourself a very good piece of test instrument, you have demistified the black box that a soundcard is (was) to some of us.
George
 
Various "black boxes" after suffering demystification... :guilty:
 

Attachments

  • Behringer.JPG
    Behringer.JPG
    77.3 KB · Views: 190
  • Asus.JPG
    Asus.JPG
    105.2 KB · Views: 193
  • Assembled II.JPG
    Assembled II.JPG
    282.8 KB · Views: 191
  • Uncovered.JPG
    Uncovered.JPG
    264.6 KB · Views: 183
  • Like
Reactions: YashN
I love it! (what is at the third photo?)

The question is why didn't you transplant the whole audio codec+ digital part (USB receiver ect) from the Behringer to your sound card but you chose to do it the hard way instead (build from scratch)?!
George
 
The question is plausible, and if If I understand correctly, @jp8 is going that way. 👍 Myself, I was really trying to find my way with all this back then and I was worrying about too many thin wires poking here and there. Actually, the audio codec chip was easy to include on my PCB. The big problem was the usb interface. Moreover, since I'm completely illiterate in code writing. First attempt was to transfer all parts from the Behringer to a new PCB hopping that the drivers would come together.😛 See attachment. A total failure... It reminds me to stay away from BGA chips. So, next step was a DIYINHK module and manual control.
USB-I2S.JPG

Third picture is an Asus essence STXII with power rails per section separated with a sharp cutter :smash: and connected to external regulators made to fit as a double slot PCI card. This project took another route leading to my DAC.
 

Attachments

  • Asus Essence STX II PSU.JPG
    Asus Essence STX II PSU.JPG
    311.5 KB · Views: 124
  • Wired.JPG
    Wired.JPG
    324.5 KB · Views: 125
What a beautiful pcb you've designed!
What's the BGA IC there?
Was the "failure" of software origin (drivers) or hardware issues?
The other pcb -the PCI card-is full of CLC filters and v. regulators. Are all these transfered to your sound card?
 
The BGA is the Xmos micro processor extracted from the Behringer soundcard together with all its peripherals. I struggled to reverse engineer the PCB to no avail and I had to follow the application notes of that chip. Either it was somewhere there I messed up or I wasn't lucky soldering the chip itself. It never came to life.

Regarding the other soundcard, if I understand correctly your question, the regulators' PCB is connected with wires to the Asus PCB as shown in post#102. It was a useful expirement about the effect of separate psu for each chip/block of the soundcard. This concept is applied to both my diy soundcard and my DAC.
 
Either it was somewhere there I messed up or I wasn't lucky soldering the chip itself. It never came to life.
Dealing with BGAs takes a lot of courage. At least you tried. I wouldn't have tried that.
It was a useful expirement about the effect of separate psu for each chip/block of the soundcard. This concept is applied to both my diy soundcard and my DAC.
Yes, that is what I meant. Transfer of the concept to your soundcard.
The very clean noise floor is most probably due to these filtered multi PSUs.
The low THD at 0dBFS must be due to increased PSU voltage to the opamps (headroom).
These are the two technical strengths of your soundcard.
The third strong point is it's versatility.

Now the DAC must be another marvel of yours to test 🙂
George
 
By request, I post the diagrams for the front panel switches wiring.

The rotary switch that selects the preamp's gain is a 3pole/4pos. It takes 5V -from the usb Vbus, the ground goes to the I/O pcb relays "GND" pad. Then, pads P1, P2 and P3 are wired to the switch. Pictures and diagram below.

P1050596.JPG
P1050595.JPG
Gain.jpg
The rotary switch that selects sampling rate is a 2pole/6pos restricted to 4pos. It takes M0 and M1 from the CS4272 and makes the combinations to ground and 3,3V from the usb module.
P1050597.JPG

Sampling Rate.jpg

The "RESET" button was never found necessary so I think it can be safely omitted.

On other news, it was demonstrated that at least the input section can do its thing with humble LM78/79xx regulators. https://www.diyaudio.com/community/threads/behringer-umc-202hd-for-measurements.341309/post-6977625 So, I thought to redesign the PSU pcb to a much more cost effective version. Not tested! It still needs the mains to 5V converter but then it replaces the 5V to +/-15V converter and the 3,3V reg for the usb module. SIP4 DC/DC converters 5V in 15V out 3W is more than enough. Capacitors are whatever you can fit as low as 10μ, a few 1ohm resistors that form Pi filters and full three terminal regulators job. Attention should be paid for the two 3,3V regs marked with red color. In the market there is an alternative part LD33V with different pin out. I have provided extra pads to use all types. The one that stands upright is 3,3V/500mA for the usb module and it's meant to bend outside the pcb to attach to a heatsink. It should not touch the chassis.
Screenshot_20240907_232618.png
 

Attachments

The ribbon connector from the audiocodec to the usb module is by far the most idiosyncratic feature of this project. I'll do my best to explain it. For starters, general info on how to make ribbon cables. Keep in mind that the ribbon cable holds repeated pairs of one signal and one ground wire.




Alas, in this case, things are so straightforward... The audiocodec layout does not match that of the usb module. The signal/ ground wires have to be rearranged. Below is a diagram, hardly meaningful and useless for different usb modules. Note that M0/M1 do not need their ground pairs.

xmos-multichannel-high-quality-usb-tofrom-i2sdsd-spdif-pcb.jpg


The final implementation looks like this

Connector.jpg


Be prepared for trial and error and always check alignment, continuity and short circuits.
 
Thank you very much!

I don't have a user guide for the DIYINHK XMOS board either. Essentially, the pin out diagram posted above is all I could find. It came with a tiny OLED display supposed to show sampling rate, it should work but I never used it. It connects to the board with four wires. That's all I know. Is the logic pattern for M0/M1 universal, same for all converters? Or custom I2C needs to be implemented for each one? The later is beyond my skills, thus the rotary switch.
 
I had purchased the usb module a few years ago and now it seems the model has been updated but it should be similar to this
https://www.diyinhk.com/shop/audio-...8ch_out_8ch_in_spdif_out/141-fifo_option-null
If I understand correctly, it has a new clock, a C-type usb connector and now instead of the OLED display it comes with LED indicators. Still, some basic logic is required. The best I could do is Diode/Transistor Logic like this https://www.diyaudio.com/community/threads/diode-transistor-logic-display-for-wave-io.371967/latest
But I think this would be even more steampunk technology than the switch. 🙂 Anyone who could provide a simpler solution is welcome.
 
This picture shows LEDs indicating sample rate https://www.diyinhk.com/shop/696-la...dsd256-usb-tofrom-i2sdsdreclock-spdif-pcb.jpg , connected to a 6-pin section on the XMOS board. Your board seems to have a similar 6-pin section. IMO the manufacturer should provide the info on samplerate indication, did you ask DIYINHK?
I had no response from DIYINHK about this. I sniffed around this 6-pin section in my module. Definitely no direct LED drivers there, so the reasonable thought is that it provides some signal that gets decoded on the LED pcb. Once we have the decoded signal driving each LED the rest should be very easy. A simple network of 1N4148 diodes to set M0 and M1 to "1" and two pull down resistors to keep them to "0". Thank you very much for pointing this!
Screenshot_20240915_124447.png

Auto Sampling Rate.jpg
 
OK! we might getting somewhere...

Pin#1=Vcc
Pin#2=GND

Then at different sampling rates logic level appears as following:

44.1 > None
48 > Pin#3
88.2 > Pin#4
96 > Pin#3 and #4
176.4 . Pin#5
192 > Pin#3 and #5
 

Attachments

  • DIYINHK USB to I2S.jpg
    DIYINHK USB to I2S.jpg
    337.6 KB · Views: 52