Raspberry PI correct display buffers

Description

I’m using a raspberry PI Zero W and was wondering what the correct display buffer(s) should be set to.

What MCU/Processor/Board and compiler are you using?

Raspberry PI Zero W

What LVGL version are you using?

8.1

What do you want to achieve?

I’d like to know what the correct display buffer size should be for my 7 inch display and if I should be using 2 or 1 of them…

What have you tried so far?

Reviewed the support docs and searching the forum

Code to reproduce

  static lv_disp_draw_buf_t disp_buf1;
  static lv_color_t buf1_1[MONITOR_HOR_RES * 100];
  static lv_color_t buf1_2[MONITOR_HOR_RES * 100];
  lv_disp_draw_buf_init(&disp_buf1, buf1_1, buf1_2, MONITOR_HOR_RES * 100);

or

  static lv_disp_draw_buf_t disp_buf1;
  static lv_color_t buf1_1[MONITOR_HOR_RES * 100];
  lv_disp_draw_buf_init(&disp_buf1, buf1_1, NULL, MONITOR_HOR_RES * 100);

What is best as I dont think (but could well be wrong) that the framebuffer is using DMA…?

Screenshot and/or video

@embeddedt / @kisvegabor any ideas?

Thanks!

You should use 2 buffers only if you can copy the rendered image with hardware in the background to let LVGL render then next part meanwhile.

1/10 screen size is usually enough.