DFplayer mini sound too quiet, low volume

I have set up my DFplayer mini using just the I/O mode (no arduino board) as per the set up


Putting my small 30mm diameter 8ohm, 2 W speaker in either the SPK1 or the DAC_R pins and get a very very quiet output.
Is my speaker just too small?
Is this the right impedance? / wattage?
I actually purchased 2 DFplayer mini units, and both have the same problem, so I don’t think it is a problem with the players’ amplifiers.

This is my first electronic hobby project, so I am not very fluent in speaker lingo.
Any suggestions on what I should try would be very helpful. On most of the videos on youtube I have found, people have pretty loud volume, but don’t mention the specifications of the speakers they are using.

I’d go with a higher impedance speaker - and don’t connect the speaker directly to the DAC pins. The 3W amp is connected to SPK1 & 2.

Are you powering the module with 5V or 3.3V?
Have you tried volume control?

i have used a 8ohm .5 watt speaker before with a similar low power output and it was good sound loudness, although it was a quite small speaker. 2 watt or over speakers better to have 4ohm unless you plan to add an external amplifier to the mix.

in context to the connection diagram you should check your resistance used.
"Note: For simple use ,the upper diagram is ready,But if you find the noise is quite loud, then you could attach an 1K resistor to the TX pin."
In your case, it is too quiet, which resistance did you use where?
Like to post a picture of your structure?

Did you set the speaker volume to the max in the setup() ?

I have something like…

void setup() {
   mp3_set_volume (0x30); // Set the volume to max

void execute_CMD(byte CMD, byte Par1, byte Par2) {
    // Calculate the checksum (2 bytes)
    int16_t checksum = -(Version_Byte + Command_Length + CMD + Acknowledge + Par1 + Par2);
    // Build the command line
    byte Command_line[10] = { Start_Byte, Version_Byte, Command_Length, CMD, Acknowledge, Par1, Par2, checksum >> 8, checksum & 0xFF, End_Byte};
    //Send the command line to the module
    for (byte k=0; k<10; k++) {
        Serial1.write( Command_line[k]);

//0x06 set volume 0-30
void mp3_set_volume(uint16_t volume) {
    volume = constrain(volume, 0, 0x30);
	execute_CMD(0x06, 0, volume);
1 Like

I finally had time this week to sit down and troubleshoot a bit. Only after trying several different speakers that I had around, did I realize that it was actually the waffle board that Ihad my initial setup on that was not providing a very good connection. I went ahead and soldered everything together with the original speakers, and now it works great. It isn’t super loud, but it more of what I expected.

Thanks for all the comments and help.

For anyone googling around for help like I did, I will provide more details–

I did end up connecting the 8ohm, 2 W speakers ( I have two) into SPK1 and SPK2 as ScruffR suggested. I am using a 4.5 Watt battery pack to power the setup (3 AA batteries).
I have everything set up through the DFplayer mini and don’t have any external Arduino board or added amplifiers or resistance-- so I am just using the two button setup which allows you to dial through the songs with a short press and volume control with a long press.


If you want to add some glamour to your setup, you could have a look at this

1 Like