Topic: DFPlayer Noise: Researched, Tried, and Bep Bep Bep Bep Bep ...
Account cancelled 2018-02-15 04:15:27 5222 Views3 Replies Spent an entire day researching and attempting to fix the DFPlayer noise problem. The amp works as expected, so it is not the problem. I have made a video to help you better understand the sound produced: https://www.youtube.com/watch?v=uK2kkR0 ... e=youtu.be
https://imgur.com/oce7We9
The amp with speaker works as expected using another similar mp3 player like from a computer or possibly a phone.
https://imgur.com/UkiO8oS
Here we get the bep bep bep bep bep... as the amp/speaker has its own battery power.
https://imgur.com/vjsYYlL
Here I made everything as one power source. Bep bep bep bep bep...
I think I exhausted my research and made the following attempts:
[li]Electrolytic Capacitor parallel with ceramic capacitor from negative terminal to VCC in DFPlayer[/li]
[li]Diode from positive terminal to VCC in DFPlayer [/li]
[li]Battery Power source; USB power source; Power Supply power source; 5V USB plug regulator power source[/li]
[li]1k Resistor from TX RX; Rx Tx[/li]
[li]1-10k resistor from Rx Tx[/li]
[li]1k between channel to GND[/li]
[li]Separate power source for each the Arduino, amp, and DFPlayer[/li]
[li]Tried multiple DFPlayers[/li]
Keep note that the amp/speaker works well. The files are the same both on the computer and in the SD card.
Here is my code:
Code: Select all#include <DFRobotDFPlayerMini.h> /*************************************************** DFPlayer - A Mini MP3 Player For Arduino <https://www.dfrobot.com/index.php?route=product/product&product_id=1121> *************************************************** This example shows the basic function of library for DFPlayer. Created 2016-12-07 By [Angelo qiao]([email protected]) GNU Lesser General Public License. See <http://www.gnu.org/licenses/> for details. All above must be included in any redistribution ****************************************************/ /***********Notice and Trouble shooting*************** 1.Connection and Diagram can be found here <https://www.dfrobot.com/wiki/index.php/DFPlayer_Mini_SKU:DFR0299#Connection_Diagram> 2.This code is tested on Arduino Uno, Leonardo, Mega boards. ****************************************************/ #include <Arduino.h> #include <SoftwareSerial.h> #include <DFRobotDFPlayerMini.h> int counter = 0; SoftwareSerial mySoftwareSerial(10, 11); // RX, TX DFRobotDFPlayerMini myDFPlayer; void printDetail(uint8_t type, int value); void setup() { mySoftwareSerial.begin(9600); Serial.begin(115200); Serial.println(); Serial.println(F("DFRobot DFPlayer Mini Demo")); Serial.println(F("Initializing DFPlayer ... (May take 3~5 seconds)")); if (!myDFPlayer.begin(mySoftwareSerial)) { //Use softwareSerial to communicate with mp3. Serial.println(F("Unable to begin:")); Serial.println(F("1.Please recheck the connection!")); Serial.println(F("2.Please insert the SD card!")); while(true); } Serial.println(F("DFPlayer Mini online.")); myDFPlayer.volume(15); //Set volume value. From 0 to 30 delay(1000); myDFPlayer.enableDAC(); //Enable On-chip DAC } void loop() { static unsigned long timer = millis(); if(millis() - timer > 1000 && counter == 0) { myDFPlayer.play(1); Serial.println(F("Music Started")); delay(1000); Serial.println(F("1 second later...")); delay(6000); Serial.println(F("7 seconds later...")); delay(1000); counter =1; } delay(7000); if (myDFPlayer.available()) { printDetail(myDFPlayer.readType(), myDFPlayer.read()); //Print the detail message from DFPlayer to handle different errors and states. } } void printDetail(uint8_t type, int value){ switch (type) { case TimeOut: Serial.println(F("Time Out!")); break; case WrongStack: Serial.println(F("Stack Wrong!")); break; case DFPlayerCardInserted: Serial.println(F("Card Inserted!")); break; case DFPlayerCardRemoved: Serial.println(F("Card Removed!")); break; case DFPlayerCardOnline: Serial.println(F("Card Online!")); break; case DFPlayerPlayFinished: Serial.print(F("Number:")); Serial.print(value); Serial.println(F(" Play Finished!")); break; case DFPlayerError: Serial.print(F("DFPlayerError:")); switch (value) { case Busy: Serial.println(F("Card not found")); break; case Sleeping: Serial.println(F("Sleeping")); break; case SerialWrongStack: Serial.println(F("Get Wrong Stack")); break; case CheckSumNotMatch: Serial.println(F("Check Sum Not Match")); break; case FileIndexOut: Serial.println(F("File Index Out of Bound")); break; case FileMismatch: Serial.println(F("Cannot Find File")); break; case Advertise: Serial.println(F("In Advertise")); break; default: break; } break; default: break; } }
Gary
garystofer Since you are using a speaker..... why are you not using the speaker pins? (but instead the DAC pins?)
Trying using SPKR1 & SPKR 2
Not quite the same.. but my lingering problem is a huge POP from the speaker when it gets powered on/off.. playback is fine..
This article has a theory.. (although I havent tested it)
http://work-now-dammit.blogspot.dfrobot.at/2 ... scent.html
whispers007
boyleb 
