BSP: ESP32-P4 Function EV Board
| HW Reference | HOW TO USE API | EXAMPLES |
|
|
| — | — | — | — | – |
Overview
|
ESP32-P4-Function-EV-Board is a multimedia development board based on the ESP32-P4 chip. ESP32-P4 chip features a dual-core 400 MHz RISC-V processor and supports up to 32 MB PSRAM. In addition, ESP32-P4 supports USB 2.0 specification, MIPI-CSI/DSI, H264 Encoder, and various other peripherals. With all of its outstanding features, the board is an ideal choice for developing low-cost, high-performance, low-power network-connected audio and video products.
|
|

HW Version
| HW version |
BSP Version |
| V1.0 |
^1 |
| V1.2 |
^2 |
| V1.4 |
^3 |
Configuration
Configuration in menuconfig.
Selection LCD display Board Support Package(ESP32-P4) --> Display --> Select LCD type
- LCD 1280x800 - ili9881c (default)
- LCD 1024x600 - ek79007
- HDMI - lt8912b
- 800x600@60HZ
- 1280x720@60HZ
- 1280x800@60HZ
- 1920x1080@30HZ
Selection color format Board Support Package(ESP32-P4) --> Display --> Select LCD color format
HDMI Support
This BSP supports HDMI converter Lontium LT8912B. Follow these rules for using it with HDMI:
- Use ESP-IDF 5.4 or older (from commit 93fdbf2)
- Only RGB888 is supported with HDMI
- Use MIPI-DSI to HDMI converter Lontium LT8912B
Capabilities and dependencies
| Available | Capability | Controller/Codec | Component | Version |
|------------------|------------------------|--------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------|
|:heavy_check_mark:| :pager: DISPLAY |ek79007, ili9881c, lt8912b|idf
[espressif/esp_lcd_ili9881c](https://components.espressif.com/components/espressif/esp_lcd_ili9881c)
[espressif/esp_lcd_ek79007](https://components.espressif.com/components/espressif/esp_lcd_ek79007)
[espressif/esp_lcd_lt8912b](https://components.espressif.com/components/espressif/esp_lcd_lt8912b)|>=5.3
1.*
1.*
>=0.1.1,<1.0.0|
|:heavy_check_mark:|:black_circle: LVGL_PORT| | [espressif/esp_lvgl_port](https://components.espressif.com/components/espressif/esp_lvgl_port) | ^2 |
|:heavy_check_mark:| :point_up: TOUCH | gt911 | [espressif/esp_lcd_touch_gt911](https://components.espressif.com/components/espressif/esp_lcd_touch_gt911) | ^1 |
| :x: | :radio_button: BUTTONS | | | |
|:heavy_check_mark:| :musical_note: AUDIO | | [espressif/esp_codec_dev](https://components.espressif.com/components/espressif/esp_codec_dev) | ~1.5 |
|:heavy_check_mark:| :speaker: AUDIO_SPEAKER| es8311 | | |
|:heavy_check_mark:| :microphone: AUDIO_MIC | es8311 | | |
|:heavy_check_mark:| :floppy_disk: SDCARD | | idf | >=5.3 |
| :x: | :video_game: IMU | | | |
Compatible BSP Examples
| Example | Description | Try with ESP Launchpad |
| ------- | ----------- | ---------------------- |
| [Display Example](https://github.com/espressif/esp-bsp/tree/master/examples/display) | Show an image on the screen with a simple startup animation (LVGL) | [Flash Example](https://espressif.github.io/esp-launchpad/?flashConfigURL=https://espressif.github.io/esp-bsp/config.toml&app=display-) |
| [LVGL Benchmark Example](https://github.com/espressif/esp-bsp/tree/master/examples/display_lvgl_benchmark) | Run LVGL benchmark tests | - |
| [LVGL Demos Example](https://github.com/espressif/esp-bsp/tree/master/examples/display_lvgl_demos) | Run the LVGL demo player - all LVGL examples are included (LVGL) | [Flash Example](https://espressif.github.io/esp-launchpad/?flashConfigURL=https://espressif.github.io/esp-bsp/config.toml&app=display_lvgl_demos-) |
| [Display Rotation Example](https://github.com/espressif/esp-bsp/tree/master/examples/display_rotation) | Rotate screen using buttons or an accelerometer (`BSP_CAPS_IMU`, if available) | [Flash Example](https://espressif.github.io/esp-launchpad/?flashConfigURL=https://espressif.github.io/esp-bsp/config.toml&app=display_rotation-) |
| [USB HID Example](https://github.com/espressif/esp-bsp/tree/master/examples/display_usb_hid) | USB HID demo (keyboard, mouse, or gamepad visualization using LVGL) | - |
LVGL Benchmark
DATE: 01.10.2025 13:12
LVGL version: 9.3.0
| Name |
Avg. CPU |
Avg. FPS |
Avg. time |
render time |
flush time |
| Empty screen |
55% |
88 |
5 |
2 |
3 |
| Moving wallpaper |
92% |
73 |
11 |
9 |
2 |
| Single rectangle |
22% |
89 |
1 |
1 |
0 |
| Multiple rectangles |
40% |
91 |
3 |
3 |
0 |
| Multiple RGB images |
28% |
97 |
1 |
1 |
0 |
| Multiple ARGB images |
55% |
90 |
6 |
6 |
0 |
| Rotated ARGB images |
77% |
75 |
10 |
10 |
0 |
| Multiple labels |
95% |
61 |
13 |
12 |
1 |
| Screen sized text |
99% |
13 |
70 |
68 |
2 |
| Multiple arcs |
98% |
45 |
18 |
16 |
2 |
| Containers |
28% |
88 |
3 |
3 |
0 |
| Containers with overlay |
91% |
28 |
31 |
29 |
2 |
| Containers with opa |
36% |
91 |
4 |
4 |
0 |
| Containers with opa_layer |
62% |
76 |
12 |
12 |
0 |
| Containers with scrolling |
98% |
28 |
31 |
29 |
2 |
| Widgets demo |
99% |
17 |
50 |
48 |
2 |
| All scenes avg. |
67% |
65 |
16 |
15 |
1 |