MP3 player

MP3 player

Output Serial

A grove compatible MP3 player module controllable over serial


Required Libraries

link to library

Basic Usage

import board
import busio
import digitalio
import time
from DFPlayer import DFPlayer

# Configuration
# Adjust pins for your specific board
UART_TX = board.GP0
UART_RX = board.GP1
BUTTON_PIN = board.GP15

# Setup UART
uart = busio.UART(UART_TX, UART_RX, baudrate=9600, timeout=0.1)

# Setup Button
button = digitalio.DigitalInOut(BUTTON_PIN)
button.direction = digitalio.Direction.INPUT
button.pull = digitalio.Pull.UP

# Initialize DFPlayer
df = DFPlayer(uart, debug=False, volume=10, command_delay=0.1)

print("Simple DFPlayer Example")
print("Press button to go to next song")

df.play_track(1) # Start with first track

last_button_state = True
while True:
    current_button_state = button.value
    
    if not current_button_state and last_button_state:
        print("Button pressed! Next song...")
        df.next()
        
    last_button_state = current_button_state
    time.sleep(0.05)

Further readings

DFPlayer_Mini_SKU_DFR0299-DFRobot
Datasheet