LVGL
LVGL is the most popular free and open-source embedded graphics library to create beautiful UIs for any MCU, MPU and display type.
Features
- Powerful building: blocks buttons, charts, lists, sliders, images etc
- Advanced graphics with animations, anti-aliasing, opacity, smooth scrolling
- Various input: devices touch pad, mouse, keyboard and external buttons
- Multi language support with UTF-8 decoding
- Fully customizable graphical elements
- Hardware independent to use with any microcontroller or display
- Scalable to operate with few memory (at least 64-180 kB Flash, and 16-32 kB RAM)
- OS, External memory and GPU supported but not required
- Single frame buffer operation even with advances graphical effects
- Written in C for maximal compatibility
- PC simulator to develop without embedded hardware
- Tutorials, examples, themes for rapid development
- Advanced support and professional GUI development service
- Documentation and API references online
- Free and open source under MIT licence
Resource
- X-TRACK. A GPS bicycle speedometer that supports offline maps and track recording .
- ThatProject. *That Project’s project repository.
- ZSWatch. ZSWatch - the Open Source Zephyr™ based Smartwatch, including both HW and FW..
- lv_port_esp32. LVGL ported to ESP32 including various display and touchpad drivers.
- WatchX. Open-source smart watch, based on LittlevGL Embedded GUI Library.
- OMOTE. Open Source Remote Using ESP32 and LVGL.
- lv_binding_rust. LVGL bindings for Rust. A powerful and easy-to-use embedded GUI with many widgets, advanced visual effects (opacity, antialiasing, animations) and low memory requirements (16K RAM, 64K Flash). .
- openHASP. HomeAutomation Switchplate based on lvgl for ESP32.
- lv_demos. Examples, tutorials and applications for the LVGL embedded GUI library.
- X-Knob. X-Knob - A smart knob based on LVGL UI library, supports Smart Home(MQTT) and Surface Dial (BT) // LVGL UI 框架下的力反馈智能旋钮 (smartknob + X-TRACK) .
- HandsomeMod. IOT freedom for end users!.
- lv_drivers. TFT and touch pad drivers for LVGL embedded GUI library.
- X-CTRL. Open-source model remote controller.
- lvgl_esp32_drivers. Drivers for ESP32 to be used with LVGL.
- lv_port_pc_eclipse. PC simulator project for LVGL embedded GUI Library. Recommended on Linux and Mac..
- lv_binding_micropython. LVGL binding for MicroPython.
- WatchX-II. A brand-new designed open source smart watch .
- lv_port_linux_frame_buffer. LVGL configured to work with a standard Linux framebuffer.
- ESP32-TUX. ESP32-TUX - ESP32 / ESP32-XX Touch UX Template using LVGL to get you started .
- esp32_composite_video_lib. ESP32 library that generates composite video signal for PAL, SECAM and NTSC..
- lv_font_conv. Converts TTF/WOFF fonts to compact bitmap format.
- ESP32Berry. ESP32Berry Project.
- uReflowOven-Esp32-Micropython. μReflow Oven controller based on ESP32 with MicroPython & LVGL.
- lv_port_win_codeblocks. Windows PC simulator project for LVGL embedded GUI Library.
- SL_SDK. SL_SDK provides an easy-to-use software framework with united HAL and OSAL, also including a runtime environment to speed-up development for embedded devices like COTEX-M, RISC-V and so on. .
- OV-Watch. A powerful Smart Watch. Only cost ¥80 RMB ( $12 USD )..
- LVGL8-WT32-SC01-Arduino. ESP32 + WT32-SC01 + LOVYANGFX + LVGL8 with Arduino.
- lv_port_windows. LVGL ported to Windows.
- XC-OS. Open source graphics operating system for microcontroller.
- lv_port_stm32f429_disco. LVGL ported to STM32F429I-DISC1 using SW4STM32 (Ac6) IDE.
- lv_binding_js. React bindings for LVGL ⚛️.
- esp32-smartdisplay. PlatformIO library LVGL Drivers for Sunton Smart display boards. This library supports these boards without any effort. ESP32-2432S028R, ESP32-3248S035R, ESP32-3248S035C.
- MarauderCentauri. A suite of WiFi/Bluetooth offensive and defensive tools for the ESP32 and ESP8266.
- XTerminal. a multi functional embedded device based on esp32,integrated with music player,weather,clock,Arduboy games,etc.
- lv_img_conv. Image converter for LVGL, written in JS.
- lv_lib_png. PNG decoder for LVGL.
- lv_lib_100ask. lv_lib_100ask is a reference for various out of the box schemes based on lvgl library or an enhanced interface for various components of lvgl library..
- lv_utils. Convert images or system fonts to C arrays. Written for LVGL embedded GUI library.
- Lumia-ESP32. A demo project for WT32-SC01 module.
- lv_lib_qrcode. QR code generation with LVGL.
- lv_web_emscripten. LVGL ported to Emscripten to be converted to JavaScript.
- lv_lib_freetype. Interface to FreeType to generate font bitmaps run time.
- bbn-m5stack-tough. M5Stack Tough (ESP-32) Sailing Instruments Display and Autopilot Control.
- esphome-lvgl. ESPhome with LVGL component.
- lvgl-watch. Open-Smartwatch手表,基于LVGL8.0.
- WT32-SqLn. Getting started with Wireless Tag’s WT32-SC01 Plus using SquareLine Studio and LVGL.
- Lvgl_image_convert_tool. 基于LVGl图片转换离线版封装的小工具,不仅有界面,还可以一键生成到项目里哦.
- LVGL_UI_Creator. Drag and Drop UI Creation for LVGL.
- pid-stm32f746. Embedded graphical interface for PID control.
- lv_i18n. Internationalization (i18n) for LVGL.
- lv_lib_gif. GIF library for LVGL.
- AWatch. An ESP32 TTGO T-Watch (2019 edition) Amiga-inspired Countdown Timer Watch.
- LVGL-DemoTest. LVGL demo test.
- lv_binding_cpp. [WIP] C++ binding for LVGL.
- lv_lib_split_jpg. JPG decoder for LVGL .
- lv_gba_emu. LVGL Game Boy Advance Emulator.
- luavgl. lua + lvgl = luavgl An optimized lvgl Lua binding.
- EUC-Dash-ESP32. Bluetooth Dashboard for electric unicycles (EUCs) for ESP32(ttgo t-watch). requires PlatformIO to build.
- lv_100ask_linux_desktop. 百问网linux桌面GUI,基于LVGL 8.x。.
- ESP32-LVGL8x-SDSPI. ESP32 / ESP32-S3 with LVGL widgets using LovyanGFX + SD SPI working with multiple display size support.
- air32f103-template. AIR32F103 template project for GNU Arm Embedded Toolchain.
- lv_chinese_ime. lv_chinese_ime:支持中文输入法的LVGL键盘部件增强插件。lv_chinese_ime: LVGL keyboard widget enhancement plugin that supports Chinese input method..
- ESP32-Watch-Projects. ESP32-Watch.
- Launcher_lvgl. Use LVGL make a launcher.
- lv_lib_rlottie. Lottie animation support for LVGL.
- M5Pi-Launcher. Launcher for M5Pi based on LVGL..
- espgaggia. Automate your gaggia classic or other machine….
- lv_port_stm32f769_disco. LVGL ported to STM32F769 Discovery using CubeIDE.
- dt78-esp32-firmware. Firmware for the DT78 watch based on ESP32 microcontroller.
- Deck. 基于稚晖君的Peak和FASTSHIFT的X-TRACK,享受丝滑UI并构建自己的玩具.
- STM32_DisplayLink. Connecting USB-VGA adapter to STM32.
- paMcuLib. My commonLib for MCUs. 我的mcu通用库.
- cdroid. CDroid is a android like GUI toolkit base on C++11,It is a cross-platform GUI engine for embedded system.Mybe an other choice of emwin ,touchgfx,awtk. it is more frientdly for android developers..
- blog. Post, News and Tutorials about LVGL embedded GUI library.
- steeringWheel_MeterBox_STM32_FreeRTOS. 一款功能强大的大学生方程式赛车方向盘。.
- lvgl-rs-wasm. Example of LVLG in Rust compiled to WASM..
- lv_port_raspberry_pi_pico_mdk. An MDK template for Raspberry Pi Pico + LVGL.
- T-Display-S3. An example project for LILYGO’s T-Display-S3 using the PlatfomIO IDE, Arduino framework and LVGL..
- Vex-Autonomous-Selector. An Autonomous Selector Made using LVGL for VEX + PROS.
- lv_layout_preview. Real time preview of lvgl layout..
- lvglpp. A C++ wrapper for LVGL.
- open-authenticator-app. Firmware for Open Authenticator.
- lvgl_port_M5Core2. LVGL ported to M5Core2(esp32)..
- VFO-ESP32-Si5351. VFO ESP32 Si5351.
- pinephone-lvgl-zig. LVGL for PinePhone (and WebAssembly) with Zig and Apache NuttX RTOS.
- lv_lib_bmp. BMP decoder library for LVGL.
- lvgl-demo-embarcadores. Aplicação de exemplo usando a biblioteca gráfica LVGL..
- barebones-watchface. Barebones Watch Face for Rust + Mynewt on PineTime Smart Watch.
- SC01_Plus_HMI_example. Arduino example using SquareLine Studio to make an HMI with an SC01_plus capacitive display..
- esp32_offline_osm. Offline (OSM) maps on ESP32.
- esp32-st7789v-ft6236u-arduino. 1.3inch 240x240 LVGL Arduino PlatormIO.
- lvgl-nrf52840-mdk-sample. A simple example of how to use a LVGL widget in Zephyr RTOS running on a nRF52840_mdk board and a ST7789 - 240x240 IPS display.
- lvgl_touch_calibration. A complete lvgl screen object for performing calibration of a resistive touch panel..
- LinuxCodeLibrary. Embedded Linux Code Library..
- pinetime. zephyr based PineTime smartwatch.
- lvgl-rasp-sdl. “Demo printer” LVGL application for Raspbery Pi 3 using SDL library..
- rp2040-eSPI-lvgl. a simple demo with eSPI and LVGL resistance touch screen based on RP2040.
- lvgl-for-android. You can use C to develop HMI in android without java android-api , and can run app in cmdline directly. ideally situated for bsp and mcu engineers to develop HMI in android,who familiarize with lvgl.
- zig-lvgl-nuttx. Zig LVGL Touchscreen App on Apache NuttX RTOS.
- docs. Meta repository for compiled documentation. Do not send PRs here - they will be closed. The Markdown files are now located in the main repository: https://github.com/lvgl/lvgl.