IMXRTEVKB1170 - LVGL 9.2.1 WITH VGLITE

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

IMXRTEVKB1170 - LVGL 9.2.1 WITH VGLITE

536 次查看
JebastinJosephJ789
Contributor I

Hi,

Board: NXP EVKB 1176
SDK Version: 24.12
LVGL Version: 9.2.1
GUI Guider Version: 1.9.1
Resolution: 800 × 740

I am generating code from GUI Guider for MCUXpresso. The default configuration supports a MIPI panel, but I changed it to an RGB parallel interface using LCDIFv2. After making this change, I am experiencing very low FPS.

My observations are:

  1. If I use static images with the same color depth as the display controller, I get around 62 FPS.

    • RGB565 images with RGB565 mode in LCDIFv2

    • ARGB8888 images with ARGB8888 mode in LCDIFv2

  2. If I use text labels, the FPS drops to around 25 FPS.

  3. If I use multiple text labels with different font families, the FPS drops further to around 20 FPS.

  4. If I rotate an image or use LVGL built-in widgets such as arc, the FPS drops below 8 FPS.

There is an option in GUI Guider and also in lv_conf.h to enable VGLite and PXP. I have enabled both and debugged the code.

From the logs and CPU usage, I observed that the rendering is still handled by the CPU, as the CPU usage stays at 99–100%. I would like to offload this to the GPU so that VGLite can handle the rendering.

Additionally, when I use ARGB8888 images with ARGB8888 configuration, I created a screen with text and simulated the display by changing values. In this case, I only get around 2 FPS when rendering is done by the CPU.

Could you please provide guidance or support on properly enabling VGLite-accelerated rendering for the display?

Thank you.

标记 (1)
0 项奖励
回复
3 回复数

443 次查看
Gavin_Jia
NXP TechSupport
NXP TechSupport

Hi @JebastinJosephJ789 ,

Thanks for your interest in NXP MIMXRT series!

The issue you described appears to be that the VGLite acceleration did not actually execute successfully. There could be several reasons for this, such as the feature not being properly enabled or triggered, or the addresses of the image/buffer and stride not meeting VGLite’s constraints. I recommend that you first test this on the latest version of GUIGuider. If the issue can be reproduced there, you can then proceed to investigate your project configuration and code further.

image (3).png

Best regards,
Gavin

0 项奖励
回复

417 次查看
JebastinJosephJ789
Contributor I

Hi I’ve been using ARGB565 mode with VG-Lite, but images are not displaying due to the RGB565A8 mode. However, text and other built-in widgets are running at around 45 FPS.How can I display images with transparency? When I use ARGB8888, the performance is much slower compared to RGB565. I’ve already raised a query regarding improving FPS.I’ve tried optimization levels 2 and 3—at level 3, it runs at around 6 FPS, and without it, about 3 FPS. Currently, I’m running everything from SDRAM only.

Do you have any base code for using VG-Lite with LVGL?

i also attached the excel sheet for fps reference for different scenarios

Note:

Same configuration which im using here both rgb565/argb8888 running at 50-60fps with qt for mcu. There i have checked vglite is tightly integrated. it handles flush and rendering too.So i want to achieve the same with lvgl.

 

标记 (1)
0 项奖励
回复

213 次查看
Gavin_Jia
NXP TechSupport
NXP TechSupport

Hi @JebastinJosephJ789 ,

I apologize for my delayed response. Please accept my sincere apologies.

I’ve reviewed the information in your attachment, and in some respects, it appears that the situation you’re facing is as expected.

1. First, according to the GuiGuider documentation, many pre-rendered semi-transparent images → PXP may be better

2026-04-09_15-17-31.png

2. A 2D GPU requires a stride that is an integer multiple of 16 pixels; in LVGL, stride = width. When the image dimensions are 705 x 624, this width does not satisfy the 16-pixel alignment requirement.

3. Running everything in SDRAM will exacerbate the issues associated with 32 bpp and full refresh.

2026-04-09_15-19-59.png

 

Best regards,
Gavin

 

0 项奖励
回复