MOLUN
创作者认证
乐鑫ESP32-S31-Korvo-1开发板上手体验

ESP32-S31-Korvo-1 V1.1 是一款基于 ESP32-S31 芯片、搭载 ESP32-S31-WROOM-3 模组的多媒体开发板。它配备了双麦克风阵列,支持语音识别和近/远场语音唤醒,集成 LCD、摄像头、microSD 卡等丰富外设,支持基于 JPEG 的视频流处理,完美适用于低成本、低功耗的智能音箱、音视频流媒体传输以及人机交互(HUI)图形界面产品的快速开发。

官方示例源码:https://github.com/espressif/esp-iot-solution/tree/master/examples/usb/device/usb_extend_screen
Windows IDD 驱动程序:https://dl.espressif.com/AE/esp-iot-solution/xfz1986_usb_graphic_250224_rc_sign.exe
编译环境:

必须使用master版本才能支持ESP32S31芯片
下载地址:https://dl.espressif.com/dl/eim/index.html?tab=online
编译方式:
cd D:\molun\Documents\GitHub\esp-iot-solution\examples\usb\device\usb_extend_screen
idf.py --preview set-target esp32s31
idf.py --preview build
idf.py --preview -p COM11 flash monitor
ESP-ROM:esp32s31-20251218
Build:Dec 18 2025
rst:0x1 (POWERON),boot:0x78 (SPI_FAST_FLASH_BOOT)
SPI mode:DIO, clock div:1
load:0x2f0740c0,len:0x17e4
load:0x2f06a2b0,len:0xd3c
--- 0x2f06a2b0: esp_bootloader_get_description at D:/esp/master/esp-idf/components/esp_bootloader_format/esp_bootloader_desc.c:40
load:0x2f06cfb0,len:0x33e0
--- 0x2f06cfb0: is_xmc_chip_strict at D:/esp/master/esp-idf/components/bootloader_support/bootloader_flash/src/bootloader_flash.c:925
entry 0x2f06a2ba
--- 0x2f06a2ba: call_start_cpu0 at D:/esp/master/esp-idf/components/bootloader/subproject/main/bootloader_start.c:27
I (26) boot: ESP-IDF 8a66ccf3 2nd stage bootloader
I (26) boot: compile time May 30 2026 15:59:10
I (27) boot: Multicore bootloader
I (28) boot: chip revision: v0.0
I (29) boot: efuse block revision: v0.0
I (33) qio_mode: Enabling default flash chip QIO
I (37) boot.esp32s31: SPI Speed : 80MHz
I (41) boot.esp32s31: SPI Mode : QIO
I (45) boot.esp32s31: SPI Flash Size : 16MB
I (49) boot: Enabling RNG early entropy source...
I (54) boot: Partition Table:
I (56) boot: ## Label Usage Type ST Offset Length
I (63) boot: 0 nvs WiFi data 01 02 00009000 00006000
I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000
I (76) boot: 2 factory factory app 00 00 00010000 00100000
I (83) boot: End of partition table
I (86) esp_image: segment 0: paddr=00010020 vaddr=50040020 size=148c0h ( 84160) map
I (108) esp_image: segment 1: paddr=000248e8 vaddr=2f000000 size=0b730h ( 46896) load
I (118) esp_image: segment 2: paddr=00030020 vaddr=50000020 size=39ee0h (237280) map
I (157) esp_image: segment 3: paddr=00069f08 vaddr=2f00b730 size=04c60h ( 19552) load
I (163) esp_image: segment 4: paddr=0006eb70 vaddr=2f010400 size=04310h ( 17168) load
I (172) boot: Loaded app from partition at offset 0x10000
I (172) boot: Disabling RNG early entropy source...
I (183) oct_psram: vendor id : 0x1a (UNKNOWN)
I (183) oct_psram: Latency : 0x01 (Fixed)
I (183) oct_psram: DriveStr. : 0x00 (25 Ohm)
I (184) oct_psram: dev id : 0x00 (generation 1)
I (189) oct_psram: density : 0x05 (128 Mbit)
I (194) oct_psram: good-die : 0x06 (Pass)
I (198) oct_psram: SRF : 0x02 (Slow Refresh)
I (202) oct_psram: BurstType : 0x00 ( Wrap)
I (207) oct_psram: BurstLen : 0x03 (2048 Byte)
I (211) oct_psram: BitMode : 0x00 (X8 Mode)
I (215) oct_psram: Readlatency : 0x06 (18 cycles@Fixed)
I (220) oct_psram: DriveStrength: 0x00 (1/1)
I (224) MSPI Timing: Enter psram timing tuning
I esp_psram: Found 16MB PSRAM device
I esp_psram: Speed: 250MHz
I (384) mmu_psram: .rodata xip on psram
I (397) mmu_psram: .text xip on psram
I (398) cpu_start: Multicore app
I (406) cpu_start: GPIO 59 and 58 are used as console UART I/O pins
I (407) cpu_start: Pro cpu start user code
I (407) cpu_start: cpu freq: 320000000 Hz
I (409) app_init: Application information:
I (412) app_init: Project name: usb_touch_screen
I (417) app_init: App version: 5e0b39c4
I (421) app_init: Compile time: May 30 2026 15:58:09
I (426) app_init: ELF file SHA256: 2cb707a4f...
I (430) app_init: ESP-IDF: 8a66ccf3
I (434) efuse_init: Min chip rev: v0.0
I (438) efuse_init: Max chip rev: v0.99
I (442) efuse_init: Chip rev: v0.0
I (446) heap_init: Initializing. RAM available for dynamic allocation:
I (452) heap_init: At 2F018B20 len 00062490 (393 KiB): RAM
I (458) heap_init: At 2F07AFB0 len 000041C0 (16 KiB): RAM
I (463) heap_init: At 2E000000 len 00007FE8 (31 KiB): RTCRAM
I (468) esp_psram: Adding pool of 16000K of PSRAM memory to heap allocator
I (475) esp_psram: Adding pool of 24K of PSRAM memory gap generated due to end address alignment of irom to the heap allocator
I (486) esp_psram: Adding pool of 45K of PSRAM memory gap generated due to end address alignment of drom to the heap allocator
I (497) spi_flash: detected chip: generic
I (501) spi_flash: flash io: qio
I (504) sleep_gpio: Condiv to isolate all GPIO pins in sleep state
I (510) sleep_gpio: Enable automatic switching of GPIO sleep configuration
coex firmware version: 35a7c2e
coexist rom version cdcf52b
I (522) main_task: Started on CPU0
I (525) esp_psram: Reserving pool of 12K of internal memory for DMA/internal allocations
I (533) main_task: Calling app_main()
I (536) usb_extend_screen: USB extend screen example
I (541) S31-Korvo: I2C bus initialized: SDA=0, SCL=1
I (546) S31-Korvo: Audio I2S initialized
I (572) ES8389: Work in Slave mode
I (575) ES8389: Set internal reference signal
I (598) ES8389: Work in Slave mode
I (601) ES8389: Set internal reference signal
I (603) I2S_IF: Paired data: 0x2f021e20, current mode: playback, paired in_enable: 0, paired out_enable: 0
I (604) I2S_IF: STD: TX, data_bit: 16, slot_bit: 16, ws_width: 16, slot_mode: STEREO, slot_mask: 0x3
I (613) I2S_IF: STD: TX, sample_rate_hz: 48000, mclk_multiple: 256, clk_src: 16
I (637) Adev_Codec: Open codec device OK
I (638) I2S_IF: Current mode(record) and peer mode have same sample_rate 48000, channel 2, bits_per_sample 16
I (640) I2S_IF: STD: RX, data_bit: 16, slot_bit: 16, ws_width: 16, slot_mode: STEREO, slot_mask: 0x3
I (648) I2S_IF: STD: RX, sample_rate_hz: 48000, mclk_multiple: 256, clk_src: 16
I (673) Adev_Codec: Open codec device OK
I (747) I2S_IF: Pending out channel for in channel running
E (820) i2s_common: i2s_channel_disable(1345): the channel has not been enabled yet
I (820) I2S_IF: Paired data: 0x2f021e20, current mode: playback, paired in_enable: 0, paired out_enable: 0
I (826) I2S_IF: STD: TX, data_bit: 16, slot_bit: 16, ws_width: 16, slot_mode: STEREO, slot_mask: 0x3
I (835) I2S_IF: STD: TX, sample_rate_hz: 48000, mclk_multiple: 256, clk_src: 16
I (860) Adev_Codec: Open codec device OK
E (860) i2s_common: i2s_channel_disable(1345): the channel has not been enabled yet
I (860) I2S_IF: Current mode(record) and peer mode have same sample_rate 48000, channel 2, bits_per_sample 16
I (869) I2S_IF: STD: RX, data_bit: 16, slot_bit: 16, ws_width: 16, slot_mode: STEREO, slot_mask: 0x3
I (878) I2S_IF: STD: RX, sample_rate_hz: 48000, mclk_multiple: 256, clk_src: 16
I (902) Adev_Codec: Open codec device OK
I (902) usbd_uac: UAC Device Start, Version: 1.3.1
I (916) S31-Korvo: RGB LCD initialized: 800x480 RGB565, fb_count=2
I (916) gt1151: IC version: GT1158_000101(Patch)_0102(Mask)_00(SensorID)
I (917) S31-Korvo: GT1151 touch initialized
I (921) main_task: Returned from app_main()
折腾好久了,搞不懂,为啥我的不能正常显示!知道的兄弟们留言指导指导!
其他提示:如果发现示例中,摄像头画面比较模糊,揭开摄像头背面背胶粘贴到主板上,小心向右扭动进行调焦。
工程附件
ESP32-S31-Korvo-1_usb_touch_screen_full.zip
xfz1986_usb_graphic_250224_rc_sign.zip
CP210x_Universal_Windows_Driver.zip
esptool-v5.2.0-windows-amd64.zip
版块:
开源硬件项目
2026/05/30 16:51


全部评论