1# Kconfig file for LVGL v8.0 2 3menu "LVGL configuration" 4 5 # Define CONFIG_LV_CONF_SKIP so we can use LVGL 6 # without lv_conf.h file, the lv_conf_internal.h and 7 # lv_conf_kconfig.h files are used instead. 8 config LV_CONF_SKIP 9 bool "Check this to not use lv_conf.h" 10 default n 11 12 config LV_CONF_MINIMAL 13 bool "LVGL minimal configuration." 14 15 menu "Color settings" 16 choice LV_COLOR_DEPTH 17 prompt "Color depth." 18 default LV_COLOR_DEPTH_16 19 help 20 Color depth to be used. 21 22 config LV_COLOR_DEPTH_32 23 bool "32: ARGB8888" 24 config LV_COLOR_DEPTH_16 25 bool "16: RGB565" 26 config LV_COLOR_DEPTH_8 27 bool "8: RGB232" 28 config LV_COLOR_DEPTH_1 29 bool "1: 1 byte per pixel" 30 endchoice 31 32 config LV_COLOR_DEPTH 33 int 34 default 1 if LV_COLOR_DEPTH_1 35 default 8 if LV_COLOR_DEPTH_8 36 default 16 if LV_COLOR_DEPTH_16 37 default 32 if LV_COLOR_DEPTH_32 38 39 config LV_COLOR_16_SWAP 40 bool "Swap the 2 bytes of RGB565 color. Useful if the display has an 8-bit interface (e.g. SPI)." 41 depends on LV_COLOR_DEPTH_16 42 43 config LV_COLOR_SCREEN_TRANSP 44 bool "Enable more complex drawing routines to manage screens transparency." 45 help 46 Can be used if the UI is above another layer, e.g. an OSD menu or video player. 47 The screen's `bg_opa` should be set to non LV_OPA_COVER value 48 49 config LV_COLOR_MIX_ROUND_OFS 50 int "Adjust color mix functions rounding" 51 default 128 if !LV_COLOR_DEPTH_32 52 default 0 if LV_COLOR_DEPTH_32 53 range 0 254 54 help 55 0: no adjustment, get the integer part of the result (round down) 56 64: round up from x.75 57 128: round up from half 58 192: round up from x.25 59 254: round up 60 61 config LV_COLOR_CHROMA_KEY_HEX 62 hex "Images pixels with this color will not be drawn (if they are chroma keyed)." 63 range 0x000000 0xFFFFFF 64 default 0x00FF00 65 help 66 See misc/lv_color.h for some color values examples. 67 endmenu 68 69 menu "Memory settings" 70 config LV_MEM_CUSTOM 71 bool "If true use custom malloc/free, otherwise use the built-in `lv_mem_alloc()` and `lv_mem_free()`" 72 73 config LV_MEM_SIZE_KILOBYTES 74 int "Size of the memory used by `lv_mem_alloc` in kilobytes (>= 2kB)" 75 range 2 128 76 default 32 77 depends on !LV_MEM_CUSTOM 78 79 config LV_MEM_ADDR 80 hex "Address for the memory pool instead of allocating it as a normal array" 81 default 0x0 82 depends on !LV_MEM_CUSTOM 83 84 config LV_MEM_CUSTOM_INCLUDE 85 string "Header to include for the custom memory function" 86 default "stdlib.h" 87 depends on LV_MEM_CUSTOM 88 89 config LV_MEM_BUF_MAX_NUM 90 int "Number of the memory buffer" 91 default 16 92 help 93 Number of the intermediate memory buffer used during rendering and other 94 internal processing mechanisms. You will see an error log message if 95 there wasn't enough buffers. 96 97 config LV_MEMCPY_MEMSET_STD 98 bool "Use the standard memcpy and memset instead of LVGL's own functions" 99 endmenu 100 101 menu "HAL Settings" 102 config LV_DISP_DEF_REFR_PERIOD 103 int "Default display refresh period (ms)." 104 default 30 105 help 106 Can be changed in the display driver (`lv_disp_drv_t`). 107 108 config LV_INDEV_DEF_READ_PERIOD 109 int "Input device read period [ms]." 110 default 30 111 112 config LV_TICK_CUSTOM 113 bool "Use a custom tick source" 114 115 config LV_TICK_CUSTOM_INCLUDE 116 string "Header for the system time function" 117 default "Arduino.h" 118 depends on LV_TICK_CUSTOM 119 120 config LV_DPI_DEF 121 int "Default Dots Per Inch (in px)." 122 default 130 123 help 124 Used to initialize default sizes such as widgets sized, style paddings. 125 (Not so important, you can adjust it to modify default sizes and spaces) 126 endmenu 127 128 menu "Feature configuration" 129 130 menu "Drawing" 131 config LV_DRAW_COMPLEX 132 bool "Enable complex draw engine" 133 default y 134 help 135 Required to draw shadow, gradient, rounded corners, circles, arc, skew lines, 136 image transformations or any masks. 137 138 config LV_SHADOW_CACHE_SIZE 139 int "Allow buffering some shadow calculation" 140 depends on LV_DRAW_COMPLEX 141 default 0 142 help 143 LV_SHADOW_CACHE_SIZE is the max shadow size to buffer, where 144 shadow size is `shadow_width + radius`. 145 Caching has LV_SHADOW_CACHE_SIZE^2 RAM cost. 146 147 config LV_CIRCLE_CACHE_SIZE 148 int "Set number of maximally cached circle data" 149 depends on LV_DRAW_COMPLEX 150 default 4 151 help 152 The circumference of 1/4 circle are saved for anti-aliasing 153 radius * 4 bytes are used per circle (the most often used 154 radiuses are saved). 155 Set to 0 to disable caching. 156 157 config LV_LAYER_SIMPLE_BUF_SIZE 158 int "Optimal size to buffer the widget with opacity" 159 default 24576 160 help 161 "Simple layers" are used when a widget has `style_opa < 255` 162 to buffer the widget into a layer and blend it as an image 163 with the given opacity. Note that `bg_opa`, `text_opa` etc 164 don't require buffering into layer. 165 166 config LV_IMG_CACHE_DEF_SIZE 167 int "Default image cache size. 0 to disable caching." 168 default 0 169 help 170 If only the built-in image formats are used there is no real advantage of caching. 171 (I.e. no new image decoder is added). 172 173 With complex image decoders (e.g. PNG or JPG) caching can 174 save the continuous open/decode of images. 175 However the opened images might consume additional RAM. 176 177 config LV_GRADIENT_MAX_STOPS 178 int "Number of stops allowed per gradient." 179 default 2 180 help 181 Increase this to allow more stops. 182 This adds (sizeof(lv_color_t) + 1) bytes per additional stop 183 184 config LV_GRAD_CACHE_DEF_SIZE 185 int "Default gradient buffer size." 186 default 0 187 help 188 When LVGL calculates the gradient "maps" it can save them into a cache to avoid calculating them again. 189 LV_GRAD_CACHE_DEF_SIZE sets the size of this cache in bytes. 190 If the cache is too small the map will be allocated only while it's required for the drawing. 191 0 mean no caching. 192 193 config LV_DITHER_GRADIENT 194 bool "Allow dithering the gradients" 195 help 196 Allow dithering the gradients (to achieve visual smooth color gradients on limited color depth display) 197 LV_DITHER_GRADIENT implies allocating one or two more lines of the object's rendering surface 198 The increase in memory consumption is (32 bits * object width) plus 24 bits * object width if using error diffusion 199 200 config LV_DITHER_ERROR_DIFFUSION 201 bool "Add support for error diffusion dithering" 202 depends on LV_DITHER_GRADIENT 203 help 204 Error diffusion dithering gets a much better visual result, but implies more CPU consumption and memory when drawing. 205 The increase in memory consumption is (24 bits * object's width) 206 207 config LV_DISP_ROT_MAX_BUF 208 int "Maximum buffer size to allocate for rotation" 209 default 10240 210 help 211 Only used if software rotation is enabled in the display driver. 212 endmenu 213 214 menu "GPU" 215 config LV_USE_GPU_ARM2D 216 bool "Enable Arm's 2D image processing library (Arm-2D) for all Cortex-M processors." 217 default n 218 help 219 Must deploy arm-2d library to your project and add include PATH for "arm_2d.h". 220 221 config LV_USE_GPU_STM32_DMA2D 222 bool "Enable STM32 DMA2D (aka Chrom Art) GPU." 223 config LV_GPU_DMA2D_CMSIS_INCLUDE 224 string "include path of CMSIS header of target processor" 225 depends on LV_USE_GPU_STM32_DMA2D 226 default "" 227 help 228 Must be defined to include path of CMSIS header of target processor 229 e.g. "stm32f769xx.h" or "stm32f429xx.h" 230 231 config LV_USE_GPU_SWM341_DMA2D 232 bool "Enable SWM341 DMA2D GPU." 233 config LV_GPU_SWM341_DMA2D_INCLUDE 234 string "include path of CMSIS header of target processor" 235 depends on LV_USE_GPU_SWM341_DMA2D 236 default "SWM341.h" 237 help 238 Must be defined to include path of CMSIS header of target processor 239 e.g. "SWM341.h" 240 241 config LV_USE_GPU_NXP_PXP 242 bool "Use NXP's PXP GPU iMX RTxxx platforms." 243 config LV_USE_GPU_NXP_PXP_AUTO_INIT 244 bool "Call lv_gpu_nxp_pxp_init() automatically or manually." 245 depends on LV_USE_GPU_NXP_PXP 246 help 247 1: Add default bare metal and FreeRTOS interrupt handling 248 routines for PXP (lv_gpu_nxp_pxp_osa.c) and call 249 lv_gpu_nxp_pxp_init() automatically during lv_init(). 250 Note that symbol SDK_OS_FREE_RTOS has to be defined in order 251 to use FreeRTOS OSA, otherwise bare-metal implementation is 252 selected. 253 0: lv_gpu_nxp_pxp_init() has to be called manually before 254 lv_init(). 255 256 config LV_USE_GPU_NXP_VG_LITE 257 bool "Use NXP's VG-Lite GPU iMX RTxxx platforms." 258 259 config LV_USE_GPU_SDL 260 bool "Use SDL renderer API" 261 default n 262 config LV_GPU_SDL_INCLUDE_PATH 263 string "include path of SDL header" 264 depends on LV_USE_GPU_SDL 265 default "SDL2/SDL.h" 266 config LV_GPU_SDL_LRU_SIZE 267 int "Maximum buffer size to allocate for rotation" 268 depends on LV_USE_GPU_SDL 269 default 8388608 270 help 271 Texture cache size, 8MB by default. 272 endmenu 273 274 menu "Logging" 275 config LV_USE_LOG 276 bool "Enable the log module" 277 278 choice 279 bool "Default log verbosity" if LV_USE_LOG 280 default LV_LOG_LEVEL_WARN 281 help 282 Specify how important log should be added. 283 284 config LV_LOG_LEVEL_TRACE 285 bool "A lot of logs to give detailed information" 286 config LV_LOG_LEVEL_INFO 287 bool "Log important events" 288 config LV_LOG_LEVEL_WARN 289 bool "Log if something unwanted happened but didn't cause a problem" 290 config LV_LOG_LEVEL_ERROR 291 bool "Only critical issues, when the system may fail" 292 config LV_LOG_LEVEL_USER 293 bool "Only logs added by the user" 294 config LV_LOG_LEVEL_NONE 295 bool "Do not log anything" 296 endchoice 297 298 config LV_LOG_LEVEL 299 int 300 default 0 if LV_LOG_LEVEL_TRACE 301 default 1 if LV_LOG_LEVEL_INFO 302 default 2 if LV_LOG_LEVEL_WARN 303 default 3 if LV_LOG_LEVEL_ERROR 304 default 4 if LV_LOG_LEVEL_USER 305 default 5 if LV_LOG_LEVEL_NONE 306 307 config LV_LOG_PRINTF 308 bool "Print the log with 'printf'" if LV_USE_LOG 309 help 310 Use printf for log output. 311 If not set the user needs to register a callback with `lv_log_register_print_cb`. 312 313 config LV_LOG_TRACE_MEM 314 bool "Enable/Disable LV_LOG_TRACE in mem module" 315 default y 316 depends on LV_USE_LOG 317 318 config LV_LOG_TRACE_TIMER 319 bool "Enable/Disable LV_LOG_TRACE in timer module" 320 default y 321 depends on LV_USE_LOG 322 323 config LV_LOG_TRACE_INDEV 324 bool "Enable/Disable LV_LOG_TRACE in indev module" 325 default y 326 depends on LV_USE_LOG 327 328 config LV_LOG_TRACE_DISP_REFR 329 bool "Enable/Disable LV_LOG_TRACE in disp refr module" 330 default y 331 depends on LV_USE_LOG 332 333 config LV_LOG_TRACE_EVENT 334 bool "Enable/Disable LV_LOG_TRACE in event module" 335 default y 336 depends on LV_USE_LOG 337 338 config LV_LOG_TRACE_OBJ_CREATE 339 bool "Enable/Disable LV_LOG_TRACE in obj create module" 340 default y 341 depends on LV_USE_LOG 342 343 config LV_LOG_TRACE_LAYOUT 344 bool "Enable/Disable LV_LOG_TRACE in layout module" 345 default y 346 depends on LV_USE_LOG 347 348 config LV_LOG_TRACE_ANIM 349 bool "Enable/Disable LV_LOG_TRACE in anim module" 350 default y 351 depends on LV_USE_LOG 352 endmenu 353 354 menu "Asserts" 355 config LV_USE_ASSERT_NULL 356 bool "Check if the parameter is NULL. (Very fast, recommended)" 357 default y if !LV_CONF_MINIMAL 358 359 config LV_USE_ASSERT_MALLOC 360 bool "Checks if the memory is successfully allocated or no. (Very fast, recommended)" 361 default y if !LV_CONF_MINIMAL 362 363 config LV_USE_ASSERT_STYLE 364 bool "Check if the styles are properly initialized. (Very fast, recommended)" 365 366 config LV_USE_ASSERT_MEM_INTEGRITY 367 bool "Check the integrity of `lv_mem` after critical operations. (Slow)" 368 369 config LV_USE_ASSERT_OBJ 370 bool "Check NULL, the object's type and existence (e.g. not deleted). (Slow)." 371 372 config LV_ASSERT_HANDLER_INCLUDE 373 string "Header to include for the custom assert function" 374 default "assert.h" 375 endmenu 376 377 menu "Others" 378 config LV_USE_PERF_MONITOR 379 bool "Show CPU usage and FPS count." 380 381 choice 382 prompt "Performance monitor position." 383 depends on LV_USE_PERF_MONITOR 384 default LV_PERF_MONITOR_ALIGN_BOTTOM_RIGHT 385 386 config LV_PERF_MONITOR_ALIGN_TOP_LEFT 387 bool "Top left" 388 config LV_PERF_MONITOR_ALIGN_TOP_MID 389 bool "Top middle" 390 config LV_PERF_MONITOR_ALIGN_TOP_RIGHT 391 bool "Top right" 392 config LV_PERF_MONITOR_ALIGN_BOTTOM_LEFT 393 bool "Bottom left" 394 config LV_PERF_MONITOR_ALIGN_BOTTOM_MID 395 bool "Bottom middle" 396 config LV_PERF_MONITOR_ALIGN_BOTTOM_RIGHT 397 bool "Bottom right" 398 config LV_PERF_MONITOR_ALIGN_LEFT_MID 399 bool "Left middle" 400 config LV_PERF_MONITOR_ALIGN_RIGHT_MID 401 bool "Right middle" 402 config LV_PERF_MONITOR_ALIGN_CENTER 403 bool "Center" 404 endchoice 405 406 config LV_USE_MEM_MONITOR 407 bool "Show the used memory and the memory fragmentation." 408 depends on !LV_MEM_CUSTOM 409 410 choice 411 prompt "Memory monitor position." 412 depends on LV_USE_MEM_MONITOR 413 default LV_MEM_MONITOR_ALIGN_BOTTOM_LEFT 414 415 config LV_MEM_MONITOR_ALIGN_TOP_LEFT 416 bool "Top left" 417 config LV_MEM_MONITOR_ALIGN_TOP_MID 418 bool "Top middle" 419 config LV_MEM_MONITOR_ALIGN_TOP_RIGHT 420 bool "Top right" 421 config LV_MEM_MONITOR_ALIGN_BOTTOM_LEFT 422 bool "Bottom left" 423 config LV_MEM_MONITOR_ALIGN_BOTTOM_MID 424 bool "Bottom middle" 425 config LV_MEM_MONITOR_ALIGN_BOTTOM_RIGHT 426 bool "Bottom right" 427 config LV_MEM_MONITOR_ALIGN_LEFT_MID 428 bool "Left middle" 429 config LV_MEM_MONITOR_ALIGN_RIGHT_MID 430 bool "Right middle" 431 config LV_MEM_MONITOR_ALIGN_CENTER 432 bool "Center" 433 endchoice 434 435 config LV_USE_REFR_DEBUG 436 bool "Draw random colored rectangles over the redrawn areas." 437 438 config LV_SPRINTF_CUSTOM 439 bool "Change the built-in (v)snprintf functions" 440 441 config LV_SPRINTF_INCLUDE 442 string "Header to include for the custom sprintf function" 443 depends on LV_SPRINTF_CUSTOM 444 default "stdio.h" 445 446 config LV_SPRINTF_USE_FLOAT 447 bool "Enable float in built-in (v)snprintf functions" 448 depends on !LV_SPRINTF_CUSTOM 449 450 config LV_USE_USER_DATA 451 bool "Add a 'user_data' to drivers and objects." 452 default y 453 454 config LV_ENABLE_GC 455 bool "Enable garbage collector" 456 457 config LV_GC_INCLUDE 458 string "Header to include for the garbage collector related things" 459 depends on LV_ENABLE_GC 460 default "gc.h" 461 endmenu 462 463 menu "Compiler settings" 464 config LV_BIG_ENDIAN_SYSTEM 465 bool "For big endian systems set to 1" 466 467 config LV_ATTRIBUTE_MEM_ALIGN_SIZE 468 int "Required alignment size for buffers" 469 default 1 470 471 config LV_ATTRIBUTE_FAST_MEM_USE_IRAM 472 bool "Set IRAM as LV_ATTRIBUTE_FAST_MEM" 473 help 474 Set this option to configure IRAM as LV_ATTRIBUTE_FAST_MEM 475 476 config LV_USE_LARGE_COORD 477 bool "Extend the default -32k..32k coordinate range to -4M..4M by using int32_t for coordinates instead of int16_t" 478 endmenu 479 endmenu 480 481 menu "Font usage" 482 menu "Enable built-in fonts" 483 config LV_FONT_MONTSERRAT_8 484 bool "Enable Montserrat 8" 485 config LV_FONT_MONTSERRAT_10 486 bool "Enable Montserrat 10" 487 config LV_FONT_MONTSERRAT_12 488 bool "Enable Montserrat 12" 489 config LV_FONT_MONTSERRAT_14 490 bool "Enable Montserrat 14" 491 default y if !LV_CONF_MINIMAL 492 config LV_FONT_MONTSERRAT_16 493 bool "Enable Montserrat 16" 494 config LV_FONT_MONTSERRAT_18 495 bool "Enable Montserrat 18" 496 config LV_FONT_MONTSERRAT_20 497 bool "Enable Montserrat 20" 498 config LV_FONT_MONTSERRAT_22 499 bool "Enable Montserrat 22" 500 config LV_FONT_MONTSERRAT_24 501 bool "Enable Montserrat 24" 502 config LV_FONT_MONTSERRAT_26 503 bool "Enable Montserrat 26" 504 config LV_FONT_MONTSERRAT_28 505 bool "Enable Montserrat 28" 506 config LV_FONT_MONTSERRAT_30 507 bool "Enable Montserrat 30" 508 config LV_FONT_MONTSERRAT_32 509 bool "Enable Montserrat 32" 510 config LV_FONT_MONTSERRAT_34 511 bool "Enable Montserrat 34" 512 config LV_FONT_MONTSERRAT_36 513 bool "Enable Montserrat 36" 514 config LV_FONT_MONTSERRAT_38 515 bool "Enable Montserrat 38" 516 config LV_FONT_MONTSERRAT_40 517 bool "Enable Montserrat 40" 518 config LV_FONT_MONTSERRAT_42 519 bool "Enable Montserrat 42" 520 config LV_FONT_MONTSERRAT_44 521 bool "Enable Montserrat 44" 522 config LV_FONT_MONTSERRAT_46 523 bool "Enable Montserrat 46" 524 config LV_FONT_MONTSERRAT_48 525 bool "Enable Montserrat 48" 526 527 config LV_FONT_MONTSERRAT_12_SUBPX 528 bool "Enable Montserrat 12 sub-pixel" 529 config LV_FONT_MONTSERRAT_28_COMPRESSED 530 bool "Enable Montserrat 28 compressed" 531 config LV_FONT_DEJAVU_16_PERSIAN_HEBREW 532 bool "Enable Dejavu 16 Persian, Hebrew, Arabic letters" 533 config LV_FONT_SIMSUN_16_CJK 534 bool "Enable Simsun 16 CJK" 535 536 config LV_FONT_UNSCII_8 537 bool "Enable UNSCII 8 (Perfect monospace font)" 538 default y if LV_CONF_MINIMAL 539 config LV_FONT_UNSCII_16 540 bool "Enable UNSCII 16 (Perfect monospace font)" 541 542 config LV_FONT_CUSTOM 543 bool "Enable the custom font" 544 config LV_FONT_CUSTOM_DECLARE 545 string "Header to include for the custom font" 546 depends on LV_FONT_CUSTOM 547 endmenu 548 549 choice LV_FONT_DEFAULT 550 prompt "Select theme default title font" 551 default LV_FONT_DEFAULT_MONTSERRAT_14 if !LV_CONF_MINIMAL 552 default LV_FONT_DEFAULT_UNSCII_8 if LV_CONF_MINIMAL 553 help 554 Select theme default title font 555 556 config LV_FONT_DEFAULT_MONTSERRAT_8 557 bool "Montserrat 8" 558 select LV_FONT_MONTSERRAT_8 559 config LV_FONT_DEFAULT_MONTSERRAT_12 560 bool "Montserrat 12" 561 select LV_FONT_MONTSERRAT_12 562 config LV_FONT_DEFAULT_MONTSERRAT_14 563 bool "Montserrat 14" 564 select LV_FONT_MONTSERRAT_14 565 config LV_FONT_DEFAULT_MONTSERRAT_16 566 bool "Montserrat 16" 567 select LV_FONT_MONTSERRAT_16 568 config LV_FONT_DEFAULT_MONTSERRAT_18 569 bool "Montserrat 18" 570 select LV_FONT_MONTSERRAT_18 571 config LV_FONT_DEFAULT_MONTSERRAT_20 572 bool "Montserrat 20" 573 select LV_FONT_MONTSERRAT_20 574 config LV_FONT_DEFAULT_MONTSERRAT_22 575 bool "Montserrat 22" 576 select LV_FONT_MONTSERRAT_22 577 config LV_FONT_DEFAULT_MONTSERRAT_24 578 bool "Montserrat 24" 579 select LV_FONT_MONTSERRAT_24 580 config LV_FONT_DEFAULT_MONTSERRAT_26 581 bool "Montserrat 26" 582 select LV_FONT_MONTSERRAT_26 583 config LV_FONT_DEFAULT_MONTSERRAT_28 584 bool "Montserrat 28" 585 select LV_FONT_MONTSERRAT_28 586 config LV_FONT_DEFAULT_MONTSERRAT_30 587 bool "Montserrat 30" 588 select LV_FONT_MONTSERRAT_30 589 config LV_FONT_DEFAULT_MONTSERRAT_32 590 bool "Montserrat 32" 591 select LV_FONT_MONTSERRAT_32 592 config LV_FONT_DEFAULT_MONTSERRAT_34 593 bool "Montserrat 34" 594 select LV_FONT_MONTSERRAT_34 595 config LV_FONT_DEFAULT_MONTSERRAT_36 596 bool "Montserrat 36" 597 select LV_FONT_MONTSERRAT_36 598 config LV_FONT_DEFAULT_MONTSERRAT_38 599 bool "Montserrat 38" 600 select LV_FONT_MONTSERRAT_38 601 config LV_FONT_DEFAULT_MONTSERRAT_40 602 bool "Montserrat 40" 603 select LV_FONT_MONTSERRAT_40 604 config LV_FONT_DEFAULT_MONTSERRAT_42 605 bool "Montserrat 42" 606 select LV_FONT_MONTSERRAT_42 607 config LV_FONT_DEFAULT_MONTSERRAT_44 608 bool "Montserrat 44" 609 select LV_FONT_MONTSERRAT_44 610 config LV_FONT_DEFAULT_MONTSERRAT_46 611 bool "Montserrat 46" 612 select LV_FONT_MONTSERRAT_46 613 config LV_FONT_DEFAULT_MONTSERRAT_48 614 bool "Montserrat 48" 615 select LV_FONT_MONTSERRAT_48 616 config LV_FONT_DEFAULT_MONTSERRAT_12_SUBPX 617 bool "Montserrat 12 sub-pixel" 618 select LV_FONT_MONTSERRAT_12_SUBPX 619 config LV_FONT_DEFAULT_MONTSERRAT_28_COMPRESSED 620 bool "Montserrat 28 compressed" 621 select LV_FONT_MONTSERRAT_28_COMPRESSED 622 config LV_FONT_DEFAULT_DEJAVU_16_PERSIAN_HEBREW 623 bool "Dejavu 16 Persian, Hebrew, Arabic letters" 624 select LV_FONT_DEJAVU_16_PERSIAN_HEBREW 625 config LV_FONT_DEFAULT_SIMSUN_16_CJK 626 bool "Simsun 16 CJK" 627 select LV_FONT_SIMSUN_16_CJK 628 config LV_FONT_DEFAULT_UNSCII_8 629 bool "UNSCII 8 (Perfect monospace font)" 630 select LV_FONT_UNSCII_8 631 config LV_FONT_DEFAULT_UNSCII_16 632 bool "UNSCII 16 (Perfect monospace font)" 633 select LV_FONT_UNSCII_16 634 endchoice 635 636 config LV_FONT_FMT_TXT_LARGE 637 bool "Enable it if you have fonts with a lot of characters." 638 help 639 The limit depends on the font size, font face and bpp 640 but with > 10,000 characters if you see issues probably you 641 need to enable it. 642 643 config LV_USE_FONT_COMPRESSED 644 bool "Sets support for compressed fonts." 645 646 config LV_USE_FONT_SUBPX 647 bool "Enable subpixel rendering." 648 649 config LV_FONT_SUBPX_BGR 650 bool "Use BGR instead RGB for sub-pixel rendering." 651 depends on LV_USE_FONT_SUBPX 652 help 653 Set the pixel order of the display. 654 Important only if "subpx fonts" are used. 655 With "normal" font it doesn't matter. 656 657 config LV_USE_FONT_PLACEHOLDER 658 bool "Enable drawing placeholders when glyph dsc is not found." 659 default y 660 endmenu 661 662 menu "Text Settings" 663 choice LV_TXT_ENC 664 prompt "Select a character encoding for strings" 665 help 666 Select a character encoding for strings. Your IDE or editor should have the same character encoding. 667 default LV_TXT_ENC_UTF8 if !LV_CONF_MINIMAL 668 default LV_TXT_ENC_ASCII if LV_CONF_MINIMAL 669 670 config LV_TXT_ENC_UTF8 671 bool "UTF8" 672 config LV_TXT_ENC_ASCII 673 bool "ASCII" 674 endchoice 675 676 config LV_TXT_BREAK_CHARS 677 string "Can break (wrap) texts on these chars" 678 default " ,.;:-_" 679 680 config LV_TXT_LINE_BREAK_LONG_LEN 681 int "Line break long length" 682 default 0 683 help 684 If a word is at least this long, will break wherever 'prettiest'. 685 To disable, set to a value <= 0. 686 687 config LV_TXT_LINE_BREAK_LONG_PRE_MIN_LEN 688 int "Min num chars before break" 689 default 3 690 depends on LV_TXT_LINE_BREAK_LONG_LEN > 0 691 help 692 Minimum number of characters in a long word to put on a line before a break. 693 694 config LV_TXT_LINE_BREAK_LONG_POST_MIN_LEN 695 int "Min num chars after break" 696 default 3 697 depends on LV_TXT_LINE_BREAK_LONG_LEN > 0 698 help 699 Minimum number of characters in a long word to put on a line after a break. 700 701 config LV_TXT_COLOR_CMD 702 string "The control character to use for signalling text recoloring" 703 default "#" 704 705 config LV_USE_BIDI 706 bool "Support bidirectional texts" 707 help 708 Allows mixing Left-to-Right and Right-to-Left texts. 709 The direction will be processed according to the Unicode Bidirectional Algorithm: 710 https://www.w3.org/International/articles/inline-bidi-markup/uba-basics 711 712 choice 713 prompt "Set the default BIDI direction" 714 default LV_BIDI_DIR_AUTO 715 depends on LV_USE_BIDI 716 717 config LV_BIDI_DIR_LTR 718 bool "Left-to-Right" 719 config LV_BIDI_DIR_RTL 720 bool "Right-to-Left" 721 config LV_BIDI_DIR_AUTO 722 bool "Detect texts base direction" 723 endchoice 724 725 config LV_USE_ARABIC_PERSIAN_CHARS 726 bool "Enable Arabic/Persian processing" 727 help 728 In these languages characters should be replaced with 729 an other form based on their position in the text. 730 endmenu 731 732 menu "Widget usage" 733 config LV_USE_ARC 734 bool "Arc." 735 default y if !LV_CONF_MINIMAL 736 config LV_USE_BAR 737 bool "Bar." 738 default y if !LV_CONF_MINIMAL 739 config LV_USE_BTN 740 bool "Button." 741 default y if !LV_CONF_MINIMAL 742 config LV_USE_BTNMATRIX 743 bool "Button matrix." 744 default y if !LV_CONF_MINIMAL 745 config LV_USE_CANVAS 746 bool "Canvas. Dependencies: lv_img." 747 select LV_USE_IMG 748 default y if !LV_CONF_MINIMAL 749 config LV_USE_CHECKBOX 750 bool "Check Box" 751 default y if !LV_CONF_MINIMAL 752 config LV_USE_DROPDOWN 753 bool "Drop down list. Requires: lv_label." 754 select LV_USE_LABEL 755 default y if !LV_CONF_MINIMAL 756 config LV_USE_IMG 757 bool "Image. Requires: lv_label." 758 select LV_USE_LABEL 759 default y if !LV_CONF_MINIMAL 760 config LV_USE_LABEL 761 bool "Label." 762 default y if !LV_CONF_MINIMAL 763 config LV_LABEL_TEXT_SELECTION 764 bool "Enable selecting text of the label." 765 depends on LV_USE_LABEL 766 default y 767 config LV_LABEL_LONG_TXT_HINT 768 bool "Store extra some info in labels (12 bytes) to speed up drawing of very long texts." 769 depends on LV_USE_LABEL 770 default y 771 config LV_USE_LINE 772 bool "Line." 773 default y if !LV_CONF_MINIMAL 774 config LV_USE_ROLLER 775 bool "Roller. Requires: lv_label." 776 select LV_USE_LABEL 777 default y if !LV_CONF_MINIMAL 778 config LV_ROLLER_INF_PAGES 779 int "Number of extra 'pages' when the controller is infinite." 780 default 7 781 depends on LV_USE_ROLLER 782 config LV_USE_SLIDER 783 bool "Slider. Requires: lv_bar." 784 select LV_USE_BAR 785 default y if !LV_CONF_MINIMAL 786 config LV_USE_SWITCH 787 bool "Switch." 788 default y if !LV_CONF_MINIMAL 789 config LV_USE_TEXTAREA 790 bool "Text area. Requires: lv_label." 791 select LV_USE_LABEL 792 default y if !LV_CONF_MINIMAL 793 config LV_TEXTAREA_DEF_PWD_SHOW_TIME 794 int "Text area def. pwd show time [ms]." 795 default 1500 796 depends on LV_USE_TEXTAREA 797 config LV_USE_TABLE 798 bool "Table." 799 default y if !LV_CONF_MINIMAL 800 endmenu 801 802 menu "Extra Widgets" 803 config LV_USE_ANIMIMG 804 bool "Anim image." 805 default y if !LV_CONF_MINIMAL 806 config LV_USE_CALENDAR 807 bool "Calendar." 808 default y if !LV_CONF_MINIMAL 809 config LV_CALENDAR_WEEK_STARTS_MONDAY 810 bool "Calendar week starts monday." 811 depends on LV_USE_CALENDAR 812 config LV_USE_CALENDAR_HEADER_ARROW 813 bool "Use calendar header arrow" 814 depends on LV_USE_CALENDAR 815 default y 816 config LV_USE_CALENDAR_HEADER_DROPDOWN 817 bool "Use calendar header dropdown" 818 depends on LV_USE_CALENDAR 819 default y 820 config LV_USE_CHART 821 bool "Chart." 822 default y if !LV_CONF_MINIMAL 823 config LV_USE_COLORWHEEL 824 bool "Colorwheel." 825 default y if !LV_CONF_MINIMAL 826 config LV_USE_IMGBTN 827 bool "Imgbtn." 828 default y if !LV_CONF_MINIMAL 829 config LV_USE_KEYBOARD 830 bool "Keyboard." 831 default y if !LV_CONF_MINIMAL 832 config LV_USE_LED 833 bool "LED." 834 default y if !LV_CONF_MINIMAL 835 config LV_USE_LIST 836 bool "List." 837 default y if !LV_CONF_MINIMAL 838 config LV_USE_MENU 839 bool "Menu." 840 default y if !LV_CONF_MINIMAL 841 config LV_USE_METER 842 bool "Meter." 843 default y if !LV_CONF_MINIMAL 844 config LV_USE_MSGBOX 845 bool "Msgbox." 846 default y if !LV_CONF_MINIMAL 847 config LV_USE_SPAN 848 bool "span" 849 default y if !LV_CONF_MINIMAL 850 config LV_SPAN_SNIPPET_STACK_SIZE 851 int "Maximum number of span descriptor" 852 default 64 853 depends on LV_USE_SPAN 854 config LV_USE_SPINBOX 855 bool "Spinbox." 856 default y if !LV_CONF_MINIMAL 857 config LV_USE_SPINNER 858 bool "Spinner." 859 default y if !LV_CONF_MINIMAL 860 config LV_USE_TABVIEW 861 bool "Tabview." 862 default y if !LV_CONF_MINIMAL 863 config LV_USE_TILEVIEW 864 bool "Tileview" 865 default y if !LV_CONF_MINIMAL 866 config LV_USE_WIN 867 bool "Win" 868 default y if !LV_CONF_MINIMAL 869 endmenu 870 871 menu "Themes" 872 config LV_USE_THEME_DEFAULT 873 bool "A simple, impressive and very complete theme" 874 default y if !LV_COLOR_DEPTH_1 && !LV_CONF_MINIMAL 875 config LV_THEME_DEFAULT_DARK 876 bool "Yes to set dark mode, No to set light mode" 877 depends on LV_USE_THEME_DEFAULT 878 config LV_THEME_DEFAULT_GROW 879 bool "Enable grow on press" 880 default y 881 depends on LV_USE_THEME_DEFAULT 882 config LV_THEME_DEFAULT_TRANSITION_TIME 883 int "Default transition time in [ms]" 884 default 80 885 depends on LV_USE_THEME_DEFAULT 886 config LV_USE_THEME_BASIC 887 bool "A very simple theme that is a good starting point for a custom theme" 888 default y if !LV_COLOR_DEPTH_1 && !LV_CONF_MINIMAL 889 config LV_USE_THEME_MONO 890 bool "Monochrome theme, suitable for some E-paper & dot matrix displays" 891 default y if LV_COLOR_DEPTH_1 && !LV_CONF_MINIMAL 892 endmenu 893 894 menu "Layouts" 895 config LV_USE_FLEX 896 bool "A layout similar to Flexbox in CSS." 897 default y if !LV_CONF_MINIMAL 898 config LV_USE_GRID 899 bool "A layout similar to Grid in CSS." 900 default y if !LV_CONF_MINIMAL 901 endmenu 902 903 menu "3rd Party Libraries" 904 config LV_USE_FS_STDIO 905 bool "File system on top of stdio API" 906 config LV_FS_STDIO_LETTER 907 int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65 )" 908 default 0 909 depends on LV_USE_FS_STDIO 910 config LV_FS_STDIO_PATH 911 string "Set the working directory" 912 depends on LV_USE_FS_STDIO 913 config LV_FS_STDIO_CACHE_SIZE 914 int ">0 to cache this number of bytes in lv_fs_read()" 915 default 0 916 depends on LV_USE_FS_STDIO 917 918 config LV_USE_FS_POSIX 919 bool "File system on top of posix API" 920 config LV_FS_POSIX_LETTER 921 int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)" 922 default 0 923 depends on LV_USE_FS_POSIX 924 config LV_FS_POSIX_PATH 925 string "Set the working directory" 926 depends on LV_USE_FS_POSIX 927 config LV_FS_POSIX_CACHE_SIZE 928 int ">0 to cache this number of bytes in lv_fs_read()" 929 default 0 930 depends on LV_USE_FS_POSIX 931 932 config LV_USE_FS_WIN32 933 bool "File system on top of Win32 API" 934 config LV_FS_WIN32_LETTER 935 int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)" 936 default 0 937 depends on LV_USE_FS_WIN32 938 config LV_FS_WIN32_PATH 939 string "Set the working directory" 940 depends on LV_USE_FS_WIN32 941 config LV_FS_WIN32_CACHE_SIZE 942 int ">0 to cache this number of bytes in lv_fs_read()" 943 default 0 944 depends on LV_USE_FS_WIN32 945 946 config LV_USE_FS_FATFS 947 bool "File system on top of FatFS" 948 config LV_FS_FATFS_LETTER 949 int "Set an upper cased letter on which the drive will accessible (e.g. 'A' i.e. 65)" 950 default 0 951 depends on LV_USE_FS_FATFS 952 config LV_FS_FATFS_CACHE_SIZE 953 int ">0 to cache this number of bytes in lv_fs_read()" 954 default 0 955 depends on LV_USE_FS_FATFS 956 957 config LV_USE_PNG 958 bool "PNG decoder library" 959 960 config LV_USE_BMP 961 bool "BMP decoder library" 962 963 config LV_USE_SJPG 964 bool "JPG + split JPG decoder library" 965 966 config LV_USE_GIF 967 bool "GIF decoder library" 968 969 config LV_USE_QRCODE 970 bool "QR code library" 971 972 config LV_USE_FREETYPE 973 bool "FreeType library" 974 if LV_USE_FREETYPE 975 menu "FreeType cache config" 976 config LV_FREETYPE_CACHE_SIZE 977 int "Memory used by FreeType to cache characters [bytes] (-1: no caching)" 978 default 16384 979 if LV_FREETYPE_CACHE_SIZE >= 0 980 config LV_FREETYPE_SBIT_CACHE 981 bool "enable sbit cache" 982 default n 983 config LV_FREETYPE_CACHE_FT_FACES 984 int "The maximum number of FT_Face(0: use defaults)" 985 default 0 986 config LV_FREETYPE_CACHE_FT_SIZES 987 int "The maximum number of FT_Size(0: use defaults)" 988 default 0 989 endif 990 endmenu 991 endif 992 993 config LV_USE_RLOTTIE 994 bool "Lottie library" 995 996 config LV_USE_FFMPEG 997 bool "FFmpeg library" 998 config LV_FFMPEG_DUMP_FORMAT 999 bool "Dump format" 1000 depends on LV_USE_FFMPEG 1001 default n 1002 endmenu 1003 1004 menu "Others" 1005 config LV_USE_SNAPSHOT 1006 bool "Enable API to take snapshot" 1007 default y if !LV_CONF_MINIMAL 1008 1009 config LV_USE_MONKEY 1010 bool "Enable Monkey test" 1011 default n 1012 1013 config LV_USE_GRIDNAV 1014 bool "Enable grid navigation" 1015 default n 1016 1017 config LV_USE_FRAGMENT 1018 bool "Enable lv_obj fragment" 1019 default n 1020 1021 config LV_USE_IMGFONT 1022 bool "draw img in label or span obj" 1023 default n 1024 1025 config LV_USE_MSG 1026 bool "Enable a published subscriber based messaging system" 1027 default n 1028 1029 config LV_USE_IME_PINYIN 1030 bool "Enable Pinyin input method" 1031 default n 1032 config LV_IME_PINYIN_USE_K9_MODE 1033 bool "Enable Pinyin input method 9 key input mode" 1034 depends on LV_USE_IME_PINYIN 1035 default n 1036 config LV_IME_PINYIN_K9_CAND_TEXT_NUM 1037 int "Maximum number of candidate panels for 9-key input mode" 1038 depends on LV_IME_PINYIN_USE_K9_MODE 1039 default 3 1040 config LV_IME_PINYIN_USE_DEFAULT_DICT 1041 bool "Use built-in Thesaurus" 1042 depends on LV_USE_IME_PINYIN 1043 default y 1044 help 1045 If you do not use the default thesaurus, be sure to use lv_ime_pinyin after setting the thesauruss 1046 config LV_IME_PINYIN_CAND_TEXT_NUM 1047 int "Maximum number of candidate panels" 1048 depends on LV_USE_IME_PINYIN 1049 default 6 1050 help 1051 Set the maximum number of candidate panels that can be displayed. 1052 This needs to be adjusted according to the size of the screen. 1053 endmenu 1054 1055 menu "Examples" 1056 config LV_BUILD_EXAMPLES 1057 bool "Enable the examples to be built" 1058 default y if !LV_CONF_MINIMAL 1059 endmenu 1060 1061 menu "Demos" 1062 config LV_USE_DEMO_WIDGETS 1063 bool "Show some widget" 1064 default n 1065 config LV_DEMO_WIDGETS_SLIDESHOW 1066 bool "Enable slide show" 1067 depends on LV_USE_DEMO_WIDGETS 1068 default n 1069 1070 config LV_USE_DEMO_KEYPAD_AND_ENCODER 1071 bool "Demonstrate the usage of encoder and keyboard" 1072 default n 1073 1074 config LV_USE_DEMO_BENCHMARK 1075 bool "Benchmark your system" 1076 default n 1077 config LV_DEMO_BENCHMARK_RGB565A8 1078 bool "Use RGB565A8 images with 16 bit color depth instead of ARGB8565" 1079 depends on LV_USE_DEMO_BENCHMARK 1080 default n 1081 1082 config LV_USE_DEMO_STRESS 1083 bool "Stress test for LVGL" 1084 default n 1085 1086 config LV_USE_DEMO_MUSIC 1087 bool "Music player demo" 1088 default n 1089 config LV_DEMO_MUSIC_SQUARE 1090 bool "Enable Square" 1091 depends on LV_USE_DEMO_MUSIC 1092 default n 1093 config LV_DEMO_MUSIC_LANDSCAPE 1094 bool "Enable Landscape" 1095 depends on LV_USE_DEMO_MUSIC 1096 default n 1097 config LV_DEMO_MUSIC_ROUND 1098 bool "Enable Round" 1099 depends on LV_USE_DEMO_MUSIC 1100 default n 1101 config LV_DEMO_MUSIC_LARGE 1102 bool "Enable Large" 1103 depends on LV_USE_DEMO_MUSIC 1104 default n 1105 config LV_DEMO_MUSIC_AUTO_PLAY 1106 bool "Enable Auto play" 1107 depends on LV_USE_DEMO_MUSIC 1108 default n 1109 endmenu 1110 1111endmenu 1112