Gør det selv lydkort (HAT) til Raspberrypi

Jeg har længe spekuleret på, om det var muligt med et gør det selv lydkort, det har været lidt svingende med tilgængeligheden, hvis ikke man vil handle i Kina, hvis det er for at spare penge, er det ikke nogen god ide, men for elektronik eller HIFI nørder kan det måske være interessant, pga. de meget små DAC chips der bruges, har jeg hidtil ikke anset det for muligt, men ADA-fruit har et Break Out board til TSSOP-20 chips, chip er ca. 6,5 x 4,5 mm, det er meget småt, men det er muligt at lodde med en god loddekolbe med en tynd spids.

En meget brugt chip er pcm5102 fra Texas instruments, den havde jeg problemer med at finde, jeg har brugt pcm5100 i stedet, største forskel ser ud til at være 100 dB i stedet for 112 dB SNR, prisen er også lidt lavere.

Lyd ud bruger I2S bussen, den består af BCK, LRCK og DIN, det er Texas forkortelser for klok, venstre/højre klok og data ind, derudover skal vi bruge 0V (stel) og 3,3 V, så det er kun 5 ledninger, det giver mulighed for at holde lidt afstand, og evt. indbygge i en skærmet kasse, det gør det også nemt at eksperimentere med en støjsvag strømforsyning, i stedet for forsyning fra Raspberrypi, men pas på polaritet og spænding.

Til den første brugte jeg en stump enkelt siddet print, for at få et stelplan, normalt er der brugt dobbelt siddet print til at forbinde komponenterne, de fleste komponenter er afkoblings kondensatorer, derfor er det nemt at bore huller hvor der skal være en stelforbindelse, kondensatoren kan loddes på en stump monteringstråd, der er loddet til stelplanet se billede.

Diagrammet er hentet fra Application noten se: https://www.ti.com/lit/gpn/pcm5100a der er nogle forbindelser til stel de er markeret, så er der SCK den skal også til stel, for at få 3 ledningers interface, XSMT skal til 3,3 V hvis ikke der er et mute kredsløb, bemærk der er en enkelt kondensator, der ikke skal til stel den indgår i en negativ forsyning, afkoblet på VNEG hvis der bruges ellyt skal plus til stel, CAPP er plus forbindelse hvis der bruges ellyt, udgangene behøver ikke overførings kondensator pga. den negative forsyning.

Den næste er lidt af et eksperiment, med en HAT samlet på et eksperiment print, og med nogle gamle komponenter jeg havde liggende, det bryder med ideen om et stelplan se billede.



Det fungerer faktisk ret godt, signal støj er stort set det samme på de to, målt med et ret gl. u kalibreret millivoltmeter ca. 72 dB lin, det er egentlig meget godt på en ret støjfyldt 3,3 V, en bedre løsning er nok en 3,3 V regulator separat fra 5 V.

Nemt og billigt lydkort

Hvis man ikke har problemer med at handle direkte med Kineserne, og kan vente en måneds tid ca. så har f. eks. Ali, små lydkort med PCM 5102 ca. 30 kr, der skal bare forbindes 5 ledninger fra GPIO konnektor, VIN, GND, LCK, DIN og BCK, på bagsiden er der lodde punkter til de ben på chippen, der skal forbindes til henhold vis 3,3 V og GND, der også punkter i kanten af printet, men så skal der forbindes små ledninger, jeg har også set print hvor punkterne er forbundet  til standard opsætning. Når man bruger 3 indgangs opsætning, skal SCK forbindes til GND der er lodde punkter.

Printet er monteret med smelte lim på konnektoren fra et gl. harddisk kabel (parallel), og de nødvendige 5 ledninger er loddet på DAC, på  fladkablet er der en rød markering, hvis det er vendt som på billedet er det pin 1 på GPIO kon, forbindelser er som følger: Pin 2 (5  V) til VIN. Pin 9 (0 V) til GND. Pin 12 (I2S CLK) til BCK. Pin 35 (I2S LRCLK) til LCK. Pin 40 (I2S DOUT) til DIN.

Fejlfinding: Der burde ikke være de store fejlmuligheder, det vigtigste er at 5 V ikke rammer andet end VIN, og undgå tilslutning af måleudstyr hvor COM/GND ikke er tilsluttet stabilt til stel, overspænding eller statisk udladning destruere en DAC eller CPU på millisekunder. En anden fejlmulighed er manglende udgangssignal fra Raspberrypi, hvis I2S er aktiv kan der normalt måles ca. 1,6 V med et digitalt DC voltmeter (50 % dutycycle), med et Oscilloscop kan man se et digitalt lydsignal på DIN.

--------------------------------------------------------------------------------------------------------------------------------------
Kurt Nielsen 21-05-2023

Bemærk: Raspberrypi er et varemærke tilhørende Raspberrypi Foundation.

Kilde: https://www.ti.com/lit/gpn/pcm5100a