LVGL (Light and Versatile Graphics Library) is a free, open source GUI framework for systems with limited resources. It allows you to create stylish embedded GUIs with a very small memory footprint using easy-to-use building blocks. While it’s mainly known as a C library, it also has bindings for other low-footprint languages such as MicroPython.

Digi Embedded Yocto provides a pre-built image with an LVGL demo application. See LVGL image demo.

You can find the LVGL code at https://github.com/lvgl/lvgl. It contains:

  • The UI API (presentation layer).

  • Display and input device drivers, including support for several rendering backends such as direct-to-framebuffer, DRM, and Wayland.

  • Demos and examples.

There are also 3rd party libraries available to extend LVGL’s functionality.