1.. zephyr:code-sample:: lvgl-demos 2 :name: LVGL demos 3 :relevant-api: display_interface 4 5 Run LVGL built-in demos. 6 7Overview 8******** 9 10A sample showcasing upstream LVGL demos. 11 12* Music 13 The music player demo shows what kind of modern, smartphone-like user interfaces can be created on LVGL. 14* Benchmark 15 The benchmark demo tests the performance in various cases. For example rectangle, border, shadow, text, image blending, image transformation, blending modes, etc. 16* Stress 17 A stress test for LVGL. It contains a lot of object creation, deletion, animations, styles usage, and so on. It can be used if there is any memory corruption during heavy usage or any memory leaks. 18* Widgets 19 Shows how the widgets look like out of the box using the built-in material theme. 20* Keypad and Encoder 21 Shows how to control widget with a keypad and hardware encoder. 22* Render 23 Collection of multiple rendering tests. 24 25More details can be found in `LVGL demos Readme`_. 26 27Requirements 28************ 29 30* A board with display, ideally with 480x272 resolution or higher. 31* A pointer input device: touchpad, mouse, or touch screen capable display, compatible with :dtcompatible:`zephyr,lvgl-pointer-input`. 32 33Note that other input devices types are not demonstrated in these demos, namely keyboards, keypads (:dtcompatible:`zephyr,lvgl-keypad-input`), rotary encoders (:dtcompatible:`zephyr,lvgl-encoder-input`) and hardware buttons (:dtcompatible:`zephyr,lvgl-button-input`). 34 35Building and Running 36******************** 37 38Example building for :zephyr:board:`mimxrt1060_evk`: 39 40.. zephyr-app-commands:: 41 :zephyr-app: samples/modules/lvgl/demos 42 :board: mimxrt1060_evk 43 :goals: build flash 44 45These demos can be built for simulated display environment as follows: 46 47.. zephyr-app-commands:: 48 :zephyr-app: samples/modules/lvgl/demos 49 :host-os: unix 50 :board: native_sim 51 :gen-args: -DCONFIG_LV_Z_DEMO_MUSIC=y 52 :goals: run 53 :compact: 54 55.. zephyr-app-commands:: 56 :zephyr-app: samples/modules/lvgl/demos 57 :host-os: unix 58 :board: native_sim 59 :gen-args: -DCONFIG_LV_Z_DEMO_BENCHMARK=y 60 :goals: run 61 :compact: 62 63.. zephyr-app-commands:: 64 :zephyr-app: samples/modules/lvgl/demos 65 :host-os: unix 66 :board: native_sim 67 :gen-args: -DCONFIG_LV_Z_DEMO_STRESS=y 68 :goals: run 69 :compact: 70 71.. zephyr-app-commands:: 72 :zephyr-app: samples/modules/lvgl/demos 73 :host-os: unix 74 :board: native_sim 75 :gen-args: -DCONFIG_LV_Z_DEMO_WIDGETS=y 76 :goals: run 77 :compact: 78 79.. zephyr-app-commands:: 80 :zephyr-app: samples/modules/lvgl/demos 81 :host-os: unix 82 :board: native_sim 83 :gen-args: -DCONFIG_LV_Z_DEMO_KEYPAD_AND_ENCODER=y 84 :goals: run 85 :compact: 86 87.. zephyr-app-commands:: 88 :zephyr-app: samples/modules/lvgl/demos 89 :host-os: unix 90 :board: native_sim 91 :gen-args: -DCONFIG_LV_Z_DEMO_RENDER=y 92 :goals: run 93 :compact: 94 95Alternatively, if building from a 64-bit host machine, the previous target 96board argument may also be replaced by ``native_sim/native/64``. 97 98References 99********** 100 101.. target-notes:: 102 103.. _LVGL demos Readme: https://github.com/zephyrproject-rtos/lvgl/blob/zephyr/demos/README.md 104