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.

That Project

A comprehensive collection of ESP32 and ESP8266 projects focusing on GUI development with LVGL, wireless communication (LoRa, UWB, ESP-NOW), and IoT cloud integration. It provides source code and video tutorials for a wide range of embedded applications including cameras, audio processing, and mobile app connectivity.

freertos lvgl
2,296
Tulip Creative Computer

Tulip Creative Computer

A portable, self-contained computer powered by the ESP32-S3 and MicroPython, designed for music synthesis, graphics, and coding. It features a dedicated 120-voice synthesizer engine, multi-layer GPU support, and integrated LVGL for user interface elements. The system boots directly into a Python prompt, providing a distraction-free environment for creative programming.

freertos lvglmicropython
542

Vex Autonomous Selector for PROS

A graphical autonomous routine selector for VEX V5 robots using the PROS framework and LVGL. It provides a touchscreen interface on the V5 Brain for selecting alliance-specific autonomous programs and skills routines during competition.

freertos lvgl
33

VFO-ESP32-Si5351

A sophisticated Variable Frequency Oscillator (VFO) and transceiver controller based on the ESP32 and Si5351 clock generator. It features a high-quality GUI using LVGL, support for dual VFOs, WiFi-based CAT control, and integrated SWR/power measurement capabilities for amateur radio projects.

freertos lvgltft-espi
27

WatchX-II Smart Watch

An open-source smartwatch project based on the AT32F403A microcontroller and the LVGL graphics library. It features a 1.54-inch IPS display with a high-speed parallel interface, hardware-based pedometer tracking, and support for Arduiboy-compatible games.

lvgl
185

WatchX Open Source Smartwatch

An open-source smartwatch firmware for the STM32F411CEU6, featuring a high-performance 60FPS UI powered by the LVGL library. It integrates environmental sensors like the BMP180 and MPU6050, and includes support for the Arduboy game system.

lvgl
887

WT32-SqLn: WT32-SC01 Plus with SquareLine Studio and LVGL

A comprehensive starter project and documentation for the Wireless Tag WT32-SC01 Plus board using ESP-IDF, LVGL, and SquareLine Studio. It provides detailed hardware setup guides, custom partition configurations for ESP32-S3, and integrated Over-the-Air (OTA) update functionality.

freertos lvgllwip
92

X-Knob: A Smart Knob Based on LVGL UI Framework

X-Knob is an open-source smart knob project featuring a brushless motor for haptic feedback and a circular LCD for a dynamic UI. It is built using the ESP32-S3 microcontroller, the LVGL graphics library, and the X-TRACK UI framework, supporting features like MQTT integration for Home Assistant and Surface Dial functionality.

freertos lvgl
829
X-TRACK Open Source GPS Bicycle Computer

X-TRACK Open Source GPS Bicycle Computer

An open-source GPS bicycle computer featuring offline maps, real-time track recording, and GPX export. It is built on the high-performance AT32F435 microcontroller and utilizes the LVGL V8 library for a sophisticated graphical interface, supported by custom page management and data distribution frameworks.

lvgl
6,138

XC-OS: A Lightweight Graphical OS for MCUs

XC-OS is a compact embedded graphical operating system built on FreeRTOS and LVGL. Designed for microcontrollers like the STM32F405, it supports Lua-based third-party applications and drivers, featuring a suite of built-in tools including a music player, video player, and Arduboy game system emulator.

freertos lvgl
78
XiaoZhi AI Chatbot

XiaoZhi AI Chatbot

An open-source AI chatbot firmware for ESP32 microcontrollers that enables voice interaction using large language models like Qwen and DeepSeek. It features offline wake-up, streaming ASR/TTS, and utilizes the Model Context Protocol (MCP) for IoT device control and cloud-side capability expansion.

freertos lvgllwip
22,862

Zig on RISC-V BL602 with Apache NuttX RTOS

A comprehensive project demonstrating how to build and run Zig applications on the RISC-V BL602 microcontroller using the Apache NuttX RTOS. It covers everything from basic 'Hello World' examples to complex LoRaWAN implementations, including technical workarounds for ABI compatibility and C-to-Zig translation.

nuttx lvgl
38

Zig LVGL Touchscreen App on Apache NuttX RTOS

This project demonstrates the integration of the Zig programming language with the LVGL graphics library on Apache NuttX RTOS. It provides a proof-of-concept for building safer, idiomatic touchscreen applications on RISC-V hardware by wrapping the C-based LVGL API in Zig.

nuttx lvgl
16

ZJ-TEK RT-Thread NimBLE LittlevGL Nordic Project

An integrated application project for Nordic nRF52840 and nRF52832 platforms featuring the RT-Thread RTOS, NimBLE BLE 5.0 stack, and LittlevGL (LVGL) graphics library. It demonstrates a complete embedded system solution including heart rate monitoring (HRM) and graphical user interface components.

rt-thread nimblelvgl
ZMK Firmware

ZMK Firmware

An open-source keyboard firmware built on the Zephyr Real Time Operating System. It provides a modern, wireless-first platform for mechanical keyboards, supporting Bluetooth Low Energy, split configurations, and extensive customization through a modular system of shields and behaviors.

zephyr lvglnanopb
3,759

ZSWatch

An open-source smartwatch project built on the Zephyr RTOS and powered by the nRF5340 dual-core BLE SoC. It features a high-resolution round touch display, a comprehensive suite of Bosch environmental and motion sensors, and seamless smartphone integration via Gadgetbridge or iOS.

zephyr lvglmcubootnimble
34

MicroPython Stubber

A specialized toolset for generating PEP 484 type hint stubs for MicroPython firmware, enabling advanced IntelliSense and static analysis in modern IDEs. It supports a wide range of ports including ESP32, RP2040, and STM32, and facilitates the creation of stubs for custom firmware builds.

micropythonlvgl
241

100askTeam eLinux Code Library

A comprehensive documentation and code repository for embedded Linux development on DongshanPI and other development boards. It covers Linux C programming, driver development for GPIO, I2C, and SPI subsystems, and integration of middleware like LVGL and MQTT across NXP, ST, and Allwinner platforms.

lvgl
12

100ASK Linux LVGL Desktop

An open-source embedded Linux GUI solution based on the LVGL graphics library. It provides a lightweight, aesthetically pleasing desktop environment with low memory footprint, specifically optimized for development boards like the IMX6ULL and STM32MP157. The project utilizes D-Bus for inter-process communication and features a modular architecture for easy extension.

lvgl
44

BMP Decoder for LVGL

A lightweight BMP image decoder for the LVGL graphics library. It enables BMP image support with minimal RAM usage by reading pixels on demand from a file system rather than loading the entire image into memory.

lvgl
12

Eclipse Simulator for LVGL (using SDL)

A cross-platform simulator for the LVGL graphics library using Eclipse CDT and SDL2. It allows developers to develop and test embedded GUI code on a PC before deploying to microcontroller hardware.

lvgl
335

FreeType Integration for LVGL

A specialized library that interfaces the FreeType font engine with the LVGL graphics framework to generate font bitmaps at runtime. It enables embedded applications to render high-quality vector fonts dynamically while providing sophisticated caching mechanisms to optimize memory and performance.

lvgl
58

GIF Decoder for LVGL

A GIF decoding library for the LVGL graphics framework, enabling the use of animated GIF images in embedded user interfaces. It supports loading GIFs from file systems or directly from flash memory as C arrays.

lvgl
37

Image Converter for LVGL

A Node.js-based command-line utility and web tool designed to convert standard image files into C arrays or binary formats compatible with the LVGL graphics library. It provides a memory-efficient alternative to older PHP-based converters, supporting various color formats and dithering algorithms for embedded displays.

lvgl
110

libtock-c: Tock Userland C Library

The C userland library and SDK for the Tock operating system, providing the core APIs and build system for developing embedded applications. It supports ARM Cortex-M and RISC-V architectures and includes integrated support for popular libraries like LWIP, LVGL, and OpenThread.

tock lvgllwipu8g2open-thread
88

LittlevGL2RTT

A middleware integration layer that seamlessly embeds the LittlevGL (LVGL) graphics library into the RT-Thread RTOS LCD framework. It eliminates the need for manual porting by providing a ready-to-use bridge between LVGL and RT-Thread's device drivers, supporting various input devices and display resolutions.

rt-thread lvgl
157

Lottie Animation Library for LVGL

An LVGL extension that enables the playback of Lottie animations using the Samsung rlottie engine. It allows embedded developers to integrate high-quality vector-based animations into their user interfaces via raw JSON strings or external files.

lvgl
42

Lumia-ESP32

A Windows Phone-inspired user interface demo for the WT32-SC01 ESP32 module. It leverages the LVGL graphics library and LovyanGFX to implement a comprehensive mobile-like environment including a lock screen, start menu, and several functional applications.

freertos lvgl
73

luavgl

A Lua wrapper for the LVGL graphics library that provides object-oriented widget management and class inheritance. It enables rapid UI development for embedded systems and includes a cross-platform PC simulator for testing.

nuttx lvgl
96

lv_chinese_ime

A custom component for the LVGL graphics library that extends the standard keyboard with Chinese Pinyin input method support. It is designed for embedded systems requiring localized text entry and is compatible with any environment where LVGL runs.

lvgl
37

lv_font_conv

A font converter tool that transforms TTF, WOFF, and OTF fonts into a compact bitmap format optimized for embedded systems. It supports anti-aliasing, kerning, and compression, with a specific output format for the LVGL graphics library.

lvgl
255

lv_i18n: Internationalization for LVGL

A lightweight internationalization (i18n) toolset and C library designed for embedded systems using the LVGL graphics library. It provides a gettext-like workflow for extracting strings from C source files, managing translations via YAML, and generating optimized C code for runtime translation.

lvgl
86

LVGL 8 on WT32-SC01 with Arduino

A project demonstrating the integration of LVGL 8.x and LovyanGFX on the WT32-SC01 ESP32-based development board. It provides a foundation for building high-performance graphical user interfaces on 3.5-inch capacitive touch displays using the Arduino framework.

freertos lvgl
105

lv_lib_100ask

A comprehensive collection of out-of-the-box UI components and enhanced interfaces for the LVGL graphics library. It provides ready-to-use modules such as a Pinyin input method, page manager, file explorer, and NES simulator for embedded platforms.

freertos lvglmicropython
126

LVGL C++ Binding

A C++17 wrapper for the Light and Versatile Graphics Library (LVGL), offering an object-oriented API for embedded graphical user interface development. It simplifies the integration of LVGL into C++ projects by providing bindings for widgets, drivers, and core functionality.

lvgl
60

LVGL Demo Embarcadores

A demonstration project showcasing the LVGL graphics library on the STM32F429-Discovery board. It integrates multiple hardware peripherals including GPS, IMU, and rotary encoders using FreeRTOS for task management. The application is designed to be portable between the physical ARM target and an x86-based simulator.

freertos lvgl
14