• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Chapeau ou non? (PCM5102MK non-HAT DAC review)

What is you impression of PCM5102MK DAC board:

  • Chapeau (Well done / Worth it)

    Votes: 38 41.3%
  • Non (Not impressed / Waste of money)

    Votes: 54 58.7%

  • Total voters
    92

Linards

Member
Joined
Mar 18, 2024
Messages
23
Likes
373
Location
Riga, Latvia
Cover.png

Hi, Guys!

Use of French in the title is not arbitrary. :)

Chapeau ou non? literally translates to: “Hat or not?”. However, chapeau is also frequently used as expression of admiration, approval, respect and is short for chapeau bas (literally “hat down”) in a same sense as in English “I take my hat off”, “well done” or just doing the hat tip gesture. (https://www.oed.com/dictionary/chapeau_n?tl=true)

If Chapeau ou non? in common language translates to: “Well done or not?”, why bother with French?

In this review I will take a closer look to a small DAC board that has printed PCM5102MK on it and I will refer to it as that (+ v2.0). As name suggests, it uses TI PCM5102A DAC chip. Usually, it can be found in entry-level Raspberry Pi’s (RPIs) Hardware-Attached-on-Top (or HAT for short) DAC designs.

However, PCM5102MK reviewed here is not a HAT.

I hope by now you start to appreciate wittiness in title I tried to come up with.

Before I start discussing the DAC itself, I would like to take a small detour into RPI HAT DAC world since not everyone might be familiar with it. If you are – feel free to skip next section.


1. A short intro on HAT DACs, RPI GPIO, I2S and PCM

In 99.99% of cases using RPI for audio playback will be a DIY project.

There are definitely some pre-build, pre-configured, plug-n-play products out there, but prepare to pay extra for that. Also, I am not quite sure if such products still carry “genuine spirit” of RPI, but hey! – if the business works, it is not wrong… In any case, I won’t discuss them now.

Generally, RPI + HAT DACs offer (comparatively) affordable, high-quality option for music streaming over network (not Bluetooth!). Main selling pitch could be: “Upgrade your RPI with a better audio quality DAC than built in RPI headphone output!” or “Build yourself a lossless streamer and stop using lossy Bluetooth!” or something along these lines.

I will bring a typical example review of HAT DAC by Amir in 2019:

https://www.audiosciencereview.com/...w-and-measurements-of-hifiberry-dac-pro.8555/

Newer version of this HAT DAC has been released in 2020 (?) and can be found here:

https://www.hifiberry.com/shop/boards/hifiberry-dac2-pro/

Good thing about RPI + HAT DACs is that when you decided what you want/need there is practically entire industry behind it. Now (after RPI shortage) you can easily source all components: RPI, HAT DAC, case, PSU, micro SD card. Assembling and setting-up is easy (think LEGO for 5-year-olds) and usually well documented (e.g. Youtube tutorials), result will be quite neat. There is a large community of users, tinkerers and DIY-ers, so don’t worry - you won’t be alone if you run into some issues.

Here is a nice tutorial video from Tim of Core Electronics YouTube channel, where you can also find a written guide in description of video:


What about total costs?

That’s a tricky one… If you are starting from scratch, don’t have a lot of experience in DIY and buying everything new, my realistic estimate would be: RPI 4B 1GB + Case + PSU (original) + micro SD card + HAT DAC (witch?) = 40 + 15 + 10 + 5 + 25…70 € = 95€ … 140€. (There can be extra delivery costs if you are sourcing components form several suppliers.) Sure, you can cut corners here and there (e.g. using PSU or micro SD card you have laying around or use other RPI models), but I would put a 100€/$ as a “rule of thumb” for a new project price estimate.

In my opinion currently main competition for inexpensive RPI + HAT DAC streamers is WiiM Mini (https://www.wiimhome.com/wiimmini/overview) which costs around 90€/$ and is a reasonable comparison baseline for any RPI + DAC audio project. In any particular comparison it will always come down to – exact needs, budget, expectations and other small (but important!) factors.

RPI uses Inter-IC Sound (I2S) interface for Pulse-Coded Modulation (PCM) audio data transfer to DACs. Below is a nice picture of RPI 4B board and 40 pin header break-out with color coding. Notice that we are interested only in yellow pins for PCM audio (pins 12, 35, 38 and 40 or GPIO18 – 21; Yes – physical pin numbers of header and GPIO pin numbers are not the same thing!).

RPI GPIO.png


More on I2S and PCM can be found all-over the internet, e.g:

https://en.wikipedia.org/wiki/I²S

https://en.wikipedia.org/wiki/Pulse-code_modulation

It turns out that for PCM audio data transfer from RPI to I2S DAC you need only 3 pins, namely: 12 – CLK (continuous serial clock or bit clock, it is same as BCLK), 35 – FS (frame sync) and 40 – DOUT (data out). Add to that 2 power supply pins: 4 (5V) and 6 (GND), and you can be using as few as 5 pins from RPI 40 pin header to play your favourite music!

Waaaaaait a minute… If HAT DACs connect to all 40 pins they might not be using them all, right?

Exactly! And if you are into DIY and tinkering, chances are you might not want to use HAT DAC at all.

As mentioned, it blocks rest of available RPIs header, making Serial Peripheral Interface (SPI), Inter-Integrated Circuit (I2C) bus and other General-Purpose Input/Output (GPIO) pins inaccessible. (More advanced HAT DACs e.g. HifiBerry DAC + DSP make use of I2C and SPI interfaces, so do check on a particular model, if interested.) Of course, soldering iron can solve everything, but not everyone is comfortable nor willing using one. There are more and more HAT DACs available in the market that give header pins back on top of it, which is good – but what if your desired HAT DAC doesn’t?

Secondly, for a reason or another, one would not always want to place DAC on top of RPI. Maybe design-wise it is unacceptable, resulting in too thick device? Maybe RPI cooling is a priority and HAT does not help with airflow? Or something else, You name it!

The point I am trying to make: I2S DAC used with RPI does not always mean HAT. This is exactly the case with PCM5102MK board in this review. All you need to do is simply connect 5 hook-up wires (female/female) and Voila – it works! Below you can see how I hooked it up. Note that there is no LEDs on the board, so you have no visual confirmation if board is working or not. Also when working with I2S, recommendation is to keep hook-up wires as short as possible.

Hook-up.jpg


But I am getting ahead of myself… Let’s start the review already!


2. Available information on internet and looking at the board in hand

Earlier version (v1.0?) of PCM5102MK DAC board have been around since 2015 and had only RCA outputs.

At the time of writing v2.0 of it is available in AliExpress for low as 4.48€ + delivery. It has also 3.5 mm jack output. I bought PCM5102MK v2.0 with black PCB for 7.51 EUR total and it arrived in 2 weeks or so.

https://vi.aliexpress.com/item/1005...t_main.93.47671802drUwKY&gatewayAdapt=glo2vnm

Here is the board I tested:

Board.jpg


Very good description of the board v1.0 can be found in ICStation website (price used to be 8.11$) as well as good schematics:
https://www.icstation.com/pcm5102-decoder-voice-playback-module-raspberry-p-14738.html
PCM5102 DAC Decoder I2S Voice Playback Module_1.jpg

PCM5102 DAC Decoder I2S Voice Playback Module_2.jpeg

You can get v2.0 in Tinytronics for 8€ + delivery. It is reported its weight is 16 grams:

https://www.tinytronics.nl/en/commu...acs/pcm5102-dac-audio-decoder-module-v2.0-i2s

It seems that v1.0 is also available in Audiophonics for 14.90€ + delivery.

https://www.audiophonics.fr/en/dac-...m5102mk-i2s-p-10551.html?search_query=pcm5102

The heart of PCM5102MK DAC board is TI PCM5102A DAC chip, that support up to 32 bit data and sampling frequency 384 kHz.

Judging from datasheet initial version of chip was released in 2012 and current revision in 2015. Importantly, it allows 3-wire I2S and does not need dedicated system clock input (it gets it from BCLK).

https://www.ti.com/lit/ds/symlink/pcm5102a.pdf?ts=1711201109127&ref_url=https%3A%2F%2Fwww.ti.com%2Fproduct%2FPCM5102A

On paper, PCM5102A is the best of preforming chip of PCM510xA family. All-in-all they are pretty much in the same ballpark of SNR and THD performance.
PCM510xA comparison.png

PCM5102A has 4 additional inputs besides I2S, namely: DEMP (de-emphasis control), FLT (filter select), FMT (format select: I2S or left justified) and XSMT (soft mute control). These pins can be used by puling them high (connecting to 3.3V) or low (connecting to GND). To have some sound out of the chip, you have to pull XSMT high to un-mute. On PCM5012MK board you can change FMT by using jumper. FLT is possible to change using soldering iron. (If you want to access and experiment with all these inputs look for GY-PCM5102 board. Soldering is required.)
PCM5102A chip pinout.png


Here is a very good, 3 years old video quickly reviewing the PCM5102A chip and its implementation on similar board in Gadget Reboot YouTube channel:

PCM510xA series DAC chips are (were?) used in some of HiFiBerry entry-level HAT DACs such as Zero since these chips are easy to implement but does not have hardware volume control. However, it is even found on a much higher-tier product as HiFiBerry DAC+DSP where all the control is taken case by ADAU145x series DSP. Feel free to share other DACs that you know use this DAC chip.

Today many HAT DACs use PCM5122A chip over PCM5102A due to much more advanced control on a hardware level (e.g. volume) that makes it more appealing to developers. In the same time SNR and THD+N performance of both chips is very similar. At least on paper.

OK, it is time for a brief reminder of methodology. This time I added 1kHz sine (manual) level sweep measurements. Everything else is nearly the same as before. You can skip next section and jump to measurements if you are familiar with used methods and instrumentation.


3. Measurement set-up, instrumentation, software and tests

RPI 4B with original 5.1V power supply was used. Volumio 3.631 operating system was installed on SD card.

Tests using TOPPING E2X2 and Multitone Analyzer (MA) v1.1.7 software were done by generating appropriate .wav files and copying them to streamer (only exception was single channel tone generated in REW, don’t know why MA always generated signal in both channels…).

Appropriate test file was played and volume was adjusted using Volumio web-interface (DAC Model: Generic I2S DAC; Mixer Type: Software) through PCM5012MK RCA outputs and connected to oscilloscope using additional BNC-RCA adapters or connected to E2X2 interface’s ADC using RCA to XLR cable. E2X2 was connected to PC using provided USB cable.

Following tests were performed using MA and E2X2:

  1. 1kHz sine (level sweep): 44.1 kHz / 24bit signal, FFT: 256K / 16 AVG
  2. Stereo Crosstalk L to R @ 1kHz: 44.1 kHz / 24bit signal (REW), FFT: 256K / 16 AVG
  3. Frequency response: log-chirp 44.1 kHz / 24 bit signal, FFT: 64K / 8 AVG
  4. Output filter FR: log-chirp 192 kHz / 24 bit signal, FFT: 256K / 16 AVG
  5. Multitione: 32 AP Tone, 192 kHz / 24bit signal, FFT: 1M / 8 AVG
  6. JTest 24: 48 kHz / 24bit signal, FFT: 256K / 16 AVG
  7. IMD STMPTE: 44.1 kHz / 24bit signal, FFT: 265K / 16 AVG
  8. IMD CCIF 19k/20k: 192 kHz / 24bit signal, FFT: 265K / 16AVG
Tektronix Digital Oscilloscope TBS 1032B was used for signal shape and voltage measurements using RPI output of 1 kHz 44.1 kHz / 24bit tone file.

Finally let’s get to measurements and see if MK v.2.0 board gets out all the performance from PCM5102A!


4. Oscilloscope measurements: 1 kHz sine

Let’s start with 100% volume measurement. RMS is 2.12 … 2.14 V and there is no obvious problem with signal quality.
100%.jpg


At 70% volume RMS is 0.373 … 0.376 V which corresponds to -15 dB attenuation.
70%.jpg


At 1% volume RMS is 7.29 … 7.30 mV which corresponds to -49.3 dB attenuation. As one can see signal is very noisy at this point.
1%.jpg



5. Measurements with Multitone Analyser and TOPPING E2X2 ADC

Here are 1kHz FFT’s with 100% volume. Oh, WOW - Only 55.2 dB SINAD and look at those harmonics! Something is very wrong with full output level.
100%.png


Decreasing volume down just by 1% (or -0.5 dB) to 99% improves things a lot. Now SINAD is 73.9 dB, but it is THD dominated.
99%.png


At volume level 98% we have -1dB of full scale (RMS 1.89 V), that was mentioned in datasheet. Unfortunately, thing don’t improve dramatically, SINAD is only 74.4 dB) and performance if far from PCM5102A chip spec (SINAD = 93 dB). Disappointing.
98%.png


Sweeping the level we get closer to spec, SINAD is 88.2 dB at volume of 70% which corresponds to RMS 0.375 V or -15 dB of attenuation. 50 Hz mains is leaking in at -100 dB. It seems that noise is relatively low and not the biggest issue here.
70%.png


To get to Amir’s DAC chart “Fair” category at least 90 dB SINAD is necessary. At best scenario PCM5012MK board almost scratches the floor of “Fair”… from the other side.
PCM5102MK chart.png


Here are 1kHz FFT’s with 1% volume just for reference.
1%.png


I went an extra mile and did manual level sweeps – recorded FFTs and RMS using different volumes in Volumio. A lot of manual work, but I find results very interesting.

Here is RMS in volts vs volume in %. I used base 2 log for y axis.
RMS vs %.PNG

Here is attenuation in dB vs volume in %. You can see that Volumio’s software volume mixer allows control of attenuation up to almost – 50dB (at 1% volume) with smallest steps of 0.5 dB (1% steps). 10% volume steps correspond to 5dB attenuation and so on.
db vs %.PNG

Here is SINAD and SNR in dB vs volume in %.
SINAD SNR Sweep.PNG

SINAD and SNR behaviour is linear up to roughly 65…70% of volume - increase of volume leads to the same increase of SINAD and SNR. Thus, it can be concluded that both – noise & THD are constant in this region. Only thing you increase with volume is signal itself.

In an ideal world we would expect it to continue linear trend until 100% volume, but… After 70% THD increases significantly and is main reason why SINAD starts decreasing. SINAD has some impact on SNR and while it increases, it saturates to 97 dB at 99% of volume. Obviously, system clips at 100%.

Area around 65…70% of volume is highlighted and could be considered as “optimal” for operation, if RMS voltage is sufficient for your system.

If we linearly extrapolate SNR up to 100% (red dashed arrow) we would arrive at something like 105…106 dB, which is quite close to the spec. SINAD extrapolation to the spec is shown with blue dashed arrow. Deviation of 20 dB is huge… I wonder what causes such behaviour.

70% volume was used in all measurements below.

Let’s examine stereo crosstalk at 1kHz. It seems to be -90dBr signal from left to right channel, which is a not great.
Stereo Crosstalk L to R (-90dB).png


Frequency response is good! Lower frequency roll-off (-0.2 dB) is due to ADC. Higher frequencies are essentially flat but have some slight oscillations. Could it be the caused by DEMP and FLT input choice?
Frequency Response.png


By looking at output filter response, one can see -2dB attenuation at 21kHz, -35dB at 22kHz that further drops to -60dB and stays there. Not the best out there, but well controlled and competent!
Output Filter Frequency Response.png


Noise floor in Multitone test is surprisingly good (-100 dBr), however, it shows some spurs that hint to IMD problems. Spurious – Free Dynamic Range (SFDR) is 78.8 dB which translates to 13 bits.
Multitone 32 (AP).png


Jitter test seems to be OK. Problems arise elsewhere.
JTest 24.png


Intermodulation could be one of causes of spurs in Mulitione. It is only around -80 dB in both STMPTE and CCIF tests.
IMD SMPTE 60Hz + 7kHz.png


IMD CCIF 19k + 20k.png


6. Summary and concluding remarks

I had some expectations coming into this review:
  • Minimum: Board should work and be at least slightly better than RPI HP output. Check!
  • Average: Board should not be seriously flawed, and performance should be significantly better than RPI HP output. Check!
  • Maximum: Board should work flawlessly and deliver specs of PCM5102A DAC chip. Nope…
While there could be some technical issues of my set up I am not aware of (please enlighten me, if you see/know some), it seems that PCM5102MK v2.0 board limits performance of the chip and could have better integration.

For roughly 8€ you can have an actual DAC chip for your RPI (rather than using PWM) that preforms far better in every test shown here.

In the grand scheme of things, SINAD is between “Poor” and “Fair” categories considering standards of this forum at 88.2 dB. SNR is 90 dB at this point. To achieve this, set RMS to 0.375V 1kHz sine or 70% volume in Volumio. Thus, full scale output of 2.1V is compromised by -15 dB. That is a lot…

Noise is relatively low, but higher SINADs (and output levels) are somewhat limited by THD, that starts to kick-in after 70% of volume. Unfortunately, IMD limits SFDR to 13 bits or so… :/

Will it do a good job in a small room or desktop use? In most cases, certainly!

This DAC board can be used with any I2S device, not only RPI. However, I imagine, this will be go-to scenario in most cases. Bear in mind that it is not a HAT, thus more DIY-ing will be required.

PCM5102MK v2.0 board is OK in my book and would get a nod. Especially for the price - you don’t need to solder anything, it has RCA and 3.5mm out and looks fine. While it uses a simple DAC chip with minimal (and seemingly imperfect) integration, it would be a miracle if it would compete with Allo Boss 2 DACs or alike.

So, what do You think Guys - Chapeau ou non?

Let me know in the poll. ^_^


P.s.

You are amazing if you made this far! This was one loooong review. Don’t know when next one will be out and how long it will take, but I have one more idea. Happy Easter everyone!

Looking forward for Your reasonable critique and suggestions.
 

Attachments

  • Hook-up.jpg
    Hook-up.jpg
    235.3 KB · Views: 159
  • PCM5102 board.jpg
    PCM5102 board.jpg
    122.4 KB · Views: 118
  • Board.jpg
    Board.jpg
    372.8 KB · Views: 124
  • PCM510xA comparison.png
    PCM510xA comparison.png
    127.6 KB · Views: 109
  • 70%.jpg
    70%.jpg
    268 KB · Views: 127
Last edited:
Sometimes results like the ones with the full output is not only on the DAC's side to blame as many ADC's don't like voltages higher that 1-1.5V (autoranger,scalar,etc fix that) .
I also seems that some gain is involved in that part.

Other than that,great review,thanks!
 
Last edited:
That's a fun read, @Linards thanks for writing it.

I'm answering: non! because...

In 99.99% of cases using RPI for audio playback will be a DIY project.

There are definitely some pre-build, pre-configured, plug-n-play products out there, but prepare to pay extra for that. Also, I am not quite sure if such products still carry “genuine spirit” of RPI, but hey!

... despite being very cheap (which is gr8) it's not really much more DIY that any other. The use of wiring allows you perhaps a bit more flexibility in how you embed the parts in a case but mot much. What it appears to lack for DIY, like most products, is access to allow you to improve it. Imagine the board was a bit bigger and gave you pads to mess around with, i.e. providing easier soldering and cutting access. Then you could try your circuit ideas.
 
Nice write-up including background info on the pi. For the same price-range I find the Apple USB-C dongle with USB-A to USB-C converter hard to beat. 0.9V of usable output with the US model, or 0.5 V with the EU model. Both beat the ~0.3V for this DAC board and have higher SINAD. The samplerate of the Apple dongle is limited to 48kHz, so the PCM5102 wins there with 384kHz.

I have a Pi streamer setup running MOode Audio with the Apple USB-C dongle as a DAC and have been pretty happy with it.

edit: changed "DAC hat" to "DAC board".
 
Last edited:
Well done! There are many quality Pi HATs out there that offer transparent performance. Along with a few non-HATs such as Khadas dac boards.

In addition, there is nothing that prevents one from just hooking up a Pi via USB to a modestly priced external DAC (Topping, SMSL) and have a good transport of streamer. That's how I do my streaming.

Keep the reviews coming, Linards. I tip my Chapeau to you! Are you a fan of Skynyrd, Linards?

 
Wonderful! Keep them coming…
 
Thank you so much for generous the sharing of your knowledge, and most importantly- time! Read the entire post, which, in turn, has motivated me to dust off my dusty old RPI 4, and various chapeaus! Thank you brotha, rad!!
 
Nice review

(Accurate french translation is '' chapeau ou pas ? " , ''chapeau ou non'' doesn't mean anything btw ;))
 
Excellent!
I find it somehow cute that you explain the french title.
Next time let us figure it out by ourselves. ;)
 
Frequency response is good! Lower frequency roll-off (-0.2 dB) is due to ADC. Higher frequencies are essentially flat but have some slight oscillations. Could it be the caused by DEMP and FLT input choice?
View attachment 358929
Thanks for the review. As others have said, with super cheap good performing dongles available that can be repurposed for other uses, i don't see much use for these plain stereo hats anymore.

Got a very similar high frequency oscillations when measuring a M-track solo in loop. No idea what's causing it. It is very little though.

1711353441455.png

@Julian Krause got the same in his review of the same interface.
 
Nice write-up including background info on the pi. For the same price-range I find the Apple USB-C dongle with USB-A to USB-C converter hard to beat. 0.9V of usable output with the US model, or 0.5 V with the EU model. Both beat the ~0.3V for this DAC board and have higher SINAD. The samplerate of the Apple dongle is limited to 48kHz, so the PCM5102 wins there with 384kHz.

I have a Pi streamer setup running MOode Audio with the Apple USB-C dongle as a DAC and have been pretty happy with it.

edit: changed "DAC hat" to "DAC board".
Different use cases. This would be good for experimenting with audio on a Pi Pico, ESP32, Teensy or similar MCUs that have I2S. Or trying multichannel with a Pi 5.
 
Sometimes results like the ones with the full output is not only on the DAC's side to blame as many ADC's don't like voltages higher that 1-1.5V (autoranger,scalar,etc fix that) .
I also seems that some gain is involved in that part.

Other than that,great review,thanks!
@Sokel Thanks for this note! I use minimum gain and leave it like that on ADC and on external indicator it does not seem to clip... You got me thinking if I should increase gain on ADC when measuring attenuated signals. Potentially this could give a better resolution, right?
 
I have a Pi streamer setup running MOode Audio with the Apple USB-C dongle as a DAC and have been pretty happy with it.

@m0nsieur Nice - I haven't thought of this!
RPI Zero 2W + decent USB dongle would probably make a great streamer for very little money! ^_^
 
  • Like
Reactions: MCH
Back
Top Bottom