The pipeline_play_mp3_with_dac_or_pwm project does not work
Posted: Mon Apr 13, 2026 9:48 am
After I compiled the pipeline_play_mp3_with_dac_or_pwm project and flashed it to the ESP32 DevKit board, the log gets stuck at:
“I (469) MP3_PWM_DAC_EXAMPLE: [ * ] Receive music info from mp3 decoder, sample_rates=44100, bits=16, ch=2”
and no PWM waveform is observed on IO18/IO23. The full log is as follows:
After I enabled "Support for external, SPI-connected RAM" and flashed the firmware to the ESP32-S3-Korvo-2 v3.1, the phenomenon is the same: no PWM signal is observed on IO18.
What should I do next?
“I (469) MP3_PWM_DAC_EXAMPLE: [ * ] Receive music info from mp3 decoder, sample_rates=44100, bits=16, ch=2”
and no PWM waveform is observed on IO18/IO23. The full log is as follows:
Code: Select all
Hard resetting via RTS pin...
Executing action: monitor
Running idf_monitor in directory D:\esp\esp-adf-master250415\esp-adf-master\examples\player\pipeline_play_mp3_with_dac_or_pwm
Executing "C:\Espressif\python_env\idf5.3_py3.11_env\Scripts\python.exe C:\Espressif\frameworks\esp-idf-v5.3.2\tools/idf_monitor.py -p com13 -b 115200 --toolchain-prefix xtensa-esp32-elf- --target esp32 --revision 0 D:\esp\esp-adf-master250415\esp-adf-master\examples\player\pipeline_play_mp3_with_dac_or_pwm\build\play_mp3_pwm_or_dac.elf --force-color -m 'C:\Espressif\python_env\idf5.3_py3.11_env\Scripts\python.exe' 'C:\Espressif\frameworks\esp-idf-v5.3.2\tools\idf.py' '-p' 'com13'"...
--- esp-idf-monitor 1.5.0 on com13 115200
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H
�(40) boot.esp32: SPI Sp�ets Jun 8 2016 00:22:57
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:7176
load:0x40078000,len:15564
ho 0 tail 12 room 4
load:0x40080400,len:4
--- 0x40080400: _init at ??:?
load:0x40080404,len:3904
entry 0x40080640
I (31) boot: ESP-IDF v5.3.2-dirty 2nd stage bootloader
I (31) boot: compile time Apr 13 2026 17:13:35
I (31) boot: Multicore bootloader
I (36) boot: chip revision: v1.0
I (40) boot.esp32: SPI Speed : 40MHz
I (44) boot.esp32: SPI Mode : DIO
I (49) boot.esp32: SPI Flash Size : 4MB
I (53) boot: Enabling RNG early entropy source...
I (59) boot: Partition Table:
I (62) boot: ## Label Usage Type ST Offset Length
I (70) boot: 0 nvs WiFi data 01 02 00009000 00006000
I (77) boot: 1 phy_init RF data 01 01 0000f000 00001000
I (85) boot: 2 factory factory app 00 00 00010000 00100000
I (92) boot: End of partition table
I (96) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=253b8h (152504) map
I (157) esp_image: segment 1: paddr=000353e0 vaddr=3ffb0000 size=024b4h ( 9396) load
I (161) esp_image: segment 2: paddr=0003789c vaddr=40080000 size=0877ch ( 34684) load
I (176) esp_image: segment 3: paddr=00040020 vaddr=400d0020 size=26238h (156216) map
I (230) esp_image: segment 4: paddr=00066260 vaddr=4008877c size=06130h ( 24880) load
I (247) boot: Loaded app from partition at offset 0x10000
I (248) boot: Disabling RNG early entropy source...
I (260) cpu_start: Multicore app
I (268) cpu_start: Pro cpu start user code
I (268) cpu_start: cpu freq: 160000000 Hz
I (268) app_init: Application information:
I (271) app_init: Project name: play_mp3_pwm_or_dac
I (277) app_init: App version: 1
I (281) app_init: Compile time: Apr 13 2026 17:23:37
I (287) app_init: ELF file SHA256: b0c80f512...
I (293) app_init: ESP-IDF: v5.3.2-dirty
I (298) efuse_init: Min chip rev: v0.0
I (303) efuse_init: Max chip rev: v3.99
I (308) efuse_init: Chip rev: v1.0
I (313) heap_init: Initializing. RAM available for dynamic allocation:
I (320) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (326) heap_init: At 3FFB2F40 len 0002D0C0 (180 KiB): DRAM
I (332) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (338) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (345) heap_init: At 4008E8AC len 00011754 (69 KiB): IRAM
I (353) spi_flash: detected chip: generic
I (356) spi_flash: flash io: dio
W (360) timer_group: legacy driver is deprecated, please migrate to `driver/gptimer.h`
I (369) main_task: Started on CPU0
I (379) main_task: Calling app_main()
I (379) MP3_PWM_DAC_EXAMPLE: [ 1 ] Periph init
I (379) MP3_PWM_DAC_EXAMPLE: [ 2 ] Create audio pipeline for playback
I (379) MP3_PWM_DAC_EXAMPLE: [2.1] Create output stream to write data to codec chip
I (389) MP3_PWM_DAC_EXAMPLE: [2.2] Create wav decoder to decode wav file
I (399) MP3_PWM_DAC_EXAMPLE: [2.3] Register all elements to audio pipeline
I (409) MP3_PWM_DAC_EXAMPLE: [2.4] Link it together [mp3_music_read_cb]-->mp3_decoder-->output_stream-->[pa_chip]
I (419) MP3_PWM_DAC_EXAMPLE: [ 3 ] Set up event listener
I (429) MP3_PWM_DAC_EXAMPLE: [3.1] Listening event from all elements of pipeline
I (429) MP3_PWM_DAC_EXAMPLE: [3.2] Listening event from peripherals
I (439) MP3_PWM_DAC_EXAMPLE: [ 4 ] Start audio_pipeline
W (449) AUDIO_THREAD: Make sure selected the `CONFIG_SPIRAM_BOOT_INIT` and `CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY` by `make menuconfig`
I (469) MP3_PWM_DAC_EXAMPLE: [ 5 ] Listen for all pipeline events
I (469) MP3_PWM_DAC_EXAMPLE: [ * ] Receive music info from mp3 decoder, sample_rates=44100, bits=16, ch=2
What should I do next?