Embedded B.Tech Intermediate

ESP32 MP3 Music Player with SD Card and I2S Amplifier

Build a standalone ESP32 MP3 music player that reads audio from SD card and outputs high-quality audio via I2S DAC amplifier with web control.

  • Suitable forB.Tech Embedded students
  • Build time3-4 weeks
  • LevelIntermediate
  • Available atAjvika Labs, Kakinada

About this project

ESP32 MP3 Player reads MP3 and WAV audio files from MicroSD card and outputs audio through MAX98357A I2S amplifier driving 3W speaker. ESP32-AudioI2S library handles real-time MP3 decoding using dual cores. Web interface lets you browse files, play/pause/next/previous, adjust volume. Supported formats: MP3, AAC, FLAC, WAV, OGG. Also supports internet radio streams when WiFi connected. Physical controls: rotary encoder for volume, 3 push buttons. OLED display shows song title, progress bar, volume. SD card via SPI: GPIO5=CS, GPIO23=MOSI, GPIO19=MISO, GPIO18=SCK. I2S: GPIO25=BCLK, GPIO26=LRC, GPIO22=DIN. Libraries: ESP32-audioI2S, SD, SPI, U8g2.

Detailed Project Description

ESP32 MP3 Music Player with SD Card and I2S Amplifier focuses on a specific hardware interface or peripheral and shows exactly how to wire it, drive it from firmware and verify it is working.

How It Works
1. The peripheral is connected to the controller using the required bus (SPI/I2C/UART/I2S/CAN/RS-485/PWM/ADC).
2. The driver library is initialised and the peripheral configured.
3. Firmware exchanges data with the peripheral and processes it (measure, decode, render, play).
4. Results are verified on a display, serial monitor or the receiving device.

Key Components and Their Role
- ESP32: dual-core Wi-Fi + Bluetooth microcontroller that runs the firmware, reads the sensors and hosts the network connection.
- OLED display (SSD1306): 128x64 I2C display used to show live readings and status.
- I2S audio interface: digital audio bus used for microphones and amplifiers.
- microSD card module: storage for logs, audio or images over SPI.

Implementation Steps
1. Collect the components and study each module's datasheet (pin-out, voltage, interface).
2. Wire the circuit on a breadboard following the pin mapping; power sensors from the correct rail (3.3 V / 5 V).
3. Install Arduino IDE, ESP32-audioI2S Library, U8g2 Library and the required libraries; flash a minimal test sketch for each module separately.
4. Write the main firmware: read sensors → process → drive outputs / send data.
5. Configure network or cloud credentials and test communication end-to-end.
6. Calibrate thresholds, add error handling (reconnect, sensor time-out) and run a long-duration test.
7. Finalise on a PCB / enclosure and document wiring, code and results.

Key Features
- Correct wiring and bus configuration
- Driver setup
- Data processing
- Verification on real hardware

Expected Output
On completion the student will have a working peripheral that is measured/driven exactly as intended.

Deliverables
- Complete source code with comments
- Circuit diagram and pin mapping
- Project report with screenshots and results
- Demonstration-ready build

Technologies used

ESP32Arduino IDEC++I2SSPIWiFiHTTP

Hardware components

  • ESP32 DevKit
  • MAX98357A I2S Amplifier
  • 3W 4-Ohm Speaker
  • MicroSD Card Module
  • OLED Display
  • Rotary Encoder

Software & tools

  • Arduino IDE
  • ESP32-audioI2S Library
  • U8g2 Library
  • SD Library

What you get

  • Working project / hardware kit, tested before delivery
  • Complete source code with explanation
  • Project demo and guidance for your viva
  • Project report, PPT and IEEE paper support (on request)
Delivery & Payment
Delivery takes a minimum of two weeks from the date your inquiry is confirmed. Payment is in two parts: • 50% advance to start the project • Remaining 50% before delivery Note: • Documentation and PPT are not included by default • If you need documentation/PPT, it can be arranged for extra time and cost We'll confirm the exact timeline and cost with you after reviewing your requirements.