lv_conf_internal.h

GENERATED FILE, DO NOT EDIT IT!

This file ensures all defines of lv_conf.h have a default value.

Defines

LV_OS_NONE
LV_OS_PTHREAD
LV_OS_FREERTOS
LV_OS_CMSIS_RTOS2
LV_OS_RTTHREAD
LV_OS_WINDOWS
LV_OS_MQX
LV_OS_CUSTOM
LV_STDLIB_BUILTIN
LV_STDLIB_CLIB
LV_STDLIB_MICROPYTHON
LV_STDLIB_RTTHREAD
LV_STDLIB_CUSTOM
LV_DRAW_SW_ASM_NONE
LV_DRAW_SW_ASM_NEON
LV_DRAW_SW_ASM_HELIUM
LV_DRAW_SW_ASM_CUSTOM
__LV_TO_STR_AUX(x)

Handle special Kconfig options.

__LV_TO_STR(x)
LV_TEXTAREA_DEF_PWD_SHOW_TIME

Color depth: 1 (I1), 8 (L8), 16 (RGB565), 24 (RGB888), 32 (XRGB8888) Possible values

  • LV_STDLIB_BUILTIN: LVGL's built in implementation

  • LV_STDLIB_CLIB: Standard C functions, like malloc, strlen, etc

  • LV_STDLIB_MICROPYTHON: MicroPython implementation

  • LV_STDLIB_RTTHREAD: RT-Thread implementation

  • LV_STDLIB_CUSTOM: Implement the functions externally Possible values

  • LV_STDLIB_BUILTIN: LVGL's built in implementation

  • LV_STDLIB_CLIB: Standard C functions, like malloc, strlen, etc

  • LV_STDLIB_MICROPYTHON: MicroPython implementation

  • LV_STDLIB_RTTHREAD: RT-Thread implementation

  • LV_STDLIB_CUSTOM: Implement the functions externally Possible values

  • LV_STDLIB_BUILTIN: LVGL's built in implementation

  • LV_STDLIB_CLIB: Standard C functions, like malloc, strlen, etc

  • LV_STDLIB_MICROPYTHON: MicroPython implementation

  • LV_STDLIB_RTTHREAD: RT-Thread implementation

  • LV_STDLIB_CUSTOM: Implement the functions externally Size of memory available for lv_malloc() in bytes (>= 2kB) Size of the memory expand for lv_malloc() in bytes Set an address for the memory pool instead of allocating it as a normal array. Can be in external SRAM too. Default display refresh, input device read and animation step period. Default Dots Per Inch. Used to initialize default sizes such as widgets sized, style paddings. (Not so important, you can adjust it to modify default sizes and spaces.) Select operating system to use. Possible options:

  • LV_OS_NONE

  • LV_OS_PTHREAD

  • LV_OS_FREERTOS

  • LV_OS_CMSIS_RTOS2

  • LV_OS_RTTHREAD

  • LV_OS_WINDOWS

  • LV_OS_MQX

  • LV_OS_CUSTOM Align stride of all layers and images to this bytes Align start address of draw_buf addresses to this bytes Using matrix for transformations. Requirements:

  • LV_USE_MATRIX = 1.

  • Rendering engine needs to support 3x3 matrix transformations. The target buffer size for simple layer chunks. Stack size of drawing thread. NOTE: If FreeType or ThorVG is enabled, it is recommended to set it to 32KB or more. Set number of draw units.

  • > 1 requires operating system to be enabled in LV_USE_OS.

  • > 1 means multiple threads will render the screen in parallel. Use Arm-2D to accelerate software (sw) rendering. Enable native helium assembly to be compiled.

  • 0: Use a simple renderer capable of drawing only simple rectangles with gradient, images, text, and straight lines only.

  • 1: Use a complex renderer capable of drawing rounded corners, shadow, skew lines, and arcs too. Allow buffering some shadow calculation. LV_DRAW_SW_SHADOW_CACHE_SIZE is the maximum shadow size to buffer, where shadow size is shadow_width + radius. Caching has LV_DRAW_SW_SHADOW_CACHE_SIZE^2 RAM cost. Set number of maximally-cached circle data. The circumference of 1/4 circle are saved for anti-aliasing. radius * 4 bytes are used per circle (the most often used radiuses are saved).

  • 0: disables caching Enable drawing complex gradients in software: linear at an angle, radial or conical Use NXP's VG-Lite GPU on iMX RTxxx platforms. Enable blit quality degradation workaround recommended for screen's dimension > 352 pixels. Enable VGLite asserts. Use NXP's PXP on iMX RTxxx platforms. Enable PXP asserts. Use Renesas Dave2D on RA platforms. Draw using cached SDL textures Use VG-Lite GPU. Enable VG-Lite custom external 'gpu_init()' function Enable VG-Lite assert. VG-Lite flush commit trigger threshold. GPU will try to batch these many draw tasks. Enable border to simulate shadow. NOTE: which usually improves performance, but does not guarantee the same rendering quality as the software. VG-Lite gradient maximum cache number.

  • LV_LOG_LEVEL_TRACE Log detailed information.

  • LV_LOG_LEVEL_INFO Log important events.

  • LV_LOG_LEVEL_WARN Log if something unwanted happened but didn't cause a problem.

  • LV_LOG_LEVEL_ERROR Log only critical issues, when system may fail.

  • LV_LOG_LEVEL_USER Log only custom log messages added by the user.

  • LV_LOG_LEVEL_NONE Do not log anything.

  • 1: Print log with 'printf';

  • 0: User needs to register a callback with lv_log_register_print_cb(). Set callback to print logs. E.g my_print. The prototype should be void my_print(lv_log_level_t level, const char * buf). Can be overwritten by lv_log_register_print_cb.

  • 1: Enable printing timestamp;

  • 0: Disable printing timestamp.

  • 1: Print file and line number of the log;

  • 0: Do not print file and line number of the log. Add a custom handler when assert happens e.g. to restart MCU. 1: Draw random colored rectangles over the redrawn areas. 1: Draw a red overlay for ARGB layers and a green overlay for RGB layers 1: Adds the following behaviors for debugging:

  • Draw overlays with different colors for each draw_unit's tasks.

  • Draw index number of draw unit on white background.

  • For layers, draws index number of draw unit on black background. Default cache size in bytes. Used by image decoders such as lv_lodepng to keep the decoded image in memory. If size is not set to 0, the decoder will fail to decode when the cache is full. If size is 0, the cache function is not enabled and the decoded memory will be released immediately after use. Default number of image header cache entries. The cache is used to store the headers of images The main logic is like LV_CACHE_DEF_SIZE but for image headers. Number of stops allowed per gradient. Increase this to allow more stops. This adds (sizeof(lv_color_t) + 1) bytes per additional stop. Adjust color mix functions rounding. GPUs might calculate color mix (blending) differently.

  • 0: round down,

  • 64: round up from x.75,

  • 128: round up from half,

  • 192: round up from x.25,

  • 254: round up Add 2 x 32-bit variables to each lv_obj_t to speed up getting style properties Add id field to lv_obj_t Automatically assign an ID when obj is created Use builtin obj ID handler functions:

  • lv_obj_assign_id: Called when a widget is created. Use a separate counter for each widget class as an ID.

  • lv_obj_id_compare: Compare the ID to decide if it matches with a requested value.

  • lv_obj_stringify_id: Return string-ified identifier, e.g. "button3".

  • lv_obj_free_id: Does nothing, as there is no memory allocation for the ID. When disabled these functions needs to be implemented by the user. Use obj property set/get API. Enable property name support. Enable LVGL's blend mode support Enable YUV color format support Enable Linear gradient extension support Enable alignment on 16 pixels Buffer address alignment Enable multi-thread render For big endian systems set to 1 Define a custom attribute for lv_tick_inc function Define a custom attribute for lv_timer_handler function Define a custom attribute for lv_display_flush_ready function Align VG_LITE buffers on this number of bytes.

  • Requires LV_USE_FLOAT = 1 Include lvgl_private.h in lvgl.h to access internal data and functions by default Pixel perfect monospaced fonts Optionally declare custom fonts here.

You can use any of these fonts as the default font too and they will be available globally. Example:

#define LV_FONT_CUSTOM_DECLARE   LV_FONT_DECLARE(my_font_1) LV_FONT_DECLARE(my_font_2)
Always set a default font Enable handling large font and/or fonts with a lot of characters. The limit depends on the font size, font face and bpp. A compiler error will be triggered if a font needs it. Enables/disables support for compressed fonts. Enable drawing placeholders when glyph dsc is not found. Select a character encoding for strings. Your IDE or editor should have the same character encoding.
  • LV_TXT_ENC_UTF8

  • LV_TXT_ENC_ASCII While rendering text strings, break (wrap) text on these chars. If a word is at least this long, will break wherever "prettiest". To disable, set to a value <= 0. Minimum number of characters in a long word to put on a line before a break. Depends on LV_TXT_LINE_BREAK_LONG_LEN. Minimum number of characters in a long word to put on a line after a break. Depends on LV_TXT_LINE_BREAK_LONG_LEN. Support bidirectional text. Allows mixing Left-to-Right and Right-to-Left text. The direction will be processed according to the Unicode Bidirectional Algorithm: https://www.w3.org/International/articles/inline-bidi-markup/uba-basics Enable Arabic/Persian processing In these languages characters should be replaced with another form based on their position in the text 1: Causes these widgets to be given default values at creation time.

  • lv_buttonmatrix_t: Get default maps: {"Btn1", "Btn2", "Btn3", "\n", "Btn4", "Btn5", ""}, else map not set.

  • lv_checkbox_t : String label set to "Check box", else set to empty string.

  • lv_dropdown_t : Options set to "Option 1", "Option 2", "Option 3", else no values are set.

  • lv_roller_t : Options set to "Option 1", "Option 2", "Option 3", "Option 4", "Option 5", else no values are set.

  • lv_label_t : Text set to "Text", else empty string. A line of text can contain this maximum number of span descriptors. [ms]

Note

The memory usage of a single gradient image is 4K bytes. VG-Lite stroke maximum cache number. Enable log module Set value to one of the following levels of logging detail:

Note

vglite_src_buf_aligned() uses this value to validate alignment of passed buffer pointers. Will be added where memory needs to be aligned (with -Os data might not be aligned to boundary by default). E.g. attribute((aligned(4))) Attribute to mark large constant arrays, for example for font bitmaps Compiler prefix for a large array declaration in RAM Place performance critical functions into a faster memory (e.g RAM) Export integer constant to binding. This macro is used with constants in the form of LV_<CONST> that should also appear on LVGL binding API such as MicroPython. Prefix all global extern data with this Use float as lv_value_precise_t Enable matrix support

LV_USE_LZ4
LV_USE_THORVG