DFPlayer: Play audio announcements over HamShield

  • Sale
  • Regular price $ 6.95

Want to play different audio announcements over HamShield? You can with DFPlayer.

DFPlayer is a serial controlled MP3 playback device that supports SD cards up to 32GB! With DFPlayer you can:

  • Speak your call sign in a natural voice over HamShield
  • Playback dozens of different repeater announcements and statuses
  • Build remote controlled DTMF devices, such as robots and simulated landers, that report spoken status back to you
  • Make a signal strength parrot to announce your signal in dBm to test antenna coverage areas
  • Automated announcements on your CubeSat or HAB

DFPlayer can be used with an easy-to-use Arduino library, saving valuable flash space for your software projects. You can plug DFPlayer directly into HamShield's audio pins.


  • Supported sampling rates (kHz): 8/11.025/12/16/22.05/24/32/44.1/48
  • 24 -bit DAC output, support for dynamic range 90dB , SNR support 85dB
  • fully supports FAT16 , FAT32 file system, maximum card size of 32G, 64M bytes internal NORFLASH
  • A variety of control modes, I/O control mode, serial mode, AD button control mode (most Arduino libraries use a software serial to communicate, as mentioned below)
  • Audio data is sorted by folder, supports up to 100 folders, every folder can hold up to 255 audio files (and 1000 audio files in "large folder" mode
  • 30 level adjustable volume, 6-level EQ
  • Breadboard compatible pins (breadboard not included)



 VCC Power (3.3V-5V)
RX Connect to Arduino TX line or software serial
TX Connect to Arduino RX line or software serial
DAC_R Connect to HamShield Mic input
DAC_L Left audio channel (can also be connected to Mic input)
SPK_1 Speaker - (should only be connected to speaker <3W)

Connect to ground


Speaker + (should only be connected to speaker <3W)


Low when playing, High when not playing


USB DN connection


USB DP connection


Trigger play (button mode)


Trigger play (button mode)


Short press: play next, Long press: increase volume


Connect to ground


Short press: play previous, Long press: decrease volume



While there are a variety of libraries available for DFPlayer, we have found that this library works best:


Connecting to HamShield

We will assume you are using an Arduino Uno with the DFPlayerMini_Fast library. This library makes use of a software serial interface, freeing up the Arduino serial port for other uses -- like debug output.

  1. Connect either DAC_R or DAC_L to pin 1 on the HamShield TRRS header (Mic). You will need to adjust the volume and mic gain accordingly to avoid distortion, depending on the volume of your audio recording.
  2. Connect both GND pins to Arduino ground
  3. Connect pin 11 on the Arduino to the RX pin on the DFPlayer. Note that 5V Arduino systems shoudl make use of a 1K resistor between the two pins
  4. Connect pin 10 on the Arduino to the TX pin on the DFPlayer. 
  5. Connect Arduino 5V pin to the VCC on the DFPlayer