modm API documentation
LVGL graphics library

lbuild module: modm:lvgl

LVGL is a free and open-source graphics library providing everything you need to create embedded GUI with easy-to-use graphical elements, beautiful visual effects and low memory footprint.

Configuration

LVGL defines defaults for all it's configuration settings, which you can find in the configuration template.

This module generates a lv_conf.h file to define the options necessary for integration with modm which are:

To add your own configuration you can create a <lv_conf_local.h> file which will automatically be included at the beginning of our lv_conf.h.

Example <lv_conf_local.h> configuration:

// Maximal resolutions
#define LV_HOR_RES_MAX 240
#define LV_VER_RES_MAX 320
#define LV_DPI 200
/* Color depth:
- 1: 1 byte per pixel
- 8: RGB332
- 16: RGB565
- 32: ARGB8888
*/
#define LV_COLOR_DEPTH 16
// Enable logging at INFO level
#define LV_USE_LOG 1
#define LV_LOG_LEVEL LV_LOG_LEVEL_INFO
// Disable anti-aliasing
#define LV_ANTIALIAS 0

Initialization

modm will call lv_init() as a constructor with priority 1000 and then set the required callbacks for the modm port to work. Static constructors are called afterwards therefore can already use the LVGL functions.