Skip to content

ESP32-Korvo wake_word_detection/afe/ keeps rebooting on board initialisation (AIS-2208) #169

@SpringTune

Description

@SpringTune

Checklist

  • Checked the issue tracker for similar issues to ensure this is not a duplicate
  • Read the documentation to confirm the issue is not addressed there and your configuration is set correctly
  • Tested with the latest version to ensure the issue hasn't been fixed

How often does this bug occurs?

always

Expected behavior

Run the wake_word_detection/afe/ example on the ESP32-Korvo. Pass the board init phase.

Actual behavior (suspected bug)

ESP32-Korvo board initialisation seems to fail setting up I2S
It seems that I2S is attempting to use GPIO 0, which is alreay in use.
Reconfiguration also fails, leading to a forced crash

Error logs or terminal output

I (27) boot: ESP-IDF v5.5.1 2nd stage bootloader
I (27) boot: compile time Nov 20 2025 12:59:06
I (27) boot: Multicore bootloader
I (29) boot: chip revision: v3.0
I (31) qio_mode: Enabling default flash chip QIO
I (36) boot.esp32: SPI Speed      : 80MHz
I (40) boot.esp32: SPI Mode       : QIO
I (43) boot.esp32: SPI Flash Size : 16MB
I (47) boot: Enabling RNG early entropy source...
I (51) boot: Partition Table:
I (54) boot: ## Label            Usage          Type ST Offset   Length
I (60) boot:  0 factory          factory app      00 00 00010000 00500000
I (67) boot: End of partition table
I (70) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=16730h ( 91952) map
I (101) esp_image: segment 1: paddr=00026758 vaddr=3ffb0000 size=03ccch ( 15564) load
I (106) esp_image: segment 2: paddr=0002a42c vaddr=40080000 size=05bech ( 23532) load
I (113) esp_image: segment 3: paddr=00030020 vaddr=400d0020 size=4288ch (272524) map
I (183) esp_image: segment 4: paddr=000728b4 vaddr=40085bec size=0d290h ( 53904) load
I (199) esp_image: segment 5: paddr=0007fb4c vaddr=50000000 size=00020h (    32) load
I (209) boot: Loaded app from partition at offset 0x10000
I (209) boot: Disabling RNG early entropy source...
I (219) quad_psram: This chip is ESP32-D0WD
I (220) esp_psram: Found 8MB PSRAM device
I (220) esp_psram: Speed: 80MHz
I (220) esp_psram: PSRAM initialized, cache is in low/high (2-core) mode.
W (227) esp_psram: Virtual address not enough for PSRAM, map as much as we can. 4MB is mapped
I (235) cpu_start: Multicore app
I (752) esp_psram: SPI SRAM memory test OK
I (760) cpu_start: Pro cpu start user code
I (760) cpu_start: cpu freq: 240000000 Hz
I (760) app_init: Application information:
I (760) app_init: Project name:     wake_word_detection
I (765) app_init: App version:      v0.3.0-366-g6a8ca98
I (770) app_init: Compile time:     Nov 20 2025 12:58:52
I (775) app_init: ELF file SHA256:  96b904321...
I (779) app_init: ESP-IDF:          v5.5.1
I (783) efuse_init: Min chip rev:     v0.0
I (787) efuse_init: Max chip rev:     v3.99
I (791) efuse_init: Chip rev:         v3.0
I (795) heap_init: Initializing. RAM available for dynamic allocation:
I (801) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (806) heap_init: At 3FFB46A8 len 0002B958 (174 KiB): DRAM
I (811) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (817) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (822) heap_init: At 40092E7C len 0000D184 (52 KiB): IRAM
I (828) esp_psram: Adding pool of 4096K of PSRAM memory to heap allocator
I (835) spi_flash: detected chip: generic
I (838) spi_flash: flash io: qio
W (841) i2c: This driver is an old driver, please migrate your application code to adapt `driver/i2c_master.h`
I (851) main_task: Started on CPU0
I (861) esp_psram: Reserving pool of 32K of internal memory for DMA/internal allocations
I (861) main_task: Calling app_main()
W (861) i2s_common: GPIO 0 is not usable, maybe conflict with others
E (871) esp_clock_output: esp_clock_output_start(206): Selected io is already mapped by another signal
E (871) i2s_common: i2s_check_set_mclk(935): mclk configure failed
E (881) i2s_std: i2s_std_set_gpio(179): mclk config failed
E (891) i2s_std: i2s_channel_init_std_mode(246): initialize channel failed while setting gpio pins
E (891) i2s_common: i2s_channel_enable(1189): the channel has already enabled or not initialized
I (901) ES7210: Work in Slave mode
I (911) ES7210: Enable ES7210_INPUT_MIC1
I (911) ES7210: Enable ES7210_INPUT_MIC2
I (911) ES7210: Enable ES7210_INPUT_MIC3
I (921) ES7210: Enable ES7210_INPUT_MIC4
I (921) ES7210: Enable TDM mode
E (931) i2s_common: i2s_channel_disable(1218): the channel has not been enabled yet
I (931) I2S_IF: channel mode 0 bits:32/32 channel:2 mask:3
E (941) i2s_std: i2s_channel_reconfig_std_slot(342): invalid state, I2S should be disabled before reconfiguring the slot
Guru Meditation Error: Core  0 panic'ed (StoreProhibited). Exception was unhandled.



--- Stack trace ---
Backtrace: 0x400dc281:0x3ffb5750 0x400dc3e3:0x3ffb57f0 0x400dc44e:0x3ffb5830 0x400dc611:0x3ffb5860 0x400dba0e:0x3ffb5890 0x400db3f6:0x3ffb58b0 0x400db4e9:0x3ffb5910 0x400db581:0x3ffb5930 0x400db151:0x3ffb5950 0x400db087:0x3ffb5970 0x40111e7c:0x3ffb59a0 0x4008b699:0x3ffb59d0
--- 0x400dc281: set_drv_fs at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/examples/wake_word_detection/afe/managed_components/espressif__esp_codec_dev/platform/audio_codec_data_i2s.c:140
--- 0x400dc3e3: set_fs at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/examples/wake_word_detection/afe/managed_components/espressif__esp_codec_dev/platform/audio_codec_data_i2s.c:245  
--- 0x400dc44e: check_fs_compatible at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/examples/wake_word_detection/afe/managed_components/espressif__esp_codec_dev/platform/audio_codec_data_i2s.c:268
--- 0x400dc611: _i2s_data_set_fmt at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/examples/wake_word_detection/afe/managed_components/espressif__esp_codec_dev/platform/audio_codec_data_i2s.c:443
--- 0x400dba0e: esp_codec_dev_open at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/examples/wake_word_detection/afe/managed_components/espressif__esp_codec_dev/esp_codec_dev.c:179      
--- 0x400db3f6: bsp_codec_adc_init at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/components/hardware_driver/boards/esp32-korvo/bsp_board.c:114
--- 0x400db4e9: bsp_codec_init at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/components/hardware_driver/boards/esp32-korvo/bsp_board.c:368
--- 0x400db581: bsp_board_init at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/components/hardware_driver/boards/esp32-korvo/bsp_board.c:429
--- 0x400db151: esp_board_init at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/components/hardware_driver/esp_board_init.c:30
--- 0x400db087: app_main at C:/Users/sprin/Desktop/Work/99sensors/esp32-korvo/esp-skainet/examples/wake_word_detection/afe/main/main.c:84
--- 0x40111e7c: main_task at C:/Users/sprin/esp/v5.5.1/esp-idf/components/freertos/app_startup.c

Steps to reproduce the behavior

  1. Clone repo
  2. cd examples/wake_word_detection/afe/
  3. idf.py build flash monitor

Project release version

master

System architecture

Intel/AMD 64-bit (modern PC, older Mac)

Operating system

Windows

Operating system version

Windows 11

Shell

other (details in Additional context)

Additional context

ESP-IDF terminal

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions