I am working on a project that uses the DFPlayer Mini MP3 Player, and I have been having some issues with it overheating. (Schematic can be found below). From what I have seen online, my application is very different than all the rest. I am not wanting to drive speakers with this module: I want to output the audio to a Kenwood radio. I have seen some reports online of fake/offbrand modules having issues with overheating, so that could be the issue (I purchased them off Amazon). However, I want to make sure that's not it before I redesign my custom PCB.
I haven't left it powered up long enough to let the magic smoke out of the components because I don't want to fry my MP3 board but especially the Olimex one.
Setup
uC: Olimex ESP32-PoE-ISO
MP3: DFPlayer Mini MP3 Player
Issue:
uC: Components on the Olimex board heat up immediately upon power-up and only get hotter
MP3: MP3 player's SD card slot slowly starts heating up upon power-up
Signals
TX: Olimex board's UART TX signal
RX: Olimex board's UART RX signal
MIC_OUT: Audio output to a potentiometer (for attenuating signal before going to Kenwood radio)
MIC_GND: Audio ground to Kenwood radio
BUSY: Digital output to Olimex board
Offhand, I would imagine that your problem is in attaching the differential speaker outputs to the microphone input of the radio. Especially since one of the outputs is being grounded. Ouch.
Yes, I anticipated that that would be an issue. Without having any information (from DF Robot) on the SPK1 and SPK2 outputs, I don't know how to handle them without using a speaker. I'm guessing I can do some clipping of pins and soldering to make the necessary connections, but how do I do that?
My first guess is to connect the MP3 player's SPK2 pin to GND, but that doesn't make sense because SPK2 is connected to MIC_GND of the Kenwood radio which is separate from pwr GND. So, am I just out of luck with my current setup? Is it looking like I'll have to redesign my board to add more components to account for the differential speaker outputs?
Don't GND the SPKR outputs. The speaker leads go to the SPKR terminals. It's not a 'MIC' level output, it's a "power amp" (With differential output, not ground-referenced output).
Tx goes to Rx;
Rx goes to Tx.
DAC_r and DAC_L are "line level", but still vary with the volume setting / value.
To verify the DFPlayerMini is not the problem, test/use the DFPlayerMini in stand-alone mode. The speaker +/- can handle a 3W speaker or piezo buzzer. Apply Vcc and GND, then short-circuit IO1 or IO2 to ground to play NEXT file (short press) or PREV file (short press). To increase or decrease volume use long press on IO1 or IO2. You could also use the microcontroller to do the up/down button pushing.
I don't have a speaker on me right now (will try tomorrow), so I guess I can't verify that the MP3 player is working. However, my Olimex board is communicating with it successfully (aka starting it with MP3.begin()). On the SD in the MP3 player, I have a file called "mp3" that has one .MP3 file in it named "0001.mp3".
I can verify that the SPK1 and SPK2 connections to MIC_IN and MIC_GND are causing the overheating. The issue now is how to get the audio output in the MIC input to my Kenwood radio.
I'm guessing I'll just use DAC_R or DAC_L as the audio input (MIC_IN), but I'm not sure what to do wtih the MIC_GND. Obviously, I can't leave this floating, but I can't connect it to GND either. Any ideas?
Yes, my last replay (No. 8) was in response to yours (No. 5) and No. 7.
I'm going to test out the DAC_R and DAC_L outputs today and feed them to the radio. I just tried out my MP3 player with a speaker, and I get nothing. I notice that when I power-up the MP3 player (with the SD card inserted), the red LED comes on immediately but turns off after half a second. I'm not sure if this indicates that there's something wrong, but the Olimex is able to communicate with the device (aka MP3.begin() returns true). However, I still can't get a song to play. Perhaps the audio file on my SD card is not formatted correctly or in a poorly named folder.
I need to figure out that part first before moving on to the DAC outputs. This is my first experience with the DFPlayer MP3 Player, so the problem could be that I have made a dumb, simple error and just don't know it.
The original post was in regards to the overheating of the MP3 Player and the Olimex board. The solution for that issue was to NOT have the SPK1 and SPK2 connections from the MP3 Player going to the Kenwood radio.
Another issue was that I couldn't get any of my files to play. It turns out that I made the classic id 10 t error: I was an idiot and didn't put my audio files in the correct configuration (aka file name and folder name) or call the right function to play the audio. I've got that fixed.
Lastly, I can now output the DAC_R to the radio which will broadcast the audio message. GREAT! However, the audio quality isn't so great, so that'll be my next endeavor (may make a separate post for that one).
So, after having figured it out, this is what I have:
I get the feeling that your unit is probably not a genuine DFplayer (some ama-baba clone).
The LED is supposed to be on when the track is playing.
My MP3 player module's red LED comes on at power-up but immediately turns off. Then, when a track is playing, the LED is on for the whole time until it stops. Great.
Having one of the player's output pins at GND, as you depicted, may have whacked the power amp. The DAC outputs may still be useable.
After using a speaker to test out the module, all seems to be working just fine. So, thankfully I didn't burn up anything
The Mic_gnd and player GND should be conn'd. Then either of the DAC outs to the Mic-in. As I mentioned, they are Ground referenced - unlike SPKR1/2.
Great advice. I tried this out and was able to get my audio pumped through the Kenwood radio. Thanks for the help.
Is it a stereo microphone?
This is a bit speculative, not sure the DAC and Mic situations are a match impedance-wise.
I'm not too sure about the microphone, but I agree with you that there might me some impedance mismatching going on. The audio sounds fine coming out of the speaker (using the SPK1 and SPK2 pins) but very noisy through the radio (using DAC_R).
Hello! Could you please tell me how did you write your commands and file names. I am also having the same issue and i think your solution is really suitable for mine. Thank you so much for responding