8.0
Introduction
Key features
Requirements
License
Repository layout
Release policy
Release cycle
Branches
Changelog
Version support
FAQ
Where can I ask questions?
Is my MCU/hardware supported?
Is my display supported?
Nothing happens, my display driver is not called. What have I missed?
Why is the display driver called only once? Only the upper part of the display is refreshed.
Why do I see only garbage on the screen?
Why I see nonsense colors on the screen?
How to speed up my UI?
How to reduce flash/ROM usage?
How to reduce the RAM usage
How to work with an operating system?
Get started
Quick overview
Get started in a simulator
Add LVGL into your project
Learn the basics
Widgets
Events
Parts
States
Styles
Themes
Examples
C
MicroPython
Micropython
Simulator on PC
Select an IDE
Set-up Eclipse CDT
Install Eclipse CDT
Install SDL 2
Pre-configured project
Add the pre-configured project to Eclipse CDT
Compile and Run
STM32
NXP
Creating new project with LVGL
Adding HW acceleration for NXP iMX RT platforms using PXP (PiXel Pipeline) engine for existing projects
Features supported:
Basic configuration:
Basic initialization:
Project setup:
Advanced configuration:
Espressif (ESP32)
Get the LVGL demo project for ESP32
Use LVGL in your ESP32 project
Prerequisites
Get LVGL
Use lvgl_esp32_drivers in your project
Support for ESP32-S2
Arduino
Get the LVGL Ardunio library
Set up drivers
Configure LVGL
Configure the examples
Initialize LVGL and run an example
Debugging and logging
Micropython
What is Micropython?
Highlights of Micropython
Why Micropython + LVGL?
Here are some advantages of using LVGL in Micropython:
Micropython + LVGL could be used for:
So what does it look like?
A simple example
How can I use it?
Online Simulator
PC Simulator
Embedded platform
Where can I find more information?
NuttX RTOS
What is NuttX?
Highlights of NuttX
Why NuttX + LVGL?
Here are some advantages of using LVGL in NuttX
NuttX + LVGL could be used for
How to get started with NuttX and LVGL?
First you need to install the pre-requisite on your system
Now let's to create a workspace to save our files
Clone the NuttX and Apps repositories:
Configure NuttX to use the stm32f429i-disco board and the LVGL Demo
Flashing the firmware in the board using OpenOCD:
Where can I find more information?
Porting
Set-up a project
Get the library
Configuration file
Initialization
Display interface
Draw buffer
Display driver
Mandatory fields
Optional fields
Examples
Rotation
Further reading
API
Input device interface
Types of input devices
Touchpad, mouse or any pointer
Keypad or keyboard
Encoder
Button
Other features
Parameters
Feedback
Associating with a display
Buffered reading
Further reading
API
Tick interface
API
Task Handler
Sleep management
Operating system and interrupts
Tasks and threads
Interrupts
Logging
Log level
Printing logs
Logging with printf
Custom log function
Add logs
Overview
Objects
Attributes
Basic attributes
Specific attributes
Working mechanisms
Parent-child structure
Moving together
Visibility only on the parent
Create and delete objects
Screens
Create screens
Get the active screen
Load screens
Layers
Handling multiple displays
Parts
States
Positions, sizes, and layouts
Overview
Units
Boxing model
Important notes
Position
Simple way
Align
Size
Simple way
Using styles
Translation
Transformation
Min and Max size
Layout
Overview
Built-in layout
Flags
Adding new layouts
Examples
Styles
States
Cascading styles
Inheritance
Parts
Initialize styles and set/get properties
Add and remove styles to a widget
Add styles
Remove styles
Report style changes
Get a property's value on an object
Local styles
Properties
Typical background properties
Transitions
Color filter
Themes
Extending themes
Examples
C
MicroPython
API
Style properties
Size and position
width
min_width
max_width
height
min_height
max_height
x
y
align
transform_width
transform_height
translate_x
translate_y
transform_zoom
transform_angle
Padding
pad_top
pad_bottom
pad_left
pad_right
pad_row
pad_column
Miscellaneous
radius
clip_corner
opa
color_filter_dsc
color_filter_opa
anim_time
anim_speed
transition
blend_mode
layout
base_dir
Background
bg_color
bg_opa
bg_grad_color
bg_grad_dir
bg_main_stop
bg_grad_stop
bg_img_src
bg_img_opa
bg_img_recolor
bg_img_recolor_opa
bg_img_tiled
Border
border_color
border_opa
border_width
border_side
border_post
Text
text_color
text_opa
text_font
text_letter_space
text_line_space
text_decor
text_align
Image
img_opa
img_recolor
img_recolor_opa
Outline
outline_width
outline_color
outline_opa
outline_pad
Shadow
shadow_width
shadow_ofs_x
shadow_ofs_y
shadow_spread
shadow_color
shadow_opa
Line
line_width
line_dash_width
line_dash_gap
line_rounded
line_color
line_opa
Arc
arc_width
arc_rounded
arc_color
arc_opa
arc_img_src
Scroll
Overview
Scrollbar
Events
Basic example
Features of scrolling
Scrollable
Scroll chain
Scroll momentum
Elastic scroll
Snapping
Scroll one
Scroll on focus
Scroll manually
Self size
Examples
C
MicroPython
Layers
Order of creation
Bring to the foreground
Top and sys layers
Events
Add events to the object
Remove event(s) from an object
Event codes
Input device events
Drawing events
Other events
Special events
Custom events
Sending events
Refresh event
Fields of lv_event_t
Event bubbling
Examples
C
MicroPython
Input devices
Pointers
Keypad and encoder
Groups
Styling
API
Input device
Groups
Displays
Multiple display support
Using only one display
Mirror display
Split image
Screens
Transparent screens
Features of displays
Inactivity
Background
API
Colors
Creating colors
RGB
HSV
Palette
Modify and mix colors
Built-in colors
Opacity
Color types
Convert color
API
Fonts
Unicode support
Built-in fonts
Normal fonts
Special fonts
Special features
Bidirectional support
Arabic and Persian support
Subpixel rendering
Compress fonts
Add new font
Add new symbols
Load font at run-time
Add a new font engine
Images
Store images
Variables
Files
Color formats
Add and use images
Online converter
Manually create an image
Use images
Image decoder
Custom image formats
Register an image decoder
Manually use an image decoder
Image caching
Cache size
Value of images
Memory usage
Clean the cache
API
Image buffer
File system
Ready to use drivers
Add a driver
Registering a driver
Implementing the callbacks
Other callbacks
Usage example
Use drivers for images
API
Animations
Create an animation
Animation path
Speed vs time
Delete animations
Examples
C
MicroPython
API
Timers
Create a timer
Ready and Reset
Set parameters
Repeat count
Measure idle time
Asynchronous calls
API
Drawing
Mechanism of screen refreshing
Masking
Hook drawing
Main drawing
Post drawing
Part drawing
Others
New widget
Widgets
Base object (lv_obj)
Overview
Coordinates
Parents and children
Screens
Events
Styles
Flags
Groups
Extended click area
Events
Keys
Example
C
MicroPython
API
Core widgets
Arc (lv_arc)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Bar (lv_bar)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Button (lv_btn)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Button matrix (lv_btnmatrix)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Canvas (lv_canvas)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Checkbox (lv_checkbox)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Drop-down list (lv_dropdown)
Overview
Parts and Styles
Usage
Overview
Events
Keys
Example
API
Image (lv_img)
Overview
Parts and Styles
Usage
Transformations
Events
Keys
Example
API
Label (lv_label)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Line (lv_line)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Roller (lv_roller)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Slider (lv_slider)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Switch (lv_switch)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Table (lv_table)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Text area (lv_textarea)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Extra widgets
Calendar (lv_calendar)
Overview
Parts and Styles
Usage
Events
Keys
Headers
Example
API
Chart (lv_chart)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Color wheel (lv_colorwheel)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Image button (lv_imgbtn)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Keyboard (lv_keyboard)
Overview
Parts and Styles
Usage
Events
Keys
Examples
API
LED (lv_led)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
List (lv_list)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Meter (lv_meter)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Message box (lv_msgbox)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Span (lv_span)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Spinbox (lv_spinbox)
Overview
Parts and Styles
Events
Keys
Example
API
Example
Spinner (lv_spinner)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Tabview (lv_tabview)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Tile view (lv_tileview)
Overview
Parts and Styles
Usage
Events
Keys
Example
API
Window (lv_win)
Overview
Parts and Styles
Usage
Get the parts
Events
Keys
Example
API
Layouts
Flex
Overview
Terms
Simple interface
Flex flow
Flex align
Flex grow
Style interface
Other features
RTL
New track
Example
C
MicroPython
API
Grid
Overview
Terms
Simple interface
Grid descriptors
Grid items
Grid align
Style interface
Other features
RTL
Example
C
MicroPython
API
Contributing
Introduction
Pull request
From GitHub
From command line
Developer Certification of Origin (DCO)
Overview
Accepted licenses and copyright notices
Your own work
Use code from online source
Use MIT licensed code
Use GPL licensed code
Ways to contribute
Give LVGL a Star
Tell what you have achieved
Write examples
Improve the docs
Report bugs
Send fixes
Join the conversations in the Forum
Add features
Become a maintainer
Move your project repository under LVGL organization
Changelog
v8.0.2 (16.07.2021)
v8.0.1 (14.06.2021)
v8.0.0 (01.06.2021)
Directory structure
Widget changes
New scrolling
New layouts
Styles
Events
Driver changes
Other changes
New release policy
Migrating from v7 to v8
v7.11.0 (16.03.2021)
New features
Bugfixes
v7.10.1 (16.02.2021)
Bugfixes
v7.10.0 (02.02.2021)
New features
Bugfixes
v7.9.1 (19.01.2021)
Bugfixes
v7.9.0 (05.01.2021)
New features
Bugfixes
v7.8.1 (15.12.2020)
Bugfixes
v7.8.0 (01.12.2020)
New features
Bugfixes
v7.7.2 (17.11.2020)
Bugfixes
v7.7.1 (03.11.2020)
Bugfixes
v7.7.0 (20.10.2020)
New features
Bugfixes
v7.6.1 (06.10.2020)
Bugfixes
v7.6.0 (22.09.2020)
New features
Bugfixes
v7.5.0 (15.09.2020)
New features
Bugfixes
v7.4.0 (01.09.2020)
New features
Bugfixes
v7.3.1 (18.08.2020)
Bugfixes
v7.3.0 (04.08.2020)
New features
Bugfixes
v7.2.0 (21.07.2020)
New features
Bugfixes
v7.1.0 (07.07.2020)
New features
Bugfixes
v7.0.2 (16.06.2020)
Bugfixes
v7.0.1 (01.06.2020)
Bugfixes
v7.0.0 (18.05.2020)
Documentation
Legal changes
New drawing system
New style system
GPU integration
Renames
Reworked and improved object
New object types
Others
Demos
New release policy
Migrating from v6 to v7
Roadmap
v8.X
Ideas
v8
LVGL
»
Overview
»
New widget
Edit on GitHub
New widget
ΒΆ