-
Project update
09/10/2021 at 09:23 • 1 commentAt one point I've decided to create ESP-32 based web-radio in the case of old classic radio.
This one I've bought for around 50 euros, it wasn't working obviously, and frankly didn't bother to fix it. From one point I'm not a big fan of AM, from the other it has a very peculiar schematics, it runs from mains directly without input transformer of any kind. If you push the socket in the "right" direction all metal parts will be live, so decided I wouln't want to have that anywhere in the house near children playing with screwdrivers.
Going back to the project. I've forked Ka-Radio32 repo, which is a ready to use wifi radio project. What I needed to do is to add HW definition of my board, and more importantly add TAS5805 amp support, since this is the amp I have on the board.
With that done it is relatively easy to fins some space within the box for new board and remote control receiver. Also I've connected power-on switch from the radio itself, and put IR receiver under the front panel
And the final result is below.
-
TAS5805M I2S DAC prototype
06/06/2021 at 20:28 • 0 commentsI've decided to take stakes a little higher and prepared bigger version of previous prototype. New one used Texas Instruments TAS5805M DAC, which is a big upgrade actually
- It have high power stage, producing up to 23W per each of 2 channels (yeah!)
- obviously it requires more than 5V over USB, so i had to redesign power circuitry completely.
- it requires I2C additional to I2S to communicate and few GPIOs to report it's status.
Because power stage took a lot of PCB space, screen went other side of the board for now. On the bright side, i could take a larger screen, since i have plenty of space now.
So all together it is quite a different beast and I'm trying to find time to write firmware to get it started even. I get Ka-Radio32 firmware working on both prototypes and it works brilliantly on PCM5102 version. Currently working on TAS5805M addon to jump start the big thing.
-
New PCB to play with (PCM5102A)
11/09/2020 at 14:14 • 0 commentsTo play more with best DAC found so far i preapred and ordered custom PCB. This uncludes ESP32 module socket, power converter for PCM5102, and DAC itself. Just for fun also added 8 sensor buttons, IR reciever and OLEd screen. For now no specific plans, just made audio part produce sound and looking for specific project to drop in
And yes, i switched to ESP32 now. Having experimented a little, i see that single core ESP-8266 is not capable to handle wifi and mp3 audio decoding on single core. One way to go around that is to use external mp3 decoder, another it to use more cores. Second option looks more fun to me.
For now flashed great ESP32_MP3_Decoder to start with. It plays internet stream smoothly, and audio quality is great, as far as i can tell.
And last note. For this one i used 10uF ceramic caps instead of tantal ones. Normally they are not recommended for audio applications due to piezoelectric effects, but as far as i can tell, they are just good enough. I can't tell a difference, that is all that matters to me
-
Testing TDA1543A and TDA1545A
07/15/2020 at 20:17 • 0 commentsNext to test was 2 classic budget ICs: TDA1543A and TDA1545A. Unfortunately, despite the time spent i failed to make them work properly. I suspect that they could be fakes, since i got them from chinese platform for a price of € 1,6 per 5 pieces, giving € 0,30 a piece. I have no plans to buy them from trusted supplier, since then price leaven no senso of using them in low-budget projects.
Data format: left justified, stereo output
Ouput: high-impedance, biased, requires output driver
Price: ~€0.30 per unit
So lets call them replicas of TDA154X and see how output looks like. I've connected both according to original's datasheet, input still the same: mono wav file generated by esp8266 module using ESP8266Audio library modified for LJ format, industry standard 44.1Khz sampling rate.
TDA1545A, no output filters, 2KHz
TDA1545A, no output filters, 10KHz
Input signal is visible, so i guess data format is OK. However waveform is so messed up, i can't be bothered to connect it to amp and speakers.
TDA1543A, no output filters, any signal
I failed to make it work really, it looks like input format is wrong, even it is ok for TDA1545, and they suppose to have same input format. So nothing I really could say about that.
I tried few different ICs, from same seller however, so makes not much sense to expect a difference.
-
Tests of PT8211 IC
07/14/2020 at 22:16 • 0 commentsNext to test is bare naked I2C DAC from unknown to me chinese manufacturer. It is advertized as (not really) direct replacement of TDA1311 DAC ond partially its successors TDA154X series. It requires output driver and i added one using 4558D opamp according to dtasheet application circuit
Data format: left justified, stereo output
Ouput: high-impedance, biased, requires output driver
Price: ~€0.10-0.20 per unit
Clearly it is here because the price, and it is not expected to have hifi performance, but rather support low-cost audio driver in projects.
Here is the setup.
Only element added to above is output 1uF cap to filter out DC.
Again, I only have toy oscilloscope, therefore results will be eye measured:)
Test signal is mono wav file generated by esp8266 module using ESP8266Audio library modified for LJ format, industry standard 44.1Khz sampling rate.
1KHz on the output, after driver
2KHz after driver
10KHz on the output, after driver
20KHz on the output, after driver
As you can be seen, already at 10Khz distortions are huge, and 20Khz is a mess. However up till 20Khz there is no fading out of signal, and despite harmonic distortions i expect it to sound quite nice (for the price). As i said before, this is bad candidate for Hi-Fi sound, but very promisiong chip for less demanding audio applications. I keen to see it in action.
-
Tests of PCM5102A module
07/14/2020 at 20:11 • 0 commentsNext to test is another popular module from unknown manufacturer based on PCM5102A chip. It has a bit strange power schematics compared to datasheet, but nevertheless it is one of my favourites in terms of usage in projects
Data format: I2S, stereo output
Ouput: medium-impedance, capable to drive headphones
Price: ~€4 per unit
Here is the setup. Test circuit is a module itself, since it has built in output filter. It is identical to my setup, apart of R=470 Ohm, C=2n2, giving same 30KHz cutoff frequency
Again, I only have toy oscilloscope, therefore results will be eye measured:)
Test signal is mono wav file generated by esp8266 module using ESP8266Audio library, industry standard 44.1Khz sampling rate.
1KHz before filter, after filter
2KHz before filter, after filter
10KHz before filter, after filter
20KHz before filter, after filter
What can be said here. It has relatively clear output even before filter applied. After filter i see no issues even on 20Khz. Curve is clean and properly leveled for every measured frequency.
To compliment more, I listen one of these modules every day in my home audio setup and I perfectly happy with it. Given it's price, no more to ask really.
-
Tests of MAX98357A module
07/14/2020 at 19:46 • 0 commentsFirst to test is popular ready-to-use module based on MAX98357A chip.
Data format: I2S, mono output
Ouput: 3W D-class amp, low-impedance
Price: ~€4 per unit, or ~€7 per stage
Here is the setup and test circuit
On the output there will be sine tones on following frequiencies: 1K, 2K, 10K, 20K
Unfortunately i only have toy oscilloscope, therefore results will be eye measured:)
Amp will be loaded with 10 Ohm resistor and measurment will be done on the output and after first-order low-pass filter set on ~30K cutoff frequency, which would be standard in every DAC's ouput.
Test signal is mono wav file generated by esp8266 module using ESP8266Audio library, industry standard 44.1Khz sampling rate.
1KHz before filter, after filter
2KHz before filter, after filter
10KHz before filter, after filter
20KHz before filter, after filter
As you can see, output is quite noisy, this is what you expect from low performance D-class amp, even after RC filter line is loaded with noise. Probably you can eliminate it more by adding more ouput filter stages, but since it is already beyond normal out-of-the-box usage of module, i will not do it for now.
More importantly alteady at 10Khz signal level is ~3V peak-to-peak, compared to ~4V at 1KHz. This is significant drop, most certainly hearable.
20Khz performance is beyond words. Signal is simply vanished.