> :warning: This is **No Graphical Library version** of esp32_p4_function_ev_board BSP. If you want to use this BSP with LVGL use [esp32_p4_function_ev_board](https://components.espressif.com/components/espressif/esp32_p4_function_ev_board) component. # BSP: ESP32-P4 Function EV Board | [HW Reference](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32p4/esp32-p4-function-ev-board/user_guide.html) | [HOW TO USE API](API.md) | [EXAMPLES](#compatible-bsp-examples) | [](https://components.espressif.com/components/espressif/esp32_p4_function_ev_board) |  | | --- | --- | --- | --- | -- | ## Overview <table> <tr><td> 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. </td><td width="200"> <img src="doc/esp32_p4_function_ev_board.webp"> </td></tr> </table>  ## HW Version | HW version | BSP Version | | :--------: | :---------: | | V1.0 | ^1 | | V1.2 | ^2 | | [V1.4](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32p4/esp32-p4-function-ev-board/user_guide.html) | ^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` - RGB565 (default) - RGB888 ## 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](https://github.com/espressif/esp-idf/commit/93fdbf25b3ea7e44d1f519ed61050847dcc8a076)) - Only RGB888 is supported with HDMI - Use MIPI-DSI to HDMI converter Lontium LT8912B ## Capabilities and dependencies <div align="center"> <!-- START_DEPENDENCIES --> | Available | Capability | Controller/Codec | Component | Version | |------------------|------------------------|--------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------| |:heavy_check_mark:| :pager: DISPLAY |ek79007, ili9881c, lt8912b|[espressif/esp_lcd_ek79007](https://components.espressif.com/components/espressif/esp_lcd_ek79007)<br/>[espressif/esp_lcd_ili9881c](https://components.espressif.com/components/espressif/esp_lcd_ili9881c)<br/>[espressif/esp_lcd_lt8912b](https://components.espressif.com/components/espressif/esp_lcd_lt8912b)<br/>idf|1.*<br/>1.*<br/>>=0.1.1,<1.0.0<br/>>=5.3| |:heavy_check_mark:|:black_circle: LVGL_PORT| | | | |: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.2.* | |: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 | | | | <!-- END_DEPENDENCIES --> </div> ## Compatible BSP Examples <div align="center"> <!-- START_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_demo) | | [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) | - | <!-- END_EXAMPLES --> </div> <!-- START_BENCHMARK --> ## LVGL Benchmark **DATE:** 08.07.2025 10:31 **LVGL version:** 9.3.0 | Name | Avg. CPU | Avg. FPS | Avg. time | render time | flush time | | ---- | :------: | :------: | :-------: | :---------: | :--------: | | Empty screen | 55% | 88 | 6 | 5 | 1 | | Moving wallpaper | 89% | 71 | 10 | 7 | 3 | | Single rectangle | 23% | 88 | 1 | 1 | 0 | | Multiple rectangles | 39% | 90 | 2 | 2 | 0 | | Multiple RGB images | 30% | 98 | 1 | 1 | 0 | | Multiple ARGB images | 56% | 91 | 6 | 6 | 0 | | Rotated ARGB images | 88% | 58 | 14 | 14 | 0 | | Multiple labels | 92% | 61 | 12 | 12 | 0 | | Screen sized text | 99% | 13 | 69 | 67 | 2 | | Multiple arcs | 98% | 47 | 17 | 15 | 2 | | Containers | 30% | 89 | 3 | 3 | 0 | | Containers with overlay | 95% | 28 | 31 | 29 | 2 | | Containers with opa | 31% | 92 | 4 | 4 | 0 | | Containers with opa_layer | 65% | 75 | 12 | 12 | 0 | | Containers with scrolling | 99% | 28 | 32 | 30 | 2 | | Widgets demo | 99% | 17 | 51 | 49 | 2 | | All scenes avg. | 68% | 64 | 16 | 16 | 0 | <!-- END_BENCHMARK -->
idf.py add-dependency "espressif/esp32_p4_function_ev_board_noglib^5.0.0~3"