You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,15 +14,15 @@ If you'd like to propose a change to the existing APIs or a large-scale refactor
14
14
15
15
## Third-party boards
16
16
17
-
ESP-BSP project is currently intended only to host BSPs for development boards manufactured by Espressif.
17
+
ESP-BSP project is currently intended only to host BSPs for development boards manufactured by Espressif and M5Stack.
18
18
19
19
If you want to create a BSP for a third-party board, we suggest creating a separate repository for it. You are welcome to use the ESP-BSP project as a template for your own board support package repository.
20
20
21
21
## Pre-commit hooks
22
22
23
23
ESP-BSP project uses [pre-commit hooks](https://pre-commit.com/) to perform code formatting and other checks when you run `git commit`.
24
24
25
-
To install pre-commit hooks, run `pip install pre-commit && pre-commit install`.
25
+
To install pre-commit hooks, run `pip install pre-commit && pre-commit install`.
26
26
27
27
If a pre-commit hook has modified any of the files when you run `git commit`, add these changes using `git add` and run `git commit` again.
Copy file name to clipboardExpand all lines: components/esp_lvgl_port/docs/performance.md
+41-32Lines changed: 41 additions & 32 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# LCD & LVGL Performance
2
2
3
-
This document provides steps, how to set up your LCD and LVGL port for the best performance and comparison of different settings. All settings and measurements are valid for Espressif's chips.
3
+
This document provides steps, how to set up your LCD and LVGL port for the best performance and comparison of different settings. All settings and measurements are valid for Espressif's chips. Examples in [ESP-BSP](https://github.com/espressif/esp-bsp) are ready to use with the best performance.
4
4
5
5
## Performance metrics
6
6
@@ -26,7 +26,7 @@ On the other hand, the frame buffer(s) will consume significant portion of your
26
26
27
27
Main takeaways from the graph are:
28
28
29
-
* The size of **LVGL buffer** and **double buffering** feature has big impact on performance.
29
+
* The size of **LVGL buffer** and **double buffering** feature has big impact on performance.
30
30
* Frame buffer size >25% of the screen does not bring relevant performance boost
31
31
* Frame buffer size <10% will have severe negative effect on performance
32
32
@@ -67,18 +67,53 @@ The main LVGL task can be processed on the second core of the CPU. It can increa
67
67
68
68
### Using esp-idf `memcpy` and `memset` instead LVGL's configuration
69
69
70
-
Native esp-idf implementation are a little (~1-3 FPS) faster.
70
+
Native esp-idf implementation are a little (~1-3 FPS) faster (only for LVGL8).
71
71
72
72
*`CONFIG_LV_MEMCPY_MEMSET_STD=y`
73
73
74
74
### Default LVGL display refresh period
75
75
76
76
This setting can improve subjective performance during screen transitions (scrolling, etc.).
77
77
78
+
LVGL8
78
79
*`CONFIG_LV_DISP_DEF_REFR_PERIOD=10`
79
80
81
+
LVGL9
82
+
*`CONFIG_LV_DEF_REFR_PERIOD=10`
83
+
80
84
## Example FPS improvement vs graphical settings
81
85
86
+
The LVGL9 benchmark demo uses a different algorithm for measuring FPS. In this case, we used the same algorithm for measurement in LVGL8 for comparison.
87
+
88
+
### RGB LCD, PSRAM (octal) with GDMA - ESP32-S3-LCD-EV-BOARD
The graphical performance depends on a lot of things and settings, many of which affect the whole system (Compiler, Flash, CPU, PSRAM configuration...). The user should primarily focus on trade-off between frame-buffer(s) size and RAM consumption of the buffer, before optimizing the design further.
156
165
157
166
Other configuration options not covered in this document are:
158
-
* Hardware interfaces, color depth, screen definition (size), clocks, LCD controller and more.
167
+
* Hardware interfaces, color depth, screen definition (size), clocks, LCD controller and more.
159
168
* Complexity of the graphical application (number of LVGL objects and their styles).
0 commit comments