this module is similar to this but it's not the same, it is better because does support the serial communications with arduino
it also has a LM4871 build in amplifier (3w@3ohm or 2,5w@4ohm)
what i don't understand is:does it support stereo speaker out?
from what i can see, the earphone out supports 2 DAC channels while is not clear about the speakers (SPK1 and SPK2 = 2 channels??)
I was unable to make this WTV020M01 works. It's a St !!! (Most people can't make this St working.
You MUST have a Sandisk 2Go SD Card, but mine doesn't works.
So,
I try this DFPlayer mini.
No luck with my Arduino nano but... Why not try with my Arduino Uno.. and :
It Works !!! Nice sound with a 0.5W 8Ohms Speaker.
I try several speakers and it works great.
I try a Kingston 2Gb SD Card.
FAT/FAT 32 : Works.
Mp3, wav : Works.
The library is really poor but can be improved.
I will probably do it after my project.
I thinks it can works why my Nano, it's my fault, i try later.
Just one thing, You must unwire TX/RX for upload sketch to Arduino.
I think Software serial is possible.
For my project, a Arduino Darts with voices, the library is perfect, just play (n° file).
Thanks for sharing this info. I saw this module on Alieexpress before and wondered how well it really worked. The 2 Gb limitation was slightly offputting to me. (Not because of the size, but the availability of suitable SD cards)
I have a question for you: Is it a requirement that the files are named like 1.mp, 2.mp3, 3.mp3 etc? Or can you also use names like songa.mp3, songb.mp3 etc.
3 days i'm working with this DFPlayer and... humm.. my brain will explode ;/
very strange behavior.
It's a pain to use this module with RX/TX from arduino (Hardware Serial).
You MUST unplug RX/TX for upload to Arduino. It's very very boring but i know this problem (as serial bluetooth module and others serial devices).
So, use le news library and/or use Software Serial is recommended.
The problems identified :
Time to boot is random, i don't know why sometime it take 1s, some time 20s...
Easy to crash if you send commands too quick or....random crash/random start...
Sound at 100% (30/30) is nice but sound at 35% (10/30) or others is crackle. (must use 100% volume or sound isn't perfect).
I read everything I could find on the DFPlayer but the information is contradictory.
delay(2000);* } // ************************************************** I put screen capture, see the forum doesn't print my sketch correctly. This module isn't perfect bu it works. I don't know if i can use it for my project, i want a playeur module, fast ans without bugs. > I have a question for you: Is it a requirement that the files are named like 1.mp, 2.mp3, 3.mp3 etc? Or can you also use names like songa.mp3, songb.mp3 etc. Name as you want and create folders but : I don't know/understand how it works I try it again and again.. next post... Edit : I create "reset" fonction and i do this at boot time. - mySerial.begin(9600); - delay(400); - rst(); - delay(400); - vol(30); - delay(400); And it boot fast, no bug... (for this time...). I think i can reduce wait time between serial commands. Edit: it appears that with .mp3 instead of .wav, the "clap ! sound" at start playing isn't as high. Bur for looping sample, i think it can be a problem. Now i will try it folders can be used.
Thanks for sharing all that you have learned about this module. I guess its a case of you get what you pay for. It is a cheap module which is probably good enough for a toy or joke gadget. But not really suitable for an advanced project requiring reliability and predictability.
Today i tried to make folders working, but no luck, no work.
I don't know why, i have understood the DFPlayer protocol and i send the good commands.
Equalizers (Normal/Pop/rock/Jazz/Classic/Base/...) Works !
In the DFPlayer manual, i saw : Only 6 EQ, same in the DFRonbot Wiki.
But i don't remember where, i saw 10 EQ, i try this and there seems to be 11 equalizers (0-10) NOT SURE.
I always have a small "clap" sound before playing each sample (i tried others .mp3).
I tried 4 speackers, no hardware issue.
I will try level shifter soon for TTL (3.3) TX
Files are namad :
00.1mp3 002.mp3 ... 022.mp3 024.mp3 ...
There's no 023.mp3 ...
If i send a command to DFPlayer to play sample 001 to 022, it play 001.mp3 to 022.mp3 but,
if i ask to play file name 023, it play 024.mp3.
The DFPlayer doesn't care of files names, it play files as they are in folder structure.
You can name the files as you want, it doesn't care.
It's a pain to organize the mp3 on sdcard.
something else,
i always have a "clap" sound at startup playing sample,
It i put volume to 0 (0-30) i always have this "clap".
If your sample start immediately, probably no hear this "clap" but it there is a silent before, a "bad clap" is announcing the sample.
Is anyone know a samples player module, cheap and i2c controlled ?
SPI, no needed.
Serial, humm....
But I2C can be a good solution.
i used a sd card that writed on that micro sd TM,2GB without any other thing .similar this attached pic:
format of file is 001.mp3,002.mp3,003mp3,...
sd card forma:fat/fat32
speaker : 0.5 watt,8ohm
i use switch command based on second pic without any other controller.
power supply: 3.3-5.5 v examined
notice ; when the player supplied by 4V and higher voltage blue LED is lights and busy pin is 2.2V to 3v
first excuse me for bad english
i tested module again and again with this micros:
1: 4gb gigastone
2: 2gb taiwan
3: 2gb team
4: erased !
but reaction of module:
1: led off,busy 1, no sound
2: led on,busy 0, no sound
3: led on,busy 0, no sound
4: led on,busy 0, low voice (zzzziiizz)
by these result can i conclude that module is ok or damaged?
notice: i run without controller but tomorrow try it. and module dont react to increasing volume
Im currently working on a project to play random audio tracks when no sound is detected, the random track played when there is no sound MUST start from the beginning. When sound is detected the DFPlayer must stop playing or pause. The DFPlayer is connected to the Arduino via serial connection. Ive spent 3 days playing with the serial code but cant get it to work, the DFPlayer works fine stand alone but not via serial can someone please help. Ive included my code but have removed all the code to send via serial if someone can help its driving me mad.
int soundSensorpin=A4;
int soundReading=0;
int soundThreshold=300;
int relay1pin=9;
int relay2pin=10;
void setup() {
// initialize the button pin as a input:
pinMode(relay1pin, OUTPUT);
pinMode(relay2pin, OUTPUT);
pinMode(soundSensorpin, INPUT);
// initialize serial communication:
Serial.begin(9600);
//setup code for player if needed
}
void loop() {
static uint32_t ts = millis();
static uint16_t counter = 0;
// If the counter > 0 then count down by 1. If it reaches 0 then switch back to music.
if (millis() - ts > 0) {
if (counter > 0) {
counter--;
if (counter == 0) {
//code here needs to play random track starting from the beginning of track
digitalWrite(relay1pin, LOW); // relay open
digitalWrite(relay2pin, HIGH); // relay close
}
}
}
// If there is sound, then switch to speech, and set the counter to 1000.
soundReading = analogRead(soundSensorpin);
if (soundReading > soundThreshold) {
counter = 5000;
//code here needs to stop or pause player
digitalWrite(relay1pin, HIGH); // relay close
digitalWrite(relay2pin, LOW); // relay open
}
}