LVGL Wayland Driver - Multiple Windows

Hello everyone,

I’m currently working on a product that requires supporting two displays: HDMI and LVDS, using an AM6254 processor with Wayland/Weston as the display server.

With LVGL 9.2’s Wayland backend, I can successfully create a fullscreen window on a specific display by assigning a unique title and app-id to the window. Weston uses this to route the window to the correct output.

So far, I’ve been able to get this working by launching two separate processes, each with a different configuration. However, our goal is to launch both windows from a single process. When I attempt this by calling lv_wayland_window_create(...) twice (with different titles), it results in a segmentation fault.

Example:

char *title = "hdmi";
char *title2 = "lvds";
lv_display_t *disp1 = lv_wayland_window_create(800, 480, title, NULL);
lv_display_t *disp2 = lv_wayland_window_create(800, 480, title2, NULL);

This results in segmentation fault.

Has anyone successfully used LVGL’s Wayland backend to create multiple windows from a single process? Any guidance would be greatly appreciated.

Thanks in advance!

Just an update, I was able to patch LVGL Wayland driver to allow for this functionality, and as far as my tests went it works well. Also validated independent inputs on each window/display.
I’ll submit a PR for it later