lvgl / lv_port_linux

LVGL configured to work with a standard Linux framebuffer
MIT License
260 stars 160 forks source link

Wayland Backend Not Working on Raspberry Pi #62

Open jefftranter opened 1 month ago

jefftranter commented 1 month ago

I am trying to get LVGL to work on a Raspberry Pi 3 using Wayland. It is running the most recent version of Raspberry Pi OS which uses Wayland by default. I am using the latest code from https://github.com/lvgl/lv_port_linux In lv_conf.h I have set:

define LV_USE_LINUX_FBDEV 0

define LV_USE_LINUX_DRM 0

define LV_USE_SDL 0

define LV_USE_WAYLAND 1

The demo builds without without errors, but when run it get no display and I see these errors:

[Warn] (0.000, +0) lv_init: Memory integrity checks are enabled via LV_USE_ASSERT_MEM_INTEGRITY which makes LVGL much slower lv_init.c:262 [Warn] (0.000, +0) lv_init: Object sanity checks are enabled via LV_USE_ASSERT_OBJ which makes LVGL much slower lv_init.c:266 [Warn] (0.000, +0) lv_init: Style sanity checks are enabled that uses more RAM lv_init.c:270 wl_registry#2: error 0: invalid version for global xdg_wm_base (18): have 2, wanted 4 [Error] (0.000, +0) wayland_init: Asserted at expression: (application.shm_format != SHM_FORMAT_UNKNOWN) (WL_SHM_FORMAT not available) lv_wayland.c:2399 pi@raspberrypi

I tried changing LV_COLOR_DEPTH from 32 to 16 and to 24 but I get the same results.

On the same machine I am able to run the demo using SDL2.

I've attached the output of wayland-info.

wayland-info.txt