ESP32-S3-BOX is an AI voice development kit that is based on Espressif’s ESP32-S3 Wi-Fi + Bluetooth 5 (LE) SoC, with AI capabilities. In addition to ESP32-S3’s 512KB SRAM,
ESP32-S3-BOX comes with 16MB of QSPI flash and 8MB of Octal PSRAM. ESP32-S3-BOX is also equipped with a variety of peripherals, such as a 2.4-inch display with a 320x240 resolution, a capacitive touch screen, a dual microphone, a speaker, and two Pmod™-compatible headers which allow for the extensibility of the hardware.
ESP32-S3-BOX also uses a Type-C USB connector that provides 5 V of power input, while also supporting serial and JTAG debugging, as well as a programming interface; all through the same connector.
This example demonstrates usage of ESP-BOX Board Support Package. This is a single purpose example, which is focused on display + touch applications: you can see list of files saved on SPIFFS. You can open certain file types like JPG images, WAV music files and TXT text files.
Example files are downloaded into ESP-BOX from spiffs_content folder.
idf.py -p COMx flash monitor
After initialization:
...
I (745) gpio: GPIO[4]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (745) gpio: GPIO[48]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (875) ESP-BOX: Starting LVGL task
I (875) ESP-BOX: Setting LCD backlight: 50%
I (1565) ES8311: ES8311 in Slave mode and I2S format
I (1575) I2S: DMA Malloc info, datalen=blocksize=2048, dma_desc_num=3
I (1575) I2S: DMA Malloc info, datalen=blocksize=2048, dma_desc_num=3
I (1575) I2S: I2S1, MCLK output by GPIO2
I (1575) gpio: GPIO[46]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (1585) ESP-BOX: Example initialization done.
When text file selected:
I (142855) DISP: Clicked: Readme.txt
When JPG file selected:
I (81275) DISP: Clicked: Death Star.jpg
I (81275) DISP: Decoding JPEG image...
When music file selected:
I (184605) DISP: Clicked: imperial_march.wav
I (191135) DISP: Number of channels: 1
I (191135) DISP: Bits per sample: 16
I (191135) DISP: Sample rate: 22050
I (191135) DISP: Data size: 1763806
This example demonstrates usage of ESP-BOX Board Support Package. This is a single purpose example, which is focused on rotating LCD display: user can rotating display by buttons.
idf.py -p COMx flash monitor
I (241) cpu_start: ESP-IDF: v5.0-dev-3434-g75b80d7a23
I (247) heap_init: Initializing. RAM available for dynamic allocation:
I (255) heap_init: At 3FC975C0 len 00048A40 (290 KiB): D/IRAM
I (261) heap_init: At 3FCE0000 len 0000EE34 (59 KiB): STACK/DRAM
I (268) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM
I (274) heap_init: At 600FE000 len 00002000 (8 KiB): RTCRAM
I (281) spi_flash: detected chip: gd
I (284) spi_flash: flash io: dio
I (289) sleep: Configure to isolate all GPIO pins in sleep state
I (295) sleep: Enable automatic switching of GPIO sleep configuration
I (303) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (325) gpio: GPIO[4]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (325) gpio: GPIO[48]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (455) ESP-BOX: Setting LCD backlight: 100%
I (455) ESP-BOX: Starting LVGL task
I (495) ESP-BOX: Example initialization done.
This example demonstrates usage of ESP-BOX Board Support Package. This is a single purpose example, which is focused on display + touch applications: user can change background color by selecting it on a color wheel on the touch screen.
Main screen |
---|
![]() |
idf.py -p COMx flash monitor
After initialization:
...
I (323) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (345) gpio: GPIO[4]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (345) gpio: GPIO[48]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (475) ESP-BOX: Starting LVGL task
I (475) ESP-BOX: Setting LCD backlight: 50%
I (515) ESP-BOX: Example initialization done.
When selected color:
I (3675) ESP-BOX: Selected color in RGB565: 0xdf49
Copy to Clipboard
idf.py add-dependency "espressif/esp-box^2.4.0"
To create a project from this example, run:
Copy to Clipboard
idf.py create-project-from-example "espressif/esp-box^2.4.0:display_audio_photo"
To create a project from this example, run:
Copy to Clipboard
idf.py create-project-from-example "espressif/esp-box^2.4.0:display_rotation"
To create a project from this example, run:
Copy to Clipboard
idf.py create-project-from-example "espressif/esp-box^2.4.0:touchscreen_colorwheel"
Copy to Clipboard
Copy to Clipboard