LVGL Projects

172 projects using LVGL

LVGL is a lightweight, open-source C graphics library designed to build professional user interfaces on any microcontroller or microprocessor. It features a hardware-independent architecture with low memory requirements, supporting advanced rendering features like anti-aliasing, animations, and complex layout engines.

LVGL Demo Printer for Raspberry Pi 3

An embedded graphics application for Raspberry Pi 3 that implements a printer demo using the LVGL library and SDL2. It features a touch-enabled interface designed with GUI-Guider and is configured for the MPI3508 HDMI display on ARM Linux.

lvgl
15

LVGL Display and Touchpad Drivers for ESP32

A comprehensive collection of display and input device drivers for the ESP32 SoC, specifically designed to interface with the LVGL graphics library. It supports a wide variety of TFT, monochrome, and e-Paper controllers using SPI and I2C interfaces within the ESP-IDF framework.

freertos lvgl
427

LVGL Demo Test

A demonstration and testing project for the LVGL (Light and Versatile Graphics Library) version 7. It showcases UI components and graphical capabilities for embedded display systems.

lvgl
36

LVGL Display and Touchpad Drivers

A comprehensive collection of display and input device drivers designed for the LVGL graphics library. It provides ready-to-use implementations for various LCD controllers, touchscreens, and platform-specific interfaces like Linux FBDEV, DRM/KMS, and SDL.

lvgl
385

LVGL Emscripten Port

A port of the LVGL graphics library to Emscripten, enabling the compilation of embedded UI applications into JavaScript and WebAssembly. It provides a web-based simulation environment using SDL2 for graphics and input handling, allowing developers to test and showcase embedded interfaces in any modern browser. This project is widely used for creating interactive demos and simulating hardware displays without physical devices.

lvgl
114

LVGL Extended Demos

A collection of specialized and niche demo applications for the Light and Versatile Graphics Library (LVGL). It provides self-contained examples such as eBike interfaces and smartwatch stress tests designed for embedded systems and high-performance GUI development.

lvgl
543

LVGL for Android

A framework for developing HMI on Android using C and the LVGL library without relying on the Java Android API. It allows developers to run applications directly from the command line, making it ideal for BSP and MCU engineers working on factory modes, self-tests, or fast-camera interfaces.

lvgl
27

LVGL for Embedded Linux

A comprehensive porting layer and example project for running the LVGL graphics library on Linux-based embedded systems. It provides drivers for various display backends including FBDEV, DRM/KMS, Wayland, and SDL2, along with input support for evdev and libinput.

lvgl
395

LVGL Game Boy Advance Emulator

A high-performance Game Boy Advance emulator integrated with the LVGL graphics library. It features a decoupled architecture, zero-copy framebuffer rendering via lv_canvas, and support for both PC and Raspberry Pi platforms.

lvgl
52

LVGL Layout Preview

A real-time layout preview tool for the LVGL (Light and Versatile Graphics Library). It supports both LVGL v7 container layouts and LVGL v8 flexbox layouts, providing a visual way to understand and debug embedded UI positioning.

lvgl
18

LVGL MicroPython Bindings

Automatically generated MicroPython bindings for the LVGL graphics library, enabling high-level GUI development on microcontrollers. It features seamless integration with MicroPython's garbage collector, support for various display and touch drivers, and an automated API generation system for maintaining parity with the C library.

lvglmicropython
329

LVGL Offline Image Conversion Tool

A Windows-based offline utility for converting images into C arrays or binary files compatible with the LVGL graphics library. It supports various color formats, dithering, and batch processing, providing a local alternative to the official LVGL online converter.

lvgl
51

LVGL Port for Arm Cortex-M55 and MPS3 (AN547)

A professional LVGL port for the Arm Cortex-M55 processor, targeting the MPS3 FPGA prototyping board and the Corstone-300-FVP emulator. It features hardware acceleration using Arm-2D with Helium technology and supports the Ethos-U55 NPU for high-performance embedded graphics.

cmsis lvgl
20

LVGL Port for ESP32

A comprehensive port of the Light and Versatile Graphics Library (LVGL) for the ESP32 SoC using the ESP-IDF framework. It provides a modular driver system for various display and touch controllers, integrated directly into the ESP-IDF build system and configuration menu.

freertos lvgl
1,243

LVGL Port for Raspberry Pi Pico (MDK-ARM)

An MDK-ARM project template for the Raspberry Pi Pico featuring the LVGL graphics library. It leverages Arm Compiler 6, CMSIS-Packs for modular component management, and provides a ready-to-use configuration for the Waveshare 1.3-inch LCD module.

lvgl
33

LVGL Port for M5Stack Core2

A port of the Light and Versatile Graphics Library (LVGL) for the M5Stack Core2 development kit based on the ESP32. It utilizes the ESP-IDF framework and FreeRTOS to provide a high-performance graphical user interface on the device's integrated display, including support for the AXP192 power management chip.

freertos lvgllwipspiffs
18

LVGL Port for STM32F429 Discovery Kit

A hardware-specific port of the LVGL graphics library for the STM32F429 Discovery development board. It features support for the onboard 2.4-inch QVGA TFT, resistive touch, and utilizes the STM32 DMA2D (Chrom-ART) GPU for accelerated rendering in a bare-metal environment.

lvgl
95

LVGL Port for STM32F769 Discovery

A professional port of the LVGL graphics library to the STM32F769 Discovery kit. It provides a complete hardware abstraction layer for the board's 4-inch capacitive touch LCD, SDRAM, and MIPI-DSI interface.

lvgl
41

LVGL Port for Windows

A pre-configured Visual Studio project that ports the LVGL graphics library to the Windows desktop environment. It utilizes the Win32 API to provide a hardware abstraction layer (HAL) for display and input, enabling developers to prototype and test embedded user interfaces on a PC.

lvgl
87

LVGL Rust to WASM

An example project demonstrating the use of the LVGL graphics library in Rust, compiled to WebAssembly (WASM) and native targets. It showcases cross-platform UI development using the embedded-graphics ecosystem and Emscripten.

lvgl
29

LVGL Rust Bindings

Rust bindings for the LVGL (Light and Versatile Graphics Library), providing a safe and idiomatic interface for creating embedded GUIs. It supports #![no_std] environments and integrates with the embedded-graphics crate for display drivers.

lvgl
860

LVGL Terminal for PinePhone on Apache NuttX

A touchscreen terminal application for the PinePhone running the Apache NuttX RTOS. It utilizes the LVGL graphics library to provide a graphical interface for interacting with the NuttX NSH shell, enabling command execution directly on the device's display.

nuttx lvgl

LVGL Test App for Apache NuttX

A simplified test application for the LVGL graphics library running on the Apache NuttX RTOS. It provides drivers and configuration for display and touch input on hardware like the Pine64 PineDio Stack BL604 and ESP32.

nuttx lvgl

LVGL Touch Calibration System

A ready-to-embed component for resistive touch panel calibration in LVGL projects. It handles transformation math to correct for panel misalignment, scale, and rotation, and provides a user-friendly calibration interface with NVS storage support.

freertos lvgl
27

LVGL Watch Firmware for Open-Smartwatch

A third-party firmware for the Open-Smartwatch platform based on LVGL 8.0 and the Arduino framework. It targets the ESP32-PICO-D4 and includes support for hardware features like vibration motors and infrared remote control. The project is managed via PlatformIO and focuses on providing a modern graphical interface for wearable devices.

freertos lvgl
59

LVGL Utilities

A collection of offline converter utilities for the LVGL graphics library, featuring image-to-C and font-to-C conversion scripts. These tools enable the preparation of graphical assets for embedded systems by generating compatible C arrays and binary files from standard image and font formats.

zephyr lvgl
57

LVGL Windows Simulator for Code::Blocks

A PC simulator project for the LVGL (Light and Versatile Graphics Library) designed for Windows using the Code::Blocks IDE. It allows developers to design and test embedded GUI applications on a desktop environment before deploying to actual hardware.

lvgl
191

lvgljs

A framework for developing LVGL user interfaces using JavaScript and React's virtual DOM concept. It leverages the QuickJS engine and libuv to provide a modern, declarative web-development experience for embedded devices and simulators.

lvgl
209

lvglpp: A C++ Wrapper for LVGL

A comprehensive C++17 wrapper for the LVGL graphics library, providing object-oriented interfaces for widgets, displays, and input devices. It simplifies embedded GUI development by encapsulating C structures into classes with automated memory management and C++-style callbacks.

lvgl
43

M5Pi Launcher

A graphical launcher application for the M5Pi embedded Linux platform built using the LVGL v8 graphics library. It integrates a NES emulator, QR code generation, and PNG image support, interfacing directly with the Linux framebuffer and input event system.

lvgl
25

Marauder Centauri

A portable suite of WiFi and Bluetooth offensive and defensive tools built for the ESP32 microcontroller. It enables security researchers to perform packet sniffing, beacon spamming, and network analysis through a dedicated handheld interface utilizing the Arduino framework.

freertos tft-espilvglh2zero-esp-nimble-cppspiffs
184

Music Player Demo for RT-Thread

A modern, smartphone-like music player demonstration for RT-Thread using the LVGL graphics library. It features advanced spectrum animations, album art zooming, and a responsive UI optimized for 480x272 or 272x480 displays.

rt-thread lvgl
11

PNG Decoder for LVGL

A PNG image decoder library for LVGL based on the lodepng library. It enables embedded systems to display PNG images from flash memory or file systems with optional integration into LVGL's file system abstraction layer.

lvgl
69

QR Code Library for LVGL

A QR code generation library for the LVGL graphics library, utilizing the Nayuki QR-Code-generator. It allows for the creation and display of dynamic QR codes on embedded systems by rendering them as LVGL canvas objects.

lvgl
58

SJPG Decoder for LVGL

A specialized JPEG decoder for the LVGL graphics library that supports both standard JPG and a custom 'split-jpeg' (SJPG) format. It is designed for memory-constrained embedded systems, offering features like line-by-line decoding and fragment caching to minimize RAM usage.

lvgl
35

Zephyr LVGL Sample for nRF52840 MDK

A sample project demonstrating the integration of the LVGL graphics library with Zephyr RTOS on the nRF52840 MDK development board. It provides a complete configuration for driving a 240x240 ST7789 IPS display via SPI, including necessary driver patches and device tree overlays.

zephyr lvgl
17