How to play any audio file on Elecrow Display 4.3 inch

I am trying to play an MP3 file using ESP32-audioI2S** on my CrowPanel display. However, I am not hearing any audio output even though the MP3 decoding process seems to work fine.

Here is the serial log output when playing test1.mp3:
SD card initialized successfully. Now Playing: test1.mp3
Audio Info: MP3Decoder has been initialized, free Heap: 257352 bytes, free stack 5752 DWORDs
Audio Info: Content-Length: 372513
Audio Info: ID3 framesSize: 113
Audio Info: ID3 version: 2.4
Audio Info: ID3 normal frames
Audio Info: Audio-Length: 372400
Audio Info: stream ready

Here everything looks fine but I am not able to hear any audio from my speaker
Code I used:

include <Wire.h>

include <SPI.h>

include <SD.h>

include <FS.h>

include "Audio.h"

Audio audio;

define I2S_DOUT 20

define I2S_BCLK 35

define I2S_LRC 19

define SD_MOSI 11

define SD_MISO 13

define SD_SCK 12

define SD_CS 10

void setup() {
Serial.begin(9600);
while (!Serial);
pinMode(SD_CS, OUTPUT);
digitalWrite(SD_CS, HIGH);

SPI.begin(SD_SCK, SD_MISO, SD_MOSI);
SPI.setFrequency(1000000);

if (!SD.begin(SD_CS)) {
Serial.println("❌ SD card initialization failed!");
return; // Stop execution if SD card is not found
}
Serial.println("✅ SD card initialized successfully.");
audio.setPinout(I2S_BCLK, I2S_LRC, I2S_DOUT);
audio.setVolume(21); // Volume range: 0...21
Serial.println("🎵 Now Playing: test1.mp3");
audio.connecttoFS(SD, "/test1.mp3");
}
void loop() {
audio.loop(); // Necessary for continuous playback
}
void audio_info(const char *info) {
Serial.print("🔍 Audio Info: ");
Serial.println(info);
}
void audio_id3data(const char *info) {
Serial.print("📌 ID3 Metadata: ");
Serial.println(info);
}
void audio_eof_mp3(const char *info) {
Serial.println("✅ Song playback finished.");
}
void audio_showstation(const char *info) {
Serial.print("📡 Station: ");
Serial.println(info);
}
void audio_showstreamtitle(const char *info) {
Serial.print("🎶 Stream Title: ");
Serial.println(info);
}

My Questions
1. Are my I2S pin definitions compatible with the CrowPanel display?
2. Do I need any additional configuration for ESP32-audioI2S on CrowPanel?
3. Is there a way to verify if the I2S signal is actually being transmitted?
4. Any suggestions on debugging why no sound is output?

Tagged:

Comments

  • edited February 26

    It definitely looks like the MP3 decoding is working correctly based on your serial log - everything from SD initialization to the stream being ready seems fine. If there’s no sound, I’d probably start by double-checking the I2S pin configuration and whether it matches your CrowPanel hardware setup (BCLK, LRCK, DOUT).
    Also make sure your speaker or amplifier is actually connected to the correct output (some CrowPanel boards require an external I2S DAC or onboard amp to be enabled). It might also help to confirm the I2S sample rate and that the correct I2S port is being used soundboard at soundbuttonspro.com.

    Since the decoding is clearly happening, this feels more like a hardware wiring or output > configuration issue rather than a problem with the MP3 file itself.

Sign In or Register to comment.