gitextract_sdp86rks/ ├── .gitignore ├── Doc/ │ ├── JBC245分度表.xlsx │ ├── V2.0功率板修改/ │ │ └── 功率板V2.0硬件版本修改方法.md │ ├── V2.5.x组装教程/ │ │ ├── SnailHeater使用说明书.md │ │ ├── SnailHeater硬件V2.5.x版本组装教程.md │ │ └── 一车升级二车教程.md │ ├── V2.6.x组装教程/ │ │ └── SnailHeater硬件V2.6.x版本组装教程.md │ ├── other.md │ ├── 新版优化记录.md │ ├── 组装教程/ │ │ └── SnailHeater接线教程.md │ ├── 蜗牛台使用说明书/ │ │ └── 蜗牛台使用说明书.md │ ├── 蜗牛台全系接线引脚定义/ │ │ └── 蜗牛台全系接线引脚定义.md │ └── 重量统计.md ├── Images/ │ ├── .gitignore │ ├── ico/ │ │ ├── img_type_text_C245_215x81.psd │ │ ├── img_wake_type_None.psd │ │ ├── img_wake_type_change.psd │ │ └── 烙铁芯.psd │ └── 面板图标元素/ │ ├── SnailHeater.psd │ ├── SnailHeater2字体roboto medium italic.psd │ ├── SnailHeater字体roboto medium italic.psd │ └── snailHeater字样.dxf ├── LICENSE ├── Model/ │ ├── SnailHeater电源支架 v6.stl │ └── 屏幕辅助贴合固定板 v1.stl ├── Multisim/ │ ├── mos分压.ms14 │ ├── 拉高电阻干扰处理.ms14 │ ├── 拉高电阻干扰处理.ms14 (Security copy) │ ├── 滤波.ms14 │ ├── 烙铁mos管驱动.ms14 │ └── 烙铁电压切换.ms14 ├── README.md ├── Software/ │ └── firmware_demo/ │ ├── .gitignore │ ├── include/ │ │ └── README │ ├── lib/ │ │ ├── ESP32Time/ │ │ │ ├── ESP32Time.cpp │ │ │ ├── ESP32Time.h │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── examples/ │ │ │ │ └── esp32_time/ │ │ │ │ └── esp32_time.ino │ │ │ ├── keywords.txt │ │ │ ├── library.json │ │ │ └── library.properties │ │ ├── FastLED/ │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── PORTING.md │ │ │ ├── README.md │ │ │ ├── ci/ │ │ │ │ ├── ci-compile │ │ │ │ └── ci-flags.py │ │ │ ├── code_of_conduct.md │ │ │ ├── component.mk │ │ │ ├── docs/ │ │ │ │ ├── Doxyfile │ │ │ │ └── mainpage.dox │ │ │ ├── examples/ │ │ │ │ ├── AnalogOutput/ │ │ │ │ │ └── AnalogOutput.ino │ │ │ │ ├── Blink/ │ │ │ │ │ └── Blink.ino │ │ │ │ ├── ColorPalette/ │ │ │ │ │ └── ColorPalette.ino │ │ │ │ ├── ColorTemperature/ │ │ │ │ │ └── ColorTemperature.ino │ │ │ │ ├── Cylon/ │ │ │ │ │ └── Cylon.ino │ │ │ │ ├── DemoReel100/ │ │ │ │ │ └── DemoReel100.ino │ │ │ │ ├── Fire2012/ │ │ │ │ │ └── Fire2012.ino │ │ │ │ ├── Fire2012WithPalette/ │ │ │ │ │ └── Fire2012WithPalette.ino │ │ │ │ ├── FirstLight/ │ │ │ │ │ └── FirstLight.ino │ │ │ │ ├── Multiple/ │ │ │ │ │ ├── ArrayOfLedArrays/ │ │ │ │ │ │ └── ArrayOfLedArrays.ino │ │ │ │ │ ├── MirroringSample/ │ │ │ │ │ │ └── MirroringSample.ino │ │ │ │ │ ├── MultiArrays/ │ │ │ │ │ │ └── MultiArrays.ino │ │ │ │ │ ├── MultipleStripsInOneArray/ │ │ │ │ │ │ └── MultipleStripsInOneArray.ino │ │ │ │ │ ├── OctoWS2811Demo/ │ │ │ │ │ │ └── OctoWS2811Demo.ino │ │ │ │ │ └── ParallelOutputDemo/ │ │ │ │ │ └── ParallelOutputDemo.ino │ │ │ │ ├── Noise/ │ │ │ │ │ └── Noise.ino │ │ │ │ ├── NoisePlayground/ │ │ │ │ │ └── NoisePlayground.ino │ │ │ │ ├── NoisePlusPalette/ │ │ │ │ │ └── NoisePlusPalette.ino │ │ │ │ ├── Pacifica/ │ │ │ │ │ └── Pacifica.ino │ │ │ │ ├── Pintest/ │ │ │ │ │ └── Pintest.ino │ │ │ │ ├── Ports/ │ │ │ │ │ └── PJRCSpectrumAnalyzer/ │ │ │ │ │ └── PJRCSpectrumAnalyzer.ino │ │ │ │ ├── Pride2015/ │ │ │ │ │ └── Pride2015.ino │ │ │ │ ├── RGBCalibrate/ │ │ │ │ │ └── RGBCalibrate.ino │ │ │ │ ├── RGBSetDemo/ │ │ │ │ │ └── RGBSetDemo.ino │ │ │ │ ├── SmartMatrix/ │ │ │ │ │ └── SmartMatrix.ino │ │ │ │ ├── TwinkleFox/ │ │ │ │ │ └── TwinkleFox.ino │ │ │ │ └── XYMatrix/ │ │ │ │ └── XYMatrix.ino │ │ │ ├── extras/ │ │ │ │ ├── AppleII.s65 │ │ │ │ ├── FastLED6502.s65 │ │ │ │ └── RainbowDemo.s65 │ │ │ ├── keywords.txt │ │ │ ├── library.json │ │ │ ├── library.properties │ │ │ ├── release_notes.md │ │ │ ├── src/ │ │ │ │ ├── FastLED.cpp │ │ │ │ ├── FastLED.h │ │ │ │ ├── bitswap.cpp │ │ │ │ ├── bitswap.h │ │ │ │ ├── chipsets.h │ │ │ │ ├── color.h │ │ │ │ ├── colorpalettes.cpp │ │ │ │ ├── colorpalettes.h │ │ │ │ ├── colorutils.cpp │ │ │ │ ├── colorutils.h │ │ │ │ ├── controller.h │ │ │ │ ├── cpp_compat.h │ │ │ │ ├── dmx.h │ │ │ │ ├── fastled_config.h │ │ │ │ ├── fastled_delay.h │ │ │ │ ├── fastled_progmem.h │ │ │ │ ├── fastpin.h │ │ │ │ ├── fastspi.h │ │ │ │ ├── fastspi_bitbang.h │ │ │ │ ├── fastspi_dma.h │ │ │ │ ├── fastspi_nop.h │ │ │ │ ├── fastspi_ref.h │ │ │ │ ├── fastspi_types.h │ │ │ │ ├── hsv2rgb.cpp │ │ │ │ ├── hsv2rgb.h │ │ │ │ ├── led_sysdefs.h │ │ │ │ ├── lib8tion/ │ │ │ │ │ ├── math8.h │ │ │ │ │ ├── random8.h │ │ │ │ │ ├── scale8.h │ │ │ │ │ └── trig8.h │ │ │ │ ├── lib8tion.cpp │ │ │ │ ├── lib8tion.h │ │ │ │ ├── noise.cpp │ │ │ │ ├── noise.h │ │ │ │ ├── pixelset.h │ │ │ │ ├── pixeltypes.h │ │ │ │ ├── platforms/ │ │ │ │ │ ├── apollo3/ │ │ │ │ │ │ ├── clockless_apollo3.h │ │ │ │ │ │ ├── fastled_apollo3.h │ │ │ │ │ │ ├── fastpin_apollo3.h │ │ │ │ │ │ ├── fastspi_apollo3.h │ │ │ │ │ │ └── led_sysdefs_apollo3.h │ │ │ │ │ ├── arm/ │ │ │ │ │ │ ├── common/ │ │ │ │ │ │ │ └── m0clockless.h │ │ │ │ │ │ ├── d21/ │ │ │ │ │ │ │ ├── clockless_arm_d21.h │ │ │ │ │ │ │ ├── fastled_arm_d21.h │ │ │ │ │ │ │ ├── fastpin_arm_d21.h │ │ │ │ │ │ │ └── led_sysdefs_arm_d21.h │ │ │ │ │ │ ├── d51/ │ │ │ │ │ │ │ ├── README.txt │ │ │ │ │ │ │ ├── clockless_arm_d51.h │ │ │ │ │ │ │ ├── fastled_arm_d51.h │ │ │ │ │ │ │ ├── fastpin_arm_d51.h │ │ │ │ │ │ │ └── led_sysdefs_arm_d51.h │ │ │ │ │ │ ├── k20/ │ │ │ │ │ │ │ ├── clockless_arm_k20.h │ │ │ │ │ │ │ ├── clockless_block_arm_k20.h │ │ │ │ │ │ │ ├── fastled_arm_k20.h │ │ │ │ │ │ │ ├── fastpin_arm_k20.h │ │ │ │ │ │ │ ├── fastspi_arm_k20.h │ │ │ │ │ │ │ ├── led_sysdefs_arm_k20.h │ │ │ │ │ │ │ ├── octows2811_controller.h │ │ │ │ │ │ │ ├── smartmatrix_t3.h │ │ │ │ │ │ │ └── ws2812serial_controller.h │ │ │ │ │ │ ├── k66/ │ │ │ │ │ │ │ ├── clockless_arm_k66.h │ │ │ │ │ │ │ ├── clockless_block_arm_k66.h │ │ │ │ │ │ │ ├── fastled_arm_k66.h │ │ │ │ │ │ │ ├── fastpin_arm_k66.h │ │ │ │ │ │ │ ├── fastspi_arm_k66.h │ │ │ │ │ │ │ └── led_sysdefs_arm_k66.h │ │ │ │ │ │ ├── kl26/ │ │ │ │ │ │ │ ├── clockless_arm_kl26.h │ │ │ │ │ │ │ ├── fastled_arm_kl26.h │ │ │ │ │ │ │ ├── fastpin_arm_kl26.h │ │ │ │ │ │ │ ├── fastspi_arm_kl26.h │ │ │ │ │ │ │ └── led_sysdefs_arm_kl26.h │ │ │ │ │ │ ├── mxrt1062/ │ │ │ │ │ │ │ ├── block_clockless_arm_mxrt1062.h │ │ │ │ │ │ │ ├── clockless_arm_mxrt1062.h │ │ │ │ │ │ │ ├── fastled_arm_mxrt1062.h │ │ │ │ │ │ │ ├── fastpin_arm_mxrt1062.h │ │ │ │ │ │ │ ├── fastspi_arm_mxrt1062.h │ │ │ │ │ │ │ ├── led_sysdefs_arm_mxrt1062.h │ │ │ │ │ │ │ └── octows2811_controller.h │ │ │ │ │ │ ├── nrf51/ │ │ │ │ │ │ │ ├── clockless_arm_nrf51.h │ │ │ │ │ │ │ ├── fastled_arm_nrf51.h │ │ │ │ │ │ │ ├── fastpin_arm_nrf51.h │ │ │ │ │ │ │ ├── fastspi_arm_nrf51.h │ │ │ │ │ │ │ └── led_sysdefs_arm_nrf51.h │ │ │ │ │ │ ├── nrf52/ │ │ │ │ │ │ │ ├── arbiter_nrf52.h │ │ │ │ │ │ │ ├── clockless_arm_nrf52.h │ │ │ │ │ │ │ ├── fastled_arm_nrf52.h │ │ │ │ │ │ │ ├── fastpin_arm_nrf52.h │ │ │ │ │ │ │ ├── fastpin_arm_nrf52_variants.h │ │ │ │ │ │ │ ├── fastspi_arm_nrf52.h │ │ │ │ │ │ │ └── led_sysdefs_arm_nrf52.h │ │ │ │ │ │ ├── sam/ │ │ │ │ │ │ │ ├── clockless_arm_sam.h │ │ │ │ │ │ │ ├── clockless_block_arm_sam.h │ │ │ │ │ │ │ ├── fastled_arm_sam.h │ │ │ │ │ │ │ ├── fastpin_arm_sam.h │ │ │ │ │ │ │ ├── fastspi_arm_sam.h │ │ │ │ │ │ │ └── led_sysdefs_arm_sam.h │ │ │ │ │ │ └── stm32/ │ │ │ │ │ │ ├── clockless_arm_stm32.h │ │ │ │ │ │ ├── cm3_regs.h │ │ │ │ │ │ ├── fastled_arm_stm32.h │ │ │ │ │ │ ├── fastpin_arm_stm32.h │ │ │ │ │ │ └── led_sysdefs_arm_stm32.h │ │ │ │ │ ├── avr/ │ │ │ │ │ │ ├── clockless_trinket.h │ │ │ │ │ │ ├── fastled_avr.h │ │ │ │ │ │ ├── fastpin_avr.h │ │ │ │ │ │ ├── fastspi_avr.h │ │ │ │ │ │ └── led_sysdefs_avr.h │ │ │ │ │ ├── esp/ │ │ │ │ │ │ ├── 32/ │ │ │ │ │ │ │ ├── clockless_block_esp32.h │ │ │ │ │ │ │ ├── clockless_i2s_esp32.h │ │ │ │ │ │ │ ├── clockless_rmt_esp32.cpp │ │ │ │ │ │ │ ├── clockless_rmt_esp32.h │ │ │ │ │ │ │ ├── fastled_esp32.h │ │ │ │ │ │ │ ├── fastpin_esp32.h │ │ │ │ │ │ │ ├── fastspi_esp32.h │ │ │ │ │ │ │ └── led_sysdefs_esp32.h │ │ │ │ │ │ └── 8266/ │ │ │ │ │ │ ├── clockless_block_esp8266.h │ │ │ │ │ │ ├── clockless_esp8266.h │ │ │ │ │ │ ├── fastled_esp8266.h │ │ │ │ │ │ ├── fastpin_esp8266.h │ │ │ │ │ │ ├── fastspi_esp8266.h │ │ │ │ │ │ └── led_sysdefs_esp8266.h │ │ │ │ │ └── fastspi_ardunio_core.h │ │ │ │ ├── platforms.cpp │ │ │ │ ├── platforms.h │ │ │ │ ├── power_mgt.cpp │ │ │ │ ├── power_mgt.h │ │ │ │ └── wiring.cpp │ │ │ └── workspace.code-workspace │ │ ├── README │ │ ├── TFT_eSPI/ │ │ │ ├── .gitattributes │ │ │ ├── .github/ │ │ │ │ └── ISSUE_TEMPLATE/ │ │ │ │ └── issue-template.md │ │ │ ├── .gitignore │ │ │ ├── CMakeLists.txt │ │ │ ├── Extensions/ │ │ │ │ ├── Button.cpp │ │ │ │ ├── Button.h │ │ │ │ ├── Smooth_font.cpp │ │ │ │ ├── Smooth_font.h │ │ │ │ ├── Sprite.cpp │ │ │ │ ├── Sprite.h │ │ │ │ ├── Touch.cpp │ │ │ │ └── Touch.h │ │ │ ├── Fonts/ │ │ │ │ ├── Custom/ │ │ │ │ │ ├── Orbitron_Light_24.h │ │ │ │ │ ├── Orbitron_Light_32.h │ │ │ │ │ ├── Roboto_Thin_24.h │ │ │ │ │ ├── Satisfy_24.h │ │ │ │ │ └── Yellowtail_32.h │ │ │ │ ├── Font16.c │ │ │ │ ├── Font16.h │ │ │ │ ├── Font32rle.c │ │ │ │ ├── Font32rle.h │ │ │ │ ├── Font64rle.c │ │ │ │ ├── Font64rle.h │ │ │ │ ├── Font72rle.c │ │ │ │ ├── Font72rle.h │ │ │ │ ├── Font72x53rle.c │ │ │ │ ├── Font72x53rle.h │ │ │ │ ├── Font7srle.c │ │ │ │ ├── Font7srle.h │ │ │ │ ├── GFXFF/ │ │ │ │ │ ├── FreeMono12pt7b.h │ │ │ │ │ ├── FreeMono18pt7b.h │ │ │ │ │ ├── FreeMono24pt7b.h │ │ │ │ │ ├── FreeMono9pt7b.h │ │ │ │ │ ├── FreeMonoBold12pt7b.h │ │ │ │ │ ├── FreeMonoBold18pt7b.h │ │ │ │ │ ├── FreeMonoBold24pt7b.h │ │ │ │ │ ├── FreeMonoBold9pt7b.h │ │ │ │ │ ├── FreeMonoBoldOblique12pt7b.h │ │ │ │ │ ├── FreeMonoBoldOblique18pt7b.h │ │ │ │ │ ├── FreeMonoBoldOblique24pt7b.h │ │ │ │ │ ├── FreeMonoBoldOblique9pt7b.h │ │ │ │ │ ├── FreeMonoOblique12pt7b.h │ │ │ │ │ ├── FreeMonoOblique18pt7b.h │ │ │ │ │ ├── FreeMonoOblique24pt7b.h │ │ │ │ │ ├── FreeMonoOblique9pt7b.h │ │ │ │ │ ├── FreeSans12pt7b.h │ │ │ │ │ ├── FreeSans18pt7b.h │ │ │ │ │ ├── FreeSans24pt7b.h │ │ │ │ │ ├── FreeSans9pt7b.h │ │ │ │ │ ├── FreeSansBold12pt7b.h │ │ │ │ │ ├── FreeSansBold18pt7b.h │ │ │ │ │ ├── FreeSansBold24pt7b.h │ │ │ │ │ ├── FreeSansBold9pt7b.h │ │ │ │ │ ├── FreeSansBoldOblique12pt7b.h │ │ │ │ │ ├── FreeSansBoldOblique18pt7b.h │ │ │ │ │ ├── FreeSansBoldOblique24pt7b.h │ │ │ │ │ ├── FreeSansBoldOblique9pt7b.h │ │ │ │ │ ├── FreeSansOblique12pt7b.h │ │ │ │ │ ├── FreeSansOblique18pt7b.h │ │ │ │ │ ├── FreeSansOblique24pt7b.h │ │ │ │ │ ├── FreeSansOblique9pt7b.h │ │ │ │ │ ├── FreeSerif12pt7b.h │ │ │ │ │ ├── FreeSerif18pt7b.h │ │ │ │ │ ├── FreeSerif24pt7b.h │ │ │ │ │ ├── FreeSerif9pt7b.h │ │ │ │ │ ├── FreeSerifBold12pt7b.h │ │ │ │ │ ├── FreeSerifBold18pt7b.h │ │ │ │ │ ├── FreeSerifBold24pt7b.h │ │ │ │ │ ├── FreeSerifBold9pt7b.h │ │ │ │ │ ├── FreeSerifBoldItalic12pt7b.h │ │ │ │ │ ├── FreeSerifBoldItalic18pt7b.h │ │ │ │ │ ├── FreeSerifBoldItalic24pt7b.h │ │ │ │ │ ├── FreeSerifBoldItalic9pt7b.h │ │ │ │ │ ├── FreeSerifItalic12pt7b.h │ │ │ │ │ ├── FreeSerifItalic18pt7b.h │ │ │ │ │ ├── FreeSerifItalic24pt7b.h │ │ │ │ │ ├── FreeSerifItalic9pt7b.h │ │ │ │ │ ├── TomThumb.h │ │ │ │ │ ├── gfxfont.h │ │ │ │ │ ├── license.txt │ │ │ │ │ └── print.txt │ │ │ │ ├── TrueType/ │ │ │ │ │ └── Not_yet_supported.txt │ │ │ │ └── glcdfont.c │ │ │ ├── Kconfig │ │ │ ├── Processors/ │ │ │ │ ├── TFT_eSPI_ESP32.c │ │ │ │ ├── TFT_eSPI_ESP32.h │ │ │ │ ├── TFT_eSPI_ESP32_C3.c │ │ │ │ ├── TFT_eSPI_ESP32_C3.h │ │ │ │ ├── TFT_eSPI_ESP32_S3.c │ │ │ │ ├── TFT_eSPI_ESP32_S3.h │ │ │ │ ├── TFT_eSPI_ESP8266.c │ │ │ │ ├── TFT_eSPI_ESP8266.h │ │ │ │ ├── TFT_eSPI_Generic.c │ │ │ │ ├── TFT_eSPI_Generic.h │ │ │ │ ├── TFT_eSPI_RP2040.c │ │ │ │ ├── TFT_eSPI_RP2040.h │ │ │ │ ├── TFT_eSPI_STM32.c │ │ │ │ ├── TFT_eSPI_STM32.h │ │ │ │ ├── pio_16bit_parallel.pio │ │ │ │ ├── pio_16bit_parallel.pio.h │ │ │ │ ├── pio_8bit_parallel.pio │ │ │ │ ├── pio_8bit_parallel.pio.h │ │ │ │ ├── pio_SPI.pio │ │ │ │ ├── pio_SPI.pio.h │ │ │ │ ├── pio_SPI_18bit.pio │ │ │ │ └── pio_SPI_18bit.pio.h │ │ │ ├── README.md │ │ │ ├── README.txt │ │ │ ├── TFT_Drivers/ │ │ │ │ ├── EPD_Defines.h │ │ │ │ ├── GC9A01_Defines.h │ │ │ │ ├── GC9A01_Init.h │ │ │ │ ├── GC9A01_Rotation.h │ │ │ │ ├── HX8357B_Defines.h │ │ │ │ ├── HX8357B_Init.h │ │ │ │ ├── HX8357B_Rotation.h │ │ │ │ ├── HX8357C_Defines.h │ │ │ │ ├── HX8357C_Init.h │ │ │ │ ├── HX8357C_Rotation.h │ │ │ │ ├── HX8357D_Defines.h │ │ │ │ ├── HX8357D_Init.h │ │ │ │ ├── HX8357D_Rotation.h │ │ │ │ ├── ILI9163_Defines.h │ │ │ │ ├── ILI9163_Init.h │ │ │ │ ├── ILI9163_Rotation.h │ │ │ │ ├── ILI9225_Defines.h │ │ │ │ ├── ILI9225_Init.h │ │ │ │ ├── ILI9225_Rotation.h │ │ │ │ ├── ILI9341_Defines.h │ │ │ │ ├── ILI9341_Init.h │ │ │ │ ├── ILI9341_Rotation.h │ │ │ │ ├── ILI9481_Defines.h │ │ │ │ ├── ILI9481_Init.h │ │ │ │ ├── ILI9481_Rotation.h │ │ │ │ ├── ILI9486_Defines.h │ │ │ │ ├── ILI9486_Init.h │ │ │ │ ├── ILI9486_Rotation.h │ │ │ │ ├── ILI9488_Defines.h │ │ │ │ ├── ILI9488_Init.h │ │ │ │ ├── ILI9488_Rotation.h │ │ │ │ ├── R61581_Defines.h │ │ │ │ ├── R61581_Init.h │ │ │ │ ├── R61581_Rotation.h │ │ │ │ ├── RM68120_Defines.h │ │ │ │ ├── RM68120_Init.h │ │ │ │ ├── RM68120_Rotation.h │ │ │ │ ├── RM68140_Defines.h │ │ │ │ ├── RM68140_Init.h │ │ │ │ ├── RM68140_Rotation.h │ │ │ │ ├── S6D02A1_Defines.h │ │ │ │ ├── S6D02A1_Init.h │ │ │ │ ├── S6D02A1_Rotation.h │ │ │ │ ├── SSD1351_Defines.h │ │ │ │ ├── SSD1351_Init.h │ │ │ │ ├── SSD1351_Rotation.h │ │ │ │ ├── SSD1963_Defines.h │ │ │ │ ├── SSD1963_Init.h │ │ │ │ ├── SSD1963_Rotation.h │ │ │ │ ├── ST7735_Defines.h │ │ │ │ ├── ST7735_Init.h │ │ │ │ ├── ST7735_Rotation.h │ │ │ │ ├── ST7789_2_Defines.h │ │ │ │ ├── ST7789_2_Init.h │ │ │ │ ├── ST7789_2_Rotation.h │ │ │ │ ├── ST7789_Defines.h │ │ │ │ ├── ST7789_Init.h │ │ │ │ ├── ST7789_Rotation.h │ │ │ │ ├── ST7796_Defines.h │ │ │ │ ├── ST7796_Init.h │ │ │ │ └── ST7796_Rotation.h │ │ │ ├── TFT_config.h │ │ │ ├── TFT_eSPI.cpp │ │ │ ├── TFT_eSPI.h │ │ │ ├── Tools/ │ │ │ │ ├── Create_Smooth_Font/ │ │ │ │ │ └── Create_font/ │ │ │ │ │ ├── Create_font.pde │ │ │ │ │ └── FontFiles/ │ │ │ │ │ └── Final-Frontier28.vlw │ │ │ │ ├── Screenshot_client/ │ │ │ │ │ └── Screenshot_client.pde │ │ │ │ └── bmp2array4bit/ │ │ │ │ ├── README.md │ │ │ │ └── bmp2array4bit.py │ │ │ ├── User_Setup.h │ │ │ ├── User_Setup_Select.h │ │ │ ├── User_Setups/ │ │ │ │ ├── Setup100_RP2040_ILI9488_parallel.h │ │ │ │ ├── Setup101_RP2040_ILI9481_parallel.h │ │ │ │ ├── Setup102_RP2040_ILI9341_parallel.h │ │ │ │ ├── Setup103_RP2040_ILI9486_parallel.h │ │ │ │ ├── Setup104_RP2040_ST7796_parallel.h │ │ │ │ ├── Setup105_RP2040_ST7796_16bit_parallel.h │ │ │ │ ├── Setup106_RP2040_ILI9481_16bit_parallel.h │ │ │ │ ├── Setup107_RP2040_ILI9341_16bit_parallel.h │ │ │ │ ├── Setup10_RPi_touch_ILI9486.h │ │ │ │ ├── Setup11_RPi_touch_ILI9486.h │ │ │ │ ├── Setup12_M5Stack_Basic_Core.h │ │ │ │ ├── Setup135_ST7789.h │ │ │ │ ├── Setup136_LilyGo_TTV.h │ │ │ │ ├── Setup137_LilyGo_TDisplay_RP2040.h │ │ │ │ ├── Setup13_ILI9481_Parallel.h │ │ │ │ ├── Setup14_ILI9341_Parallel.h │ │ │ │ ├── Setup15_HX8357D.h │ │ │ │ ├── Setup16_ILI9488_Parallel.h │ │ │ │ ├── Setup17_ePaper.h │ │ │ │ ├── Setup18_ST7789.h │ │ │ │ ├── Setup19_RM68140_Parallel.h │ │ │ │ ├── Setup1_ILI9341.h │ │ │ │ ├── Setup200_GC9A01.h │ │ │ │ ├── Setup201_WT32_SC01.h │ │ │ │ ├── Setup202_SSD1351_128.h │ │ │ │ ├── Setup203_ST7789.h │ │ │ │ ├── Setup204_ESP32_TouchDown.h │ │ │ │ ├── Setup205_ESP32_TouchDown_S3.h │ │ │ │ ├── Setup20_ILI9488.h │ │ │ │ ├── Setup21_ILI9488.h │ │ │ │ ├── Setup22_TTGO_T4.h │ │ │ │ ├── Setup22_TTGO_T4_v1.3.h │ │ │ │ ├── Setup23_TTGO_TM.h │ │ │ │ ├── Setup24_ST7789.h │ │ │ │ ├── Setup25_TTGO_T_Display.h │ │ │ │ ├── Setup26_TTGO_T_Wristband.h │ │ │ │ ├── Setup27_RPi_ST7796_ESP32.h │ │ │ │ ├── Setup28_RPi_ST7796_ESP8266.h │ │ │ │ ├── Setup29_ILI9341_STM32.h │ │ │ │ ├── Setup2_ST7735.h │ │ │ │ ├── Setup30_ILI9341_Parallel_STM32.h │ │ │ │ ├── Setup31_ST7796_Parallel_STM32.h │ │ │ │ ├── Setup32_ILI9341_STM32F103.h │ │ │ │ ├── Setup33_RPi_ILI9486_STM32.h │ │ │ │ ├── Setup34_ILI9481_Parallel_STM32.h │ │ │ │ ├── Setup35_ILI9341_STM32_Port_Bus.h │ │ │ │ ├── Setup36_RPi_touch_ST7796.h │ │ │ │ ├── Setup3_ILI9163.h │ │ │ │ ├── Setup43_ST7735.h │ │ │ │ ├── Setup44_TTGO_CameraPlus.h │ │ │ │ ├── Setup45_TTGO_T_Watch.h │ │ │ │ ├── Setup46_GC9A01_ESP32.h │ │ │ │ ├── Setup47_ST7735.h │ │ │ │ ├── Setup4_S6D02A1.h │ │ │ │ ├── Setup50_SSD1963_Parallel.h │ │ │ │ ├── Setup51_LilyPi_ILI9481.h │ │ │ │ ├── Setup52_LilyPi_ST7796.h │ │ │ │ ├── Setup5_RPi_ILI9486.h │ │ │ │ ├── Setup60_RP2040_ILI9341.h │ │ │ │ ├── Setup61_RP2040_ILI9341_PIO_SPI.h │ │ │ │ ├── Setup62_RP2040_Nano_Connect_ILI9341.h │ │ │ │ ├── Setup6_RPi_Wr_ILI9486.h │ │ │ │ ├── Setup70_ESP32_S2_ILI9341.h │ │ │ │ ├── Setup70b_ESP32_S3_ILI9341.h │ │ │ │ ├── Setup70c_ESP32_C3_ILI9341.h │ │ │ │ ├── Setup70d_ILI9488_S3_Parallel.h │ │ │ │ ├── Setup71_ESP32_S2_ST7789.h │ │ │ │ ├── Setup72_ESP32_ST7789_172x320.h │ │ │ │ ├── Setup7_ST7735_128x128.h │ │ │ │ ├── Setup8_ILI9163_128x128.h │ │ │ │ ├── Setup9_ST7735_Overlap.h │ │ │ │ ├── SetupX_Template.h │ │ │ │ └── User_Custom_Fonts.h │ │ │ ├── docs/ │ │ │ │ └── PlatformIO/ │ │ │ │ └── Configuring options.txt │ │ │ ├── examples/ │ │ │ │ ├── 160 x 128/ │ │ │ │ │ ├── Arduino_Life/ │ │ │ │ │ │ └── Arduino_Life.ino │ │ │ │ │ ├── Pong_v3/ │ │ │ │ │ │ └── Pong_v3.ino │ │ │ │ │ ├── RLE_Font_test/ │ │ │ │ │ │ └── RLE_Font_test.ino │ │ │ │ │ ├── TFT_Char_times/ │ │ │ │ │ │ └── TFT_Char_times.ino │ │ │ │ │ ├── TFT_Clock/ │ │ │ │ │ │ └── TFT_Clock.ino │ │ │ │ │ ├── TFT_Clock_Digital/ │ │ │ │ │ │ └── TFT_Clock_Digital.ino │ │ │ │ │ ├── TFT_Ellipse/ │ │ │ │ │ │ └── TFT_Ellipse.ino │ │ │ │ │ ├── TFT_Meter_5/ │ │ │ │ │ │ └── TFT_Meter_5.ino │ │ │ │ │ ├── TFT_Print_Test/ │ │ │ │ │ │ └── TFT_Print_Test.ino │ │ │ │ │ ├── TFT_Rainbow/ │ │ │ │ │ │ └── TFT_Rainbow.ino │ │ │ │ │ ├── TFT_flash_jpg/ │ │ │ │ │ │ ├── TFT_flash_jpg.ino │ │ │ │ │ │ ├── jpeg1.h │ │ │ │ │ │ ├── jpeg2.h │ │ │ │ │ │ ├── jpeg3.h │ │ │ │ │ │ └── jpeg4.h │ │ │ │ │ ├── TFT_graphicstest_PDQ3/ │ │ │ │ │ │ └── TFT_graphicstest_PDQ3.ino │ │ │ │ │ ├── TFT_graphicstest_small/ │ │ │ │ │ │ └── TFT_graphicstest_small.ino │ │ │ │ │ └── UTFT_demo_fast/ │ │ │ │ │ └── UTFT_demo_fast.ino │ │ │ │ ├── 320 x 240/ │ │ │ │ │ ├── All_Free_Fonts_Demo/ │ │ │ │ │ │ ├── All_Free_Fonts_Demo.ino │ │ │ │ │ │ └── Free_Fonts.h │ │ │ │ │ ├── Cellular_Automata/ │ │ │ │ │ │ └── Cellular_Automata.ino │ │ │ │ │ ├── Free_Font_Demo/ │ │ │ │ │ │ ├── Free_Font_Demo.ino │ │ │ │ │ │ └── Free_Fonts.h │ │ │ │ │ ├── Keypad_240x320/ │ │ │ │ │ │ └── Keypad_240x320.ino │ │ │ │ │ ├── RLE_Font_test/ │ │ │ │ │ │ └── RLE_Font_test.ino │ │ │ │ │ ├── Read_ID_bitbash/ │ │ │ │ │ │ └── Read_ID_bitbash.ino │ │ │ │ │ ├── TFT_ArcFill/ │ │ │ │ │ │ └── TFT_ArcFill.ino │ │ │ │ │ ├── TFT_Char_times/ │ │ │ │ │ │ └── TFT_Char_times.ino │ │ │ │ │ ├── TFT_Clock/ │ │ │ │ │ │ └── TFT_Clock.ino │ │ │ │ │ ├── TFT_Clock_Digital/ │ │ │ │ │ │ └── TFT_Clock_Digital.ino │ │ │ │ │ ├── TFT_Custom_Fonts/ │ │ │ │ │ │ └── TFT_Custom_Fonts.ino │ │ │ │ │ ├── TFT_Ellipse/ │ │ │ │ │ │ └── TFT_Ellipse.ino │ │ │ │ │ ├── TFT_FillArcSpiral/ │ │ │ │ │ │ └── TFT_FillArcSpiral.ino │ │ │ │ │ ├── TFT_Float_Test/ │ │ │ │ │ │ └── TFT_Float_Test.ino │ │ │ │ │ ├── TFT_Mandlebrot/ │ │ │ │ │ │ └── TFT_Mandlebrot.ino │ │ │ │ │ ├── TFT_Matrix/ │ │ │ │ │ │ └── TFT_Matrix.ino │ │ │ │ │ ├── TFT_Meter_linear/ │ │ │ │ │ │ └── TFT_Meter_linear.ino │ │ │ │ │ ├── TFT_Meters/ │ │ │ │ │ │ └── TFT_Meters.ino │ │ │ │ │ ├── TFT_Pie_Chart/ │ │ │ │ │ │ └── TFT_Pie_Chart.ino │ │ │ │ │ ├── TFT_Pong/ │ │ │ │ │ │ └── TFT_Pong.ino │ │ │ │ │ ├── TFT_Print_Test/ │ │ │ │ │ │ └── TFT_Print_Test.ino │ │ │ │ │ ├── TFT_Rainbow_one_lib/ │ │ │ │ │ │ └── TFT_Rainbow_one_lib.ino │ │ │ │ │ ├── TFT_Read_Reg/ │ │ │ │ │ │ └── TFT_Read_Reg.ino │ │ │ │ │ ├── TFT_Spiro/ │ │ │ │ │ │ └── TFT_Spiro.ino │ │ │ │ │ ├── TFT_Starfield/ │ │ │ │ │ │ └── TFT_Starfield.ino │ │ │ │ │ ├── TFT_String_Align/ │ │ │ │ │ │ └── TFT_String_Align.ino │ │ │ │ │ ├── TFT_Terminal/ │ │ │ │ │ │ └── TFT_Terminal.ino │ │ │ │ │ ├── TFT_graphicstest_PDQ/ │ │ │ │ │ │ └── TFT_graphicstest_PDQ.ino │ │ │ │ │ ├── TFT_graphicstest_one_lib/ │ │ │ │ │ │ └── TFT_graphicstest_one_lib.ino │ │ │ │ │ └── UTFT_demo/ │ │ │ │ │ └── UTFT_demo.ino │ │ │ │ ├── 480 x 320/ │ │ │ │ │ ├── Cellular_Automata/ │ │ │ │ │ │ └── Cellular_Automata.ino │ │ │ │ │ ├── Demo_3D_cube/ │ │ │ │ │ │ └── Demo_3D_cube.ino │ │ │ │ │ ├── Free_Font_Demo/ │ │ │ │ │ │ ├── Free_Font_Demo.ino │ │ │ │ │ │ └── Free_Fonts.h │ │ │ │ │ ├── Graph_2/ │ │ │ │ │ │ └── Graph_2.ino │ │ │ │ │ ├── Keypad_480x320/ │ │ │ │ │ │ └── Keypad_480x320.ino │ │ │ │ │ ├── TFT_Char_times/ │ │ │ │ │ │ └── TFT_Char_times.ino │ │ │ │ │ ├── TFT_Ellipse/ │ │ │ │ │ │ └── TFT_Ellipse.ino │ │ │ │ │ ├── TFT_Meter_4/ │ │ │ │ │ │ └── TFT_Meter_4.ino │ │ │ │ │ ├── TFT_Meters/ │ │ │ │ │ │ └── TFT_Meters.ino │ │ │ │ │ ├── TFT_Padding_demo/ │ │ │ │ │ │ └── TFT_Padding_demo.ino │ │ │ │ │ ├── TFT_Print_Test/ │ │ │ │ │ │ └── TFT_Print_Test.ino │ │ │ │ │ ├── TFT_Rainbow480/ │ │ │ │ │ │ └── TFT_Rainbow480.ino │ │ │ │ │ ├── TFT_String_Align/ │ │ │ │ │ │ └── TFT_String_Align.ino │ │ │ │ │ ├── TFT_flash_jpg/ │ │ │ │ │ │ ├── TFT_flash_jpg.ino │ │ │ │ │ │ ├── jpeg1.h │ │ │ │ │ │ ├── jpeg2.h │ │ │ │ │ │ ├── jpeg3.h │ │ │ │ │ │ └── jpeg4.h │ │ │ │ │ ├── TFT_graphicstest_one_lib/ │ │ │ │ │ │ └── TFT_graphicstest_one_lib.ino │ │ │ │ │ ├── TFT_ring_meter/ │ │ │ │ │ │ ├── Alert.h │ │ │ │ │ │ └── TFT_ring_meter.ino │ │ │ │ │ ├── Touch_Controller_Demo/ │ │ │ │ │ │ └── Touch_Controller_Demo.ino │ │ │ │ │ └── UTFT_Demo_480x320/ │ │ │ │ │ └── UTFT_Demo_480x320.ino │ │ │ │ ├── DMA test/ │ │ │ │ │ ├── Bouncy_Circles/ │ │ │ │ │ │ └── Bouncy_Circles.ino │ │ │ │ │ ├── Flash_Jpg_DMA/ │ │ │ │ │ │ ├── Flash_Jpg_DMA.ino │ │ │ │ │ │ └── panda.h │ │ │ │ │ ├── SpriteRotatingCube/ │ │ │ │ │ │ └── SpriteRotatingCube.ino │ │ │ │ │ └── boing_ball/ │ │ │ │ │ ├── boing_ball.ino │ │ │ │ │ └── graphic.h │ │ │ │ ├── Generic/ │ │ │ │ │ ├── Animated_Eyes_1/ │ │ │ │ │ │ ├── Animated_Eyes_1.ino │ │ │ │ │ │ ├── config.h │ │ │ │ │ │ ├── data/ │ │ │ │ │ │ │ ├── catEye.h │ │ │ │ │ │ │ ├── defaultEye.h │ │ │ │ │ │ │ ├── doeEye.h │ │ │ │ │ │ │ ├── dragonEye.h │ │ │ │ │ │ │ ├── goatEye.h │ │ │ │ │ │ │ ├── logo.h │ │ │ │ │ │ │ ├── naugaEye.h │ │ │ │ │ │ │ ├── newtEye.h │ │ │ │ │ │ │ ├── noScleraEye.h │ │ │ │ │ │ │ ├── owlEye.h │ │ │ │ │ │ │ └── terminatorEye.h │ │ │ │ │ │ ├── eye_functions.ino │ │ │ │ │ │ ├── user.cpp │ │ │ │ │ │ ├── user_bat.cpp │ │ │ │ │ │ └── user_xmas.cpp │ │ │ │ │ ├── Animated_Eyes_2/ │ │ │ │ │ │ ├── Animated_Eyes_2.ino │ │ │ │ │ │ ├── config.h │ │ │ │ │ │ ├── data/ │ │ │ │ │ │ │ ├── catEye.h │ │ │ │ │ │ │ ├── defaultEye.h │ │ │ │ │ │ │ ├── doeEye.h │ │ │ │ │ │ │ ├── dragonEye.h │ │ │ │ │ │ │ ├── goatEye.h │ │ │ │ │ │ │ ├── logo.h │ │ │ │ │ │ │ ├── naugaEye.h │ │ │ │ │ │ │ ├── newtEye.h │ │ │ │ │ │ │ ├── noScleraEye.h │ │ │ │ │ │ │ ├── owlEye.h │ │ │ │ │ │ │ └── terminatorEye.h │ │ │ │ │ │ ├── eye_functions.ino │ │ │ │ │ │ ├── user.cpp │ │ │ │ │ │ ├── user_bat.cpp │ │ │ │ │ │ ├── user_xmas.cpp │ │ │ │ │ │ └── wiring.ino │ │ │ │ │ ├── ESP32_SDcard_jpeg/ │ │ │ │ │ │ └── ESP32_SDcard_jpeg.ino │ │ │ │ │ ├── ESP8266_uncannyEyes/ │ │ │ │ │ │ ├── ESP8266_uncannyEyes.ino │ │ │ │ │ │ ├── defaultEye.h │ │ │ │ │ │ ├── dragonEye.h │ │ │ │ │ │ ├── goatEye.h │ │ │ │ │ │ ├── noScleraEye.h │ │ │ │ │ │ └── screenshotToConsole.ino │ │ │ │ │ ├── Gradient_Fill/ │ │ │ │ │ │ └── Gradient_Fill.ino │ │ │ │ │ ├── Local_Custom_Fonts/ │ │ │ │ │ │ ├── Local_Custom_Fonts.ino │ │ │ │ │ │ └── MyFont.h │ │ │ │ │ ├── On_Off_Button/ │ │ │ │ │ │ └── On_Off_Button.ino │ │ │ │ │ ├── TFT_Button_Label_Datum/ │ │ │ │ │ │ └── TFT_Button_Label_Datum.ino │ │ │ │ │ ├── TFT_Flash_Bitmap/ │ │ │ │ │ │ ├── Alert.h │ │ │ │ │ │ ├── Close.h │ │ │ │ │ │ ├── Info.h │ │ │ │ │ │ └── TFT_Flash_Bitmap.ino │ │ │ │ │ ├── TFT_SPIFFS_BMP/ │ │ │ │ │ │ ├── BMP_functions.ino │ │ │ │ │ │ └── TFT_SPIFFS_BMP.ino │ │ │ │ │ ├── TFT_Screen_Capture/ │ │ │ │ │ │ ├── TFT_Screen_Capture.ino │ │ │ │ │ │ ├── processing_sketch.ino │ │ │ │ │ │ └── screenServer.ino │ │ │ │ │ ├── Touch_calibrate/ │ │ │ │ │ │ └── Touch_calibrate.ino │ │ │ │ │ ├── Viewport_Demo/ │ │ │ │ │ │ ├── Viewport_Demo.ino │ │ │ │ │ │ └── Viewport_commands.ino │ │ │ │ │ ├── Viewport_graphicstest/ │ │ │ │ │ │ └── Viewport_graphicstest.ino │ │ │ │ │ ├── alphaBlend_Test/ │ │ │ │ │ │ └── alphaBlend_Test.ino │ │ │ │ │ └── drawXBitmap/ │ │ │ │ │ ├── drawXBitmap.ino │ │ │ │ │ └── xbm.h │ │ │ │ ├── PNG Images/ │ │ │ │ │ ├── Flash_PNG/ │ │ │ │ │ │ ├── Flash_PNG.ino │ │ │ │ │ │ └── panda.h │ │ │ │ │ ├── LittleFS_PNG/ │ │ │ │ │ │ ├── LittleFS_PNG.ino │ │ │ │ │ │ └── PNG_FS_Support.ino │ │ │ │ │ └── LittleFS_PNG_DMA/ │ │ │ │ │ ├── LittleFS_PNG_DMA.ino │ │ │ │ │ └── PNG_FS_Support.ino │ │ │ │ ├── Smooth Fonts/ │ │ │ │ │ ├── FLASH_Array/ │ │ │ │ │ │ ├── Font_Demo_1_Array/ │ │ │ │ │ │ │ ├── Font_Demo_1_Array.ino │ │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ │ ├── NotoSansBold15.h │ │ │ │ │ │ │ └── NotoSansBold36.h │ │ │ │ │ │ ├── Font_Demo_2_Array/ │ │ │ │ │ │ │ ├── Font_Demo_2_Array.ino │ │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ │ ├── NotoSansBold15.h │ │ │ │ │ │ │ └── NotoSansBold36.h │ │ │ │ │ │ ├── Font_Demo_3_Array/ │ │ │ │ │ │ │ ├── Font_Demo_3_Array.ino │ │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ │ ├── NotoSansBold15.h │ │ │ │ │ │ │ ├── NotoSansBold36.h │ │ │ │ │ │ │ └── NotoSansMonoSCB20.h │ │ │ │ │ │ ├── Font_Demo_4_Array/ │ │ │ │ │ │ │ ├── Font_Demo_4_Array.ino │ │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ │ ├── NotoSansBold15.h │ │ │ │ │ │ │ └── NotoSansBold36.h │ │ │ │ │ │ ├── Print_Smooth_Font/ │ │ │ │ │ │ │ ├── Final_Frontier_28.h │ │ │ │ │ │ │ └── Print_Smooth_Font.ino │ │ │ │ │ │ ├── Smooth_font_gradient/ │ │ │ │ │ │ │ ├── NotoSansBold15.h │ │ │ │ │ │ │ ├── NotoSansBold36.h │ │ │ │ │ │ │ └── Smooth_font_gradient.ino │ │ │ │ │ │ ├── Smooth_font_reading_TFT/ │ │ │ │ │ │ │ ├── NotoSansBold15.h │ │ │ │ │ │ │ ├── NotoSansBold36.h │ │ │ │ │ │ │ └── Smooth_font_reading_TFT.ino │ │ │ │ │ │ └── Unicode_test/ │ │ │ │ │ │ ├── Final_Frontier_28.h │ │ │ │ │ │ ├── Latin_Hiragana_24.h │ │ │ │ │ │ ├── Unicode_Test_72.h │ │ │ │ │ │ ├── Unicode_test.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ ├── Final-Frontier-28.vlw │ │ │ │ │ │ ├── Latin-Hiragana-24.vlw │ │ │ │ │ │ └── Unicode-Test-72.vlw │ │ │ │ │ ├── LittleFS/ │ │ │ │ │ │ ├── Font_Demo_1/ │ │ │ │ │ │ │ ├── Font_Demo_1.ino │ │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ │ └── data/ │ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ │ ├── Font_Demo_2/ │ │ │ │ │ │ │ ├── Font_Demo_2.ino │ │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ │ └── data/ │ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ │ ├── Font_Demo_3/ │ │ │ │ │ │ │ ├── Font_Demo_3.ino │ │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ │ └── data/ │ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ │ ├── NotoSansBold36.vlw │ │ │ │ │ │ │ └── NotoSansMonoSCB20.vlw │ │ │ │ │ │ ├── Font_Demo_4/ │ │ │ │ │ │ │ ├── Font_Demo_4.ino │ │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ │ └── data/ │ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ │ ├── Print_Smooth_Font/ │ │ │ │ │ │ │ ├── Print_Smooth_Font.ino │ │ │ │ │ │ │ └── data/ │ │ │ │ │ │ │ └── Final-Frontier-28.vlw │ │ │ │ │ │ ├── Smooth_font_gradient/ │ │ │ │ │ │ │ ├── Smooth_font_gradient.ino │ │ │ │ │ │ │ └── data/ │ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ │ ├── Smooth_font_reading_TFT/ │ │ │ │ │ │ │ ├── Smooth_font_reading_TFT.ino │ │ │ │ │ │ │ └── data/ │ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ │ └── Unicode_test/ │ │ │ │ │ │ ├── LittleFS_functions.ino │ │ │ │ │ │ ├── Unicode_test.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ ├── Final-Frontier-28.vlw │ │ │ │ │ │ ├── Latin-Hiragana-24.vlw │ │ │ │ │ │ └── Unicode-Test-72.vlw │ │ │ │ │ ├── SD_Card/ │ │ │ │ │ │ └── ESP32_Smooth_Font_SD/ │ │ │ │ │ │ ├── ESP32_Smooth_Font_SD.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ └── Final-Frontier-28.vlw │ │ │ │ │ └── SPIFFS/ │ │ │ │ │ ├── Font_Demo_1/ │ │ │ │ │ │ ├── Font_Demo_1.ino │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ ├── Font_Demo_2/ │ │ │ │ │ │ ├── Font_Demo_2.ino │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ ├── Font_Demo_3/ │ │ │ │ │ │ ├── Font_Demo_3.ino │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ ├── NotoSansBold36.vlw │ │ │ │ │ │ └── NotoSansMonoSCB20.vlw │ │ │ │ │ ├── Font_Demo_4/ │ │ │ │ │ │ ├── Font_Demo_4.ino │ │ │ │ │ │ ├── Notes.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ ├── Print_Smooth_Font/ │ │ │ │ │ │ ├── Print_Smooth_Font.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ └── Final-Frontier-28.vlw │ │ │ │ │ ├── Smooth_font_gradient/ │ │ │ │ │ │ ├── Smooth_font_gradient.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ ├── Smooth_font_reading_TFT/ │ │ │ │ │ │ ├── Smooth_font_reading_TFT.ino │ │ │ │ │ │ └── data/ │ │ │ │ │ │ ├── NotoSansBold15.vlw │ │ │ │ │ │ └── NotoSansBold36.vlw │ │ │ │ │ └── Unicode_test/ │ │ │ │ │ ├── SPIFFS_functions.ino │ │ │ │ │ ├── Unicode_test.ino │ │ │ │ │ └── data/ │ │ │ │ │ ├── Final-Frontier-28.vlw │ │ │ │ │ ├── Latin-Hiragana-24.vlw │ │ │ │ │ └── Unicode-Test-72.vlw │ │ │ │ ├── Smooth Graphics/ │ │ │ │ │ ├── Anti-aliased_Clock/ │ │ │ │ │ │ ├── Anti-aliased_Clock.ino │ │ │ │ │ │ ├── NTP_Time.h │ │ │ │ │ │ └── NotoSansBold15.h │ │ │ │ │ └── Smooth_Graphics_Demo/ │ │ │ │ │ └── Smooth_Graphics_Demo.ino │ │ │ │ ├── Sprite/ │ │ │ │ │ ├── Animated_dial/ │ │ │ │ │ │ ├── Animated_dial.ino │ │ │ │ │ │ ├── NotoSansBold36.h │ │ │ │ │ │ └── dial.h │ │ │ │ │ ├── One_bit_Sprite_Demo/ │ │ │ │ │ │ └── One_bit_Sprite_Demo.ino │ │ │ │ │ ├── One_bit_Yin_Yang/ │ │ │ │ │ │ └── One_bit_Yin_Yang.ino │ │ │ │ │ ├── Orrery/ │ │ │ │ │ │ ├── Orrery.ino │ │ │ │ │ │ ├── astronomy.c │ │ │ │ │ │ └── astronomy.h │ │ │ │ │ ├── Rotated_Sprite_1/ │ │ │ │ │ │ └── Rotated_Sprite_1.ino │ │ │ │ │ ├── Rotated_Sprite_2/ │ │ │ │ │ │ └── Rotated_Sprite_2.ino │ │ │ │ │ ├── Rotated_Sprite_3/ │ │ │ │ │ │ └── Rotated_Sprite_3.ino │ │ │ │ │ ├── Sprite_RLE_Font_test/ │ │ │ │ │ │ └── Sprite_RLE_Font_test.ino │ │ │ │ │ ├── Sprite_TFT_Rainbow/ │ │ │ │ │ │ └── Sprite_TFT_Rainbow.ino │ │ │ │ │ ├── Sprite_draw/ │ │ │ │ │ │ └── Sprite_draw.ino │ │ │ │ │ ├── Sprite_draw_4bit/ │ │ │ │ │ │ └── Sprite_draw_4bit.ino │ │ │ │ │ ├── Sprite_image_4bit/ │ │ │ │ │ │ ├── Sprite_image_4bit.ino │ │ │ │ │ │ ├── sample_images.h │ │ │ │ │ │ └── starImage.cpp │ │ │ │ │ ├── Sprite_scroll/ │ │ │ │ │ │ └── Sprite_scroll.ino │ │ │ │ │ ├── Sprite_scroll_16bit/ │ │ │ │ │ │ └── Sprite_scroll_16bit.ino │ │ │ │ │ ├── Sprite_scroll_1bit/ │ │ │ │ │ │ └── Sprite_scroll_1bit.ino │ │ │ │ │ ├── Sprite_scroll_4bit/ │ │ │ │ │ │ └── Sprite_scroll_4bit.ino │ │ │ │ │ ├── Sprite_scroll_8bit/ │ │ │ │ │ │ └── Sprite_scroll_8bit.ino │ │ │ │ │ ├── Sprite_scroll_wrap_1bit/ │ │ │ │ │ │ └── Sprite_scroll_wrap_1bit.ino │ │ │ │ │ ├── Transparent_Sprite_Demo/ │ │ │ │ │ │ └── Transparent_Sprite_Demo.ino │ │ │ │ │ └── Transparent_Sprite_Demo_4bit/ │ │ │ │ │ └── Transparent_Sprite_Demo_4bit.ino │ │ │ │ ├── Test and diagnostics/ │ │ │ │ │ ├── Colour_Test/ │ │ │ │ │ │ └── Colour_Test.ino │ │ │ │ │ ├── Read_User_Setup/ │ │ │ │ │ │ └── Read_User_Setup.ino │ │ │ │ │ ├── TFT_ReadWrite_Test/ │ │ │ │ │ │ └── TFT_ReadWrite_Test.ino │ │ │ │ │ └── Test_Touch_Controller/ │ │ │ │ │ └── Test_Touch_Controller.ino │ │ │ │ └── ePaper/ │ │ │ │ └── Floyd_Steinberg/ │ │ │ │ ├── EPD_Support.h │ │ │ │ ├── Floyd_Steinberg.ino │ │ │ │ ├── Floyd_Steinberg_BMP.ino │ │ │ │ └── SPIFFS.ino │ │ │ ├── keywords.txt │ │ │ ├── library.json │ │ │ ├── library.properties │ │ │ └── license.txt │ │ ├── TJpg_Decoder/ │ │ │ ├── README.md │ │ │ ├── examples/ │ │ │ │ ├── All_SPIFFS/ │ │ │ │ │ └── All_SPIFFS.ino │ │ │ │ ├── Flash_Jpg/ │ │ │ │ │ ├── Flash_Jpg.ino │ │ │ │ │ └── panda.h │ │ │ │ ├── Flash_Jpg_GFX/ │ │ │ │ │ ├── Flash_Jpg_GFX.ino │ │ │ │ │ └── panda.h │ │ │ │ ├── SD_Jpg/ │ │ │ │ │ └── SD_Jpg.ino │ │ │ │ ├── SPIFFS_Jpg/ │ │ │ │ │ └── SPIFFS_Jpg.ino │ │ │ │ └── Web_Jpg/ │ │ │ │ ├── List_SPIFFS.h │ │ │ │ ├── Web_Fetch.h │ │ │ │ └── Web_Jpg.ino │ │ │ ├── keywords.txt │ │ │ ├── library.json │ │ │ ├── library.properties │ │ │ ├── license.txt │ │ │ └── src/ │ │ │ ├── TJpg_Decoder.cpp │ │ │ ├── TJpg_Decoder.h │ │ │ ├── User_Config.h │ │ │ ├── tjpgd.c │ │ │ └── tjpgd.h │ │ └── lvgl/ │ │ ├── .codecov.yml │ │ ├── .editorconfig │ │ ├── .github/ │ │ │ ├── FUNDING.yml │ │ │ ├── ISSUE_TEMPLATE/ │ │ │ │ ├── bug-report.md │ │ │ │ ├── config.yml │ │ │ │ └── dev-discussion.md │ │ │ ├── auto-comment.yml │ │ │ ├── pull_request_template.md │ │ │ └── workflows/ │ │ │ ├── arduino.yml │ │ │ ├── build_micropython.yml │ │ │ ├── ccpp.yml │ │ │ ├── check_conf.yml │ │ │ ├── check_style.yml │ │ │ ├── close_old_issues.yml │ │ │ ├── compile_docs.yml │ │ │ ├── esp_upload_component.yml │ │ │ ├── main.yml │ │ │ └── release.yml │ │ ├── .gitignore │ │ ├── CMakeLists.txt │ │ ├── Kconfig │ │ ├── LICENCE.txt │ │ ├── README.md │ │ ├── README_zh.md │ │ ├── SConscript │ │ ├── component.mk │ │ ├── demos/ │ │ │ ├── README.md │ │ │ ├── benchmark/ │ │ │ │ ├── README.md │ │ │ │ ├── assets/ │ │ │ │ │ ├── img_benchmark_cogwheel_alpha16.c │ │ │ │ │ ├── img_benchmark_cogwheel_argb.c │ │ │ │ │ ├── img_benchmark_cogwheel_chroma_keyed.c │ │ │ │ │ ├── img_benchmark_cogwheel_indexed16.c │ │ │ │ │ ├── img_benchmark_cogwheel_rgb.c │ │ │ │ │ ├── lv_font_bechmark_montserrat_12_compr_az.c.c │ │ │ │ │ ├── lv_font_bechmark_montserrat_16_compr_az.c.c │ │ │ │ │ └── lv_font_bechmark_montserrat_28_compr_az.c.c │ │ │ │ ├── lv_demo_benchmark.c │ │ │ │ └── lv_demo_benchmark.h │ │ │ ├── keypad_encoder/ │ │ │ │ ├── README.md │ │ │ │ ├── lv_demo_keypad_encoder.c │ │ │ │ └── lv_demo_keypad_encoder.h │ │ │ ├── lv_demos.h │ │ │ ├── lv_demos.mk │ │ │ ├── music/ │ │ │ │ ├── README.md │ │ │ │ ├── assets/ │ │ │ │ │ ├── img_lv_demo_music_btn_corner_large.c │ │ │ │ │ ├── img_lv_demo_music_btn_list_pause.c │ │ │ │ │ ├── img_lv_demo_music_btn_list_pause_large.c │ │ │ │ │ ├── img_lv_demo_music_btn_list_play.c │ │ │ │ │ ├── img_lv_demo_music_btn_list_play_large.c │ │ │ │ │ ├── img_lv_demo_music_btn_loop.c │ │ │ │ │ ├── img_lv_demo_music_btn_loop_large.c │ │ │ │ │ ├── img_lv_demo_music_btn_next.c │ │ │ │ │ ├── img_lv_demo_music_btn_next_large.c │ │ │ │ │ ├── img_lv_demo_music_btn_pause.c │ │ │ │ │ ├── img_lv_demo_music_btn_pause_large.c │ │ │ │ │ ├── img_lv_demo_music_btn_play.c │ │ │ │ │ ├── img_lv_demo_music_btn_play_large.c │ │ │ │ │ ├── img_lv_demo_music_btn_prev.c │ │ │ │ │ ├── img_lv_demo_music_btn_prev_large.c │ │ │ │ │ ├── img_lv_demo_music_btn_rnd.c │ │ │ │ │ ├── img_lv_demo_music_btn_rnd_large.c │ │ │ │ │ ├── img_lv_demo_music_corner_left.c │ │ │ │ │ ├── img_lv_demo_music_corner_left_large.c │ │ │ │ │ ├── img_lv_demo_music_corner_right.c │ │ │ │ │ ├── img_lv_demo_music_corner_right_large.c │ │ │ │ │ ├── img_lv_demo_music_cover_1.c │ │ │ │ │ ├── img_lv_demo_music_cover_1_large.c │ │ │ │ │ ├── img_lv_demo_music_cover_2.c │ │ │ │ │ ├── img_lv_demo_music_cover_2_large.c │ │ │ │ │ ├── img_lv_demo_music_cover_3.c │ │ │ │ │ ├── img_lv_demo_music_cover_3_large.c │ │ │ │ │ ├── img_lv_demo_music_icon_1.c │ │ │ │ │ ├── img_lv_demo_music_icon_1_large.c │ │ │ │ │ ├── img_lv_demo_music_icon_2.c │ │ │ │ │ ├── img_lv_demo_music_icon_2_large.c │ │ │ │ │ ├── img_lv_demo_music_icon_3.c │ │ │ │ │ ├── img_lv_demo_music_icon_3_large.c │ │ │ │ │ ├── img_lv_demo_music_icon_4.c │ │ │ │ │ ├── img_lv_demo_music_icon_4_large.c │ │ │ │ │ ├── img_lv_demo_music_list_border.c │ │ │ │ │ ├── img_lv_demo_music_list_border_large.c │ │ │ │ │ ├── img_lv_demo_music_logo.c │ │ │ │ │ ├── img_lv_demo_music_slider_knob.c │ │ │ │ │ ├── img_lv_demo_music_slider_knob_large.c │ │ │ │ │ ├── img_lv_demo_music_wave_bottom.c │ │ │ │ │ ├── img_lv_demo_music_wave_bottom_large.c │ │ │ │ │ ├── img_lv_demo_music_wave_top.c │ │ │ │ │ ├── img_lv_demo_music_wave_top_large.c │ │ │ │ │ ├── spectrum.py │ │ │ │ │ ├── spectrum_1.h │ │ │ │ │ ├── spectrum_2.h │ │ │ │ │ └── spectrum_3.h │ │ │ │ ├── lv_demo_music.c │ │ │ │ ├── lv_demo_music.h │ │ │ │ ├── lv_demo_music_list.c │ │ │ │ ├── lv_demo_music_list.h │ │ │ │ ├── lv_demo_music_main.c │ │ │ │ └── lv_demo_music_main.h │ │ │ ├── stress/ │ │ │ │ ├── README.md │ │ │ │ ├── assets/ │ │ │ │ │ ├── lv_font_montserrat_12_compr_az.c │ │ │ │ │ ├── lv_font_montserrat_16_compr_az.c │ │ │ │ │ └── lv_font_montserrat_28_compr_az.c │ │ │ │ ├── lv_demo_stress.c │ │ │ │ └── lv_demo_stress.h │ │ │ └── widgets/ │ │ │ ├── assets/ │ │ │ │ ├── img_clothes.c │ │ │ │ ├── img_demo_widgets_avatar.c │ │ │ │ └── img_lvgl_logo.c │ │ │ ├── lv_demo_widgets.c │ │ │ ├── lv_demo_widgets.h │ │ │ └── lv_demo_widgets.py │ │ ├── docs/ │ │ │ ├── CHANGELOG.md │ │ │ ├── CODE_OF_CONDUCT.md │ │ │ ├── CODING_STYLE.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── ROADMAP.md │ │ │ ├── _ext/ │ │ │ │ └── lv_example.py │ │ │ ├── _static/ │ │ │ │ └── css/ │ │ │ │ └── custom.css │ │ │ ├── _templates/ │ │ │ │ ├── layout.html │ │ │ │ └── page.html │ │ │ ├── build.py │ │ │ ├── conf.py │ │ │ ├── example_list.py │ │ │ ├── get-started/ │ │ │ │ ├── arduino.md │ │ │ │ ├── cmake.md │ │ │ │ ├── espressif.md │ │ │ │ ├── index.md │ │ │ │ ├── micropython.md │ │ │ │ ├── nuttx.md │ │ │ │ ├── nxp.md │ │ │ │ ├── pc-simulator.md │ │ │ │ ├── quick-overview.md │ │ │ │ ├── rt-thread.md │ │ │ │ ├── stm32.md │ │ │ │ └── tasmota-berry.md │ │ │ ├── header.rst │ │ │ ├── index.md │ │ │ ├── intro/ │ │ │ │ └── index.md │ │ │ ├── layouts/ │ │ │ │ ├── flex.md │ │ │ │ ├── grid.md │ │ │ │ └── index.md │ │ │ ├── libs/ │ │ │ │ ├── bmp.md │ │ │ │ ├── ffmpeg.md │ │ │ │ ├── freetype.md │ │ │ │ ├── fsdrv.md │ │ │ │ ├── gif.md │ │ │ │ ├── index.md │ │ │ │ ├── png.md │ │ │ │ ├── qrcode.md │ │ │ │ ├── rlottie.md │ │ │ │ └── sjpg.md │ │ │ ├── others/ │ │ │ │ ├── gridnav.md │ │ │ │ ├── index.md │ │ │ │ ├── monkey.md │ │ │ │ └── snapshot.md │ │ │ ├── overview/ │ │ │ │ ├── animation.md │ │ │ │ ├── color.md │ │ │ │ ├── coords.md │ │ │ │ ├── display.md │ │ │ │ ├── drawing.md │ │ │ │ ├── event.md │ │ │ │ ├── file-system.md │ │ │ │ ├── font.md │ │ │ │ ├── image.md │ │ │ │ ├── indev.md │ │ │ │ ├── index.md │ │ │ │ ├── layer.md │ │ │ │ ├── new_widget.md │ │ │ │ ├── object.md │ │ │ │ ├── scroll.md │ │ │ │ ├── style-props.md │ │ │ │ ├── style.md │ │ │ │ └── timer.md │ │ │ ├── porting/ │ │ │ │ ├── display.md │ │ │ │ ├── gpu.md │ │ │ │ ├── indev.md │ │ │ │ ├── index.md │ │ │ │ ├── log.md │ │ │ │ ├── os.md │ │ │ │ ├── project.md │ │ │ │ ├── sleep.md │ │ │ │ ├── task-handler.md │ │ │ │ └── tick.md │ │ │ ├── requirements.txt │ │ │ └── widgets/ │ │ │ ├── core/ │ │ │ │ ├── arc.md │ │ │ │ ├── bar.md │ │ │ │ ├── btn.md │ │ │ │ ├── btnmatrix.md │ │ │ │ ├── canvas.md │ │ │ │ ├── checkbox.md │ │ │ │ ├── dropdown.md │ │ │ │ ├── img.md │ │ │ │ ├── index.md │ │ │ │ ├── label.md │ │ │ │ ├── line.md │ │ │ │ ├── roller.md │ │ │ │ ├── slider.md │ │ │ │ ├── switch.md │ │ │ │ ├── table.md │ │ │ │ └── textarea.md │ │ │ ├── extra/ │ │ │ │ ├── animimg.md │ │ │ │ ├── calendar.md │ │ │ │ ├── chart.md │ │ │ │ ├── colorwheel.md │ │ │ │ ├── imgbtn.md │ │ │ │ ├── index.md │ │ │ │ ├── keyboard.md │ │ │ │ ├── led.md │ │ │ │ ├── list.md │ │ │ │ ├── menu.md │ │ │ │ ├── meter.md │ │ │ │ ├── msgbox.md │ │ │ │ ├── span.md │ │ │ │ ├── spinbox.md │ │ │ │ ├── spinner.md │ │ │ │ ├── tabview.md │ │ │ │ ├── tileview.md │ │ │ │ └── win.md │ │ │ ├── index.md │ │ │ └── obj.md │ │ ├── env_support/ │ │ │ ├── cmake/ │ │ │ │ ├── custom.cmake │ │ │ │ ├── esp.cmake │ │ │ │ ├── micropython.cmake │ │ │ │ └── zephyr.cmake │ │ │ ├── cmsis-pack/ │ │ │ │ ├── LVGL.lvgl.1.0.0.pack │ │ │ │ ├── LVGL.lvgl.pdsc │ │ │ │ ├── README.md │ │ │ │ ├── gen_pack.sh │ │ │ │ ├── lv_cmsis_pack.txt │ │ │ │ └── lv_conf_cmsis.h │ │ │ ├── rt-thread/ │ │ │ │ ├── SConscript │ │ │ │ ├── lv_rt_thread_conf.h │ │ │ │ └── lv_rt_thread_port.c │ │ │ └── zephyr/ │ │ │ └── module.yml │ │ ├── examples/ │ │ │ ├── anim/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_anim.h │ │ │ │ ├── lv_example_anim_1.c │ │ │ │ ├── lv_example_anim_1.py │ │ │ │ ├── lv_example_anim_2.c │ │ │ │ ├── lv_example_anim_2.py │ │ │ │ ├── lv_example_anim_3.c │ │ │ │ ├── lv_example_anim_3.py │ │ │ │ ├── lv_example_anim_timeline_1.c │ │ │ │ └── lv_example_anim_timeline_1.py │ │ │ ├── arduino/ │ │ │ │ └── LVGL_Arduino/ │ │ │ │ └── LVGL_Arduino.ino │ │ │ ├── assets/ │ │ │ │ ├── animimg001.c │ │ │ │ ├── animimg002.c │ │ │ │ ├── animimg003.c │ │ │ │ ├── font/ │ │ │ │ │ ├── lv_font_simsun_16_cjk.fnt │ │ │ │ │ ├── montserrat-16.fnt │ │ │ │ │ └── montserrat-22.fnt │ │ │ │ ├── img_caret_down.c │ │ │ │ ├── img_cogwheel_alpha16.c │ │ │ │ ├── img_cogwheel_argb.c │ │ │ │ ├── img_cogwheel_chroma_keyed.c │ │ │ │ ├── img_cogwheel_indexed16.c │ │ │ │ ├── img_cogwheel_rgb.c │ │ │ │ ├── img_hand.c │ │ │ │ ├── img_skew_strip.c │ │ │ │ ├── img_skew_strip_80x20_argb8888.fnt │ │ │ │ ├── img_star.c │ │ │ │ ├── imgbtn_left.c │ │ │ │ ├── imgbtn_mid.c │ │ │ │ └── imgbtn_right.c │ │ │ ├── event/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_event.h │ │ │ │ ├── lv_example_event_1.c │ │ │ │ ├── lv_example_event_1.py │ │ │ │ ├── lv_example_event_2.c │ │ │ │ ├── lv_example_event_2.py │ │ │ │ ├── lv_example_event_3.c │ │ │ │ ├── lv_example_event_3.py │ │ │ │ └── lv_example_event_4.c │ │ │ ├── examples.mk │ │ │ ├── get_started/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_get_started.h │ │ │ │ ├── lv_example_get_started_1.c │ │ │ │ ├── lv_example_get_started_1.py │ │ │ │ ├── lv_example_get_started_2.c │ │ │ │ ├── lv_example_get_started_2.py │ │ │ │ ├── lv_example_get_started_3.c │ │ │ │ └── lv_example_get_started_3.py │ │ │ ├── header.py │ │ │ ├── layouts/ │ │ │ │ ├── flex/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_flex.h │ │ │ │ │ ├── lv_example_flex_1.c │ │ │ │ │ ├── lv_example_flex_1.py │ │ │ │ │ ├── lv_example_flex_2.c │ │ │ │ │ ├── lv_example_flex_2.py │ │ │ │ │ ├── lv_example_flex_3.c │ │ │ │ │ ├── lv_example_flex_3.py │ │ │ │ │ ├── lv_example_flex_4.c │ │ │ │ │ ├── lv_example_flex_4.py │ │ │ │ │ ├── lv_example_flex_5.c │ │ │ │ │ ├── lv_example_flex_5.py │ │ │ │ │ ├── lv_example_flex_6.c │ │ │ │ │ └── lv_example_flex_6.py │ │ │ │ ├── grid/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_grid.h │ │ │ │ │ ├── lv_example_grid_1.c │ │ │ │ │ ├── lv_example_grid_1.py │ │ │ │ │ ├── lv_example_grid_2.c │ │ │ │ │ ├── lv_example_grid_2.py │ │ │ │ │ ├── lv_example_grid_3.c │ │ │ │ │ ├── lv_example_grid_3.py │ │ │ │ │ ├── lv_example_grid_4.c │ │ │ │ │ ├── lv_example_grid_4.py │ │ │ │ │ ├── lv_example_grid_5.c │ │ │ │ │ ├── lv_example_grid_5.py │ │ │ │ │ ├── lv_example_grid_6.c │ │ │ │ │ └── lv_example_grid_6.py │ │ │ │ └── lv_example_layout.h │ │ │ ├── libs/ │ │ │ │ ├── bmp/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_bmp.h │ │ │ │ │ ├── lv_example_bmp_1.c │ │ │ │ │ └── lv_example_bmp_1.py │ │ │ │ ├── ffmpeg/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_ffmpeg.h │ │ │ │ │ ├── lv_example_ffmpeg_1.c │ │ │ │ │ └── lv_example_ffmpeg_2.c │ │ │ │ ├── freetype/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_freetype.h │ │ │ │ │ ├── lv_example_freetype_1.c │ │ │ │ │ └── lv_example_freetype_1.py │ │ │ │ ├── gif/ │ │ │ │ │ ├── img_bulb_gif.c │ │ │ │ │ ├── img_bulb_gif.py │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_gif.h │ │ │ │ │ ├── lv_example_gif_1.c │ │ │ │ │ └── lv_example_gif_1.py │ │ │ │ ├── lv_example_libs.h │ │ │ │ ├── png/ │ │ │ │ │ ├── img_wink_png.c │ │ │ │ │ ├── img_wink_png.py │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_png.h │ │ │ │ │ ├── lv_example_png_1.c │ │ │ │ │ └── lv_example_png_1.py │ │ │ │ ├── qrcode/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_qrcode.h │ │ │ │ │ ├── lv_example_qrcode_1.c │ │ │ │ │ └── lv_example_qrcode_1.py │ │ │ │ ├── rlottie/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_rlottie.h │ │ │ │ │ ├── lv_example_rlottie_1.c │ │ │ │ │ ├── lv_example_rlottie_1.py │ │ │ │ │ ├── lv_example_rlottie_2.c │ │ │ │ │ ├── lv_example_rlottie_2.py │ │ │ │ │ ├── lv_example_rlottie_approve.c │ │ │ │ │ ├── lv_example_rlottie_approve.json │ │ │ │ │ └── lv_example_rlottie_approve.py │ │ │ │ └── sjpg/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_sjpg.h │ │ │ │ ├── lv_example_sjpg_1.c │ │ │ │ ├── lv_example_sjpg_1.py │ │ │ │ └── small_image.sjpg │ │ │ ├── lv_examples.h │ │ │ ├── others/ │ │ │ │ ├── gridnav/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_gridnav.h │ │ │ │ │ ├── lv_example_gridnav_1.c │ │ │ │ │ ├── lv_example_gridnav_2.c │ │ │ │ │ ├── lv_example_gridnav_3.c │ │ │ │ │ └── lv_example_gridnav_4.c │ │ │ │ ├── lv_example_others.h │ │ │ │ ├── monkey/ │ │ │ │ │ ├── index.rst │ │ │ │ │ ├── lv_example_monkey.h │ │ │ │ │ ├── lv_example_monkey_1.c │ │ │ │ │ ├── lv_example_monkey_2.c │ │ │ │ │ └── lv_example_monkey_3.c │ │ │ │ └── snapshot/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_snapshot.h │ │ │ │ ├── lv_example_snapshot_1.c │ │ │ │ └── lv_example_snapshot_1.py │ │ │ ├── porting/ │ │ │ │ ├── lv_port_disp_template.c │ │ │ │ ├── lv_port_disp_template.h │ │ │ │ ├── lv_port_fs_template.c │ │ │ │ ├── lv_port_fs_template.h │ │ │ │ ├── lv_port_indev_template.c │ │ │ │ └── lv_port_indev_template.h │ │ │ ├── scroll/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_scroll.h │ │ │ │ ├── lv_example_scroll_1.c │ │ │ │ ├── lv_example_scroll_1.py │ │ │ │ ├── lv_example_scroll_2.c │ │ │ │ ├── lv_example_scroll_2.py │ │ │ │ ├── lv_example_scroll_3.c │ │ │ │ ├── lv_example_scroll_3.py │ │ │ │ ├── lv_example_scroll_4.c │ │ │ │ ├── lv_example_scroll_4.py │ │ │ │ ├── lv_example_scroll_5.c │ │ │ │ ├── lv_example_scroll_5.py │ │ │ │ ├── lv_example_scroll_6.c │ │ │ │ └── lv_example_scroll_6.py │ │ │ ├── styles/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_style.h │ │ │ │ ├── lv_example_style_1.c │ │ │ │ ├── lv_example_style_1.py │ │ │ │ ├── lv_example_style_10.c │ │ │ │ ├── lv_example_style_10.py │ │ │ │ ├── lv_example_style_11.c │ │ │ │ ├── lv_example_style_11.py │ │ │ │ ├── lv_example_style_12.c │ │ │ │ ├── lv_example_style_12.py │ │ │ │ ├── lv_example_style_13.c │ │ │ │ ├── lv_example_style_13.py │ │ │ │ ├── lv_example_style_14.c │ │ │ │ ├── lv_example_style_14.py │ │ │ │ ├── lv_example_style_2.c │ │ │ │ ├── lv_example_style_2.py │ │ │ │ ├── lv_example_style_3.c │ │ │ │ ├── lv_example_style_3.py │ │ │ │ ├── lv_example_style_4.c │ │ │ │ ├── lv_example_style_4.py │ │ │ │ ├── lv_example_style_5.c │ │ │ │ ├── lv_example_style_5.py │ │ │ │ ├── lv_example_style_6.c │ │ │ │ ├── lv_example_style_6.py │ │ │ │ ├── lv_example_style_7.c │ │ │ │ ├── lv_example_style_7.py │ │ │ │ ├── lv_example_style_8.c │ │ │ │ ├── lv_example_style_8.py │ │ │ │ ├── lv_example_style_9.c │ │ │ │ └── lv_example_style_9.py │ │ │ ├── test_ex.sh │ │ │ └── widgets/ │ │ │ ├── animimg/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_animimg_1.c │ │ │ │ └── lv_example_animimg_1.py │ │ │ ├── arc/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_arc_1.c │ │ │ │ ├── lv_example_arc_1.py │ │ │ │ ├── lv_example_arc_2.c │ │ │ │ └── lv_example_arc_2.py │ │ │ ├── bar/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_bar_1.c │ │ │ │ ├── lv_example_bar_1.py │ │ │ │ ├── lv_example_bar_2.c │ │ │ │ ├── lv_example_bar_2.py │ │ │ │ ├── lv_example_bar_3.c │ │ │ │ ├── lv_example_bar_3.py │ │ │ │ ├── lv_example_bar_4.c │ │ │ │ ├── lv_example_bar_4.py │ │ │ │ ├── lv_example_bar_5.c │ │ │ │ ├── lv_example_bar_5.py │ │ │ │ ├── lv_example_bar_6.c │ │ │ │ ├── lv_example_bar_6.py │ │ │ │ └── test.py │ │ │ ├── btn/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_btn_1.c │ │ │ │ ├── lv_example_btn_1.py │ │ │ │ ├── lv_example_btn_2.c │ │ │ │ ├── lv_example_btn_2.py │ │ │ │ ├── lv_example_btn_3.c │ │ │ │ └── lv_example_btn_3.py │ │ │ ├── btnmatrix/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_btnmatrix_1.c │ │ │ │ ├── lv_example_btnmatrix_1.py │ │ │ │ ├── lv_example_btnmatrix_2.c │ │ │ │ ├── lv_example_btnmatrix_2.py │ │ │ │ ├── lv_example_btnmatrix_3.c │ │ │ │ └── lv_example_btnmatrix_3.py │ │ │ ├── calendar/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_calendar_1.c │ │ │ │ └── lv_example_calendar_1.py │ │ │ ├── canvas/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_canvas_1.c │ │ │ │ ├── lv_example_canvas_1.py │ │ │ │ ├── lv_example_canvas_2.c │ │ │ │ └── lv_example_canvas_2.py │ │ │ ├── chart/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_chart_1.c │ │ │ │ ├── lv_example_chart_1.py │ │ │ │ ├── lv_example_chart_2.c │ │ │ │ ├── lv_example_chart_2.py │ │ │ │ ├── lv_example_chart_3.c │ │ │ │ ├── lv_example_chart_3.py │ │ │ │ ├── lv_example_chart_4.c │ │ │ │ ├── lv_example_chart_4.py │ │ │ │ ├── lv_example_chart_5.c │ │ │ │ ├── lv_example_chart_5.py │ │ │ │ ├── lv_example_chart_6.c │ │ │ │ ├── lv_example_chart_6.py │ │ │ │ ├── lv_example_chart_7.c │ │ │ │ ├── lv_example_chart_7.py │ │ │ │ ├── lv_example_chart_8.c │ │ │ │ ├── lv_example_chart_8.py │ │ │ │ ├── lv_example_chart_9.c │ │ │ │ └── lv_example_chart_9.py │ │ │ ├── checkbox/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_checkbox_1.c │ │ │ │ ├── lv_example_checkbox_1.py │ │ │ │ └── lv_example_checkbox_2.c │ │ │ ├── colorwheel/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_colorwheel_1.c │ │ │ │ └── lv_example_colorwheel_1.py │ │ │ ├── dropdown/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_dropdown_1.c │ │ │ │ ├── lv_example_dropdown_1.py │ │ │ │ ├── lv_example_dropdown_2.c │ │ │ │ ├── lv_example_dropdown_2.py │ │ │ │ ├── lv_example_dropdown_3.c │ │ │ │ └── lv_example_dropdown_3.py │ │ │ ├── img/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_img_1.c │ │ │ │ ├── lv_example_img_1.py │ │ │ │ ├── lv_example_img_2.c │ │ │ │ ├── lv_example_img_2.py │ │ │ │ ├── lv_example_img_3.c │ │ │ │ ├── lv_example_img_3.py │ │ │ │ ├── lv_example_img_4.c │ │ │ │ └── lv_example_img_4.py │ │ │ ├── imgbtn/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_imgbtn_1.c │ │ │ │ └── lv_example_imgbtn_1.py │ │ │ ├── keyboard/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_keyboard_1.c │ │ │ │ └── lv_example_keyboard_1.py │ │ │ ├── label/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_label_1.c │ │ │ │ ├── lv_example_label_1.py │ │ │ │ ├── lv_example_label_2.c │ │ │ │ ├── lv_example_label_2.py │ │ │ │ ├── lv_example_label_3.c │ │ │ │ ├── lv_example_label_3.py │ │ │ │ └── lv_example_label_4.c │ │ │ ├── led/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_led_1.c │ │ │ │ └── lv_example_led_1.py │ │ │ ├── line/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_line_1.c │ │ │ │ └── lv_example_line_1.py │ │ │ ├── list/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_list_1.c │ │ │ │ ├── lv_example_list_1.py │ │ │ │ ├── lv_example_list_2.c │ │ │ │ ├── lv_example_list_2.py │ │ │ │ └── test.py │ │ │ ├── lv_example_widgets.h │ │ │ ├── menu/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_menu_1.c │ │ │ │ ├── lv_example_menu_1.py │ │ │ │ ├── lv_example_menu_2.c │ │ │ │ ├── lv_example_menu_2.py │ │ │ │ ├── lv_example_menu_3.c │ │ │ │ ├── lv_example_menu_3.py │ │ │ │ ├── lv_example_menu_4.c │ │ │ │ ├── lv_example_menu_4.py │ │ │ │ └── lv_example_menu_5.c │ │ │ ├── meter/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_meter_1.c │ │ │ │ ├── lv_example_meter_1.py │ │ │ │ ├── lv_example_meter_2.c │ │ │ │ ├── lv_example_meter_2.py │ │ │ │ ├── lv_example_meter_3.c │ │ │ │ ├── lv_example_meter_3.py │ │ │ │ ├── lv_example_meter_4.c │ │ │ │ └── lv_example_meter_4.py │ │ │ ├── msgbox/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_msgbox_1.c │ │ │ │ └── lv_example_msgbox_1.py │ │ │ ├── obj/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_obj_1.c │ │ │ │ ├── lv_example_obj_1.py │ │ │ │ ├── lv_example_obj_2.c │ │ │ │ └── lv_example_obj_2.py │ │ │ ├── roller/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_roller_1.c │ │ │ │ ├── lv_example_roller_1.py │ │ │ │ ├── lv_example_roller_2.c │ │ │ │ ├── lv_example_roller_2.py │ │ │ │ ├── lv_example_roller_3.c │ │ │ │ └── lv_example_roller_3.py │ │ │ ├── slider/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_slider_1.c │ │ │ │ ├── lv_example_slider_1.py │ │ │ │ ├── lv_example_slider_2.c │ │ │ │ ├── lv_example_slider_2.py │ │ │ │ ├── lv_example_slider_3.c │ │ │ │ └── lv_example_slider_3.py │ │ │ ├── span/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_span_1.c │ │ │ │ └── lv_example_span_1.py │ │ │ ├── spinbox/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_spinbox_1.c │ │ │ │ └── lv_example_spinbox_1.py │ │ │ ├── spinner/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_spinner_1.c │ │ │ │ └── lv_example_spinner_1.py │ │ │ ├── switch/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_switch_1.c │ │ │ │ └── lv_example_switch_1.py │ │ │ ├── table/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_table_1.c │ │ │ │ ├── lv_example_table_1.py │ │ │ │ ├── lv_example_table_2.c │ │ │ │ └── lv_example_table_2.py │ │ │ ├── tabview/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_tabview_1.c │ │ │ │ ├── lv_example_tabview_1.py │ │ │ │ ├── lv_example_tabview_2.c │ │ │ │ └── lv_example_tabview_2.py │ │ │ ├── textarea/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_textarea_1.c │ │ │ │ ├── lv_example_textarea_1.py │ │ │ │ ├── lv_example_textarea_2.c │ │ │ │ ├── lv_example_textarea_2.py │ │ │ │ ├── lv_example_textarea_3.c │ │ │ │ └── lv_example_textarea_3.py │ │ │ ├── tileview/ │ │ │ │ ├── index.rst │ │ │ │ ├── lv_example_tileview_1.c │ │ │ │ └── lv_example_tileview_1.py │ │ │ └── win/ │ │ │ ├── index.rst │ │ │ ├── lv_example_win_1.c │ │ │ └── lv_example_win_1.py │ │ ├── idf_component.yml │ │ ├── library.json │ │ ├── library.properties │ │ ├── lv_conf.h │ │ ├── lv_conf_template.h │ │ ├── lvgl.h │ │ ├── lvgl.mk │ │ ├── scripts/ │ │ │ ├── .gitignore │ │ │ ├── Doxyfile │ │ │ ├── build_html_examples.sh │ │ │ ├── built_in_font/ │ │ │ │ ├── built_in_font_gen.py │ │ │ │ └── generate_all.py │ │ │ ├── changelog-template.hbs │ │ │ ├── changelog_gen.sh │ │ │ ├── code-format.cfg │ │ │ ├── code-format.py │ │ │ ├── cppcheck_run.sh │ │ │ ├── filetohex.py │ │ │ ├── find_version.sh │ │ │ ├── genexamplelist.sh │ │ │ ├── infer_run.sh │ │ │ ├── install-prerequisites.sh │ │ │ ├── jpg_to_sjpg.py │ │ │ ├── lv_conf_internal_gen.py │ │ │ ├── release/ │ │ │ │ ├── com.py │ │ │ │ ├── commits.txt │ │ │ │ ├── patch.py │ │ │ │ └── release.py │ │ │ └── style_api_gen.py │ │ ├── src/ │ │ │ ├── core/ │ │ │ │ ├── lv_core.mk │ │ │ │ ├── lv_disp.c │ │ │ │ ├── lv_disp.h │ │ │ │ ├── lv_event.c │ │ │ │ ├── lv_event.h │ │ │ │ ├── lv_group.c │ │ │ │ ├── lv_group.h │ │ │ │ ├── lv_indev.c │ │ │ │ ├── lv_indev.h │ │ │ │ ├── lv_indev_scroll.c │ │ │ │ ├── lv_indev_scroll.h │ │ │ │ ├── lv_obj.c │ │ │ │ ├── lv_obj.h │ │ │ │ ├── lv_obj_class.c │ │ │ │ ├── lv_obj_class.h │ │ │ │ ├── lv_obj_draw.c │ │ │ │ ├── lv_obj_draw.h │ │ │ │ ├── lv_obj_pos.c │ │ │ │ ├── lv_obj_pos.h │ │ │ │ ├── lv_obj_scroll.c │ │ │ │ ├── lv_obj_scroll.h │ │ │ │ ├── lv_obj_style.c │ │ │ │ ├── lv_obj_style.h │ │ │ │ ├── lv_obj_style_gen.c │ │ │ │ ├── lv_obj_style_gen.h │ │ │ │ ├── lv_obj_tree.c │ │ │ │ ├── lv_obj_tree.h │ │ │ │ ├── lv_refr.c │ │ │ │ ├── lv_refr.h │ │ │ │ ├── lv_theme.c │ │ │ │ └── lv_theme.h │ │ │ ├── draw/ │ │ │ │ ├── lv_draw.c │ │ │ │ ├── lv_draw.h │ │ │ │ ├── lv_draw.mk │ │ │ │ ├── lv_draw_arc.c │ │ │ │ ├── lv_draw_arc.h │ │ │ │ ├── lv_draw_img.c │ │ │ │ ├── lv_draw_img.h │ │ │ │ ├── lv_draw_label.c │ │ │ │ ├── lv_draw_label.h │ │ │ │ ├── lv_draw_line.c │ │ │ │ ├── lv_draw_line.h │ │ │ │ ├── lv_draw_mask.c │ │ │ │ ├── lv_draw_mask.h │ │ │ │ ├── lv_draw_rect.c │ │ │ │ ├── lv_draw_rect.h │ │ │ │ ├── lv_draw_triangle.c │ │ │ │ ├── lv_draw_triangle.h │ │ │ │ ├── lv_img_buf.c │ │ │ │ ├── lv_img_buf.h │ │ │ │ ├── lv_img_cache.c │ │ │ │ ├── lv_img_cache.h │ │ │ │ ├── lv_img_decoder.c │ │ │ │ ├── lv_img_decoder.h │ │ │ │ ├── nxp_pxp/ │ │ │ │ │ ├── lv_gpu_nxp_pxp.c │ │ │ │ │ ├── lv_gpu_nxp_pxp.h │ │ │ │ │ ├── lv_gpu_nxp_pxp_osa.c │ │ │ │ │ └── lv_gpu_nxp_pxp_osa.h │ │ │ │ ├── nxp_vglite/ │ │ │ │ │ ├── lv_gpu_nxp_vglite.c │ │ │ │ │ └── lv_gpu_nxp_vglite.h │ │ │ │ ├── sdl/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── lv_draw_sdl.c │ │ │ │ │ ├── lv_draw_sdl.h │ │ │ │ │ ├── lv_draw_sdl.mk │ │ │ │ │ ├── lv_draw_sdl_arc.c │ │ │ │ │ ├── lv_draw_sdl_bg.c │ │ │ │ │ ├── lv_draw_sdl_composite.c │ │ │ │ │ ├── lv_draw_sdl_composite.h │ │ │ │ │ ├── lv_draw_sdl_img.c │ │ │ │ │ ├── lv_draw_sdl_img.h │ │ │ │ │ ├── lv_draw_sdl_label.c │ │ │ │ │ ├── lv_draw_sdl_line.c │ │ │ │ │ ├── lv_draw_sdl_mask.c │ │ │ │ │ ├── lv_draw_sdl_mask.h │ │ │ │ │ ├── lv_draw_sdl_polygon.c │ │ │ │ │ ├── lv_draw_sdl_priv.h │ │ │ │ │ ├── lv_draw_sdl_rect.c │ │ │ │ │ ├── lv_draw_sdl_rect.h │ │ │ │ │ ├── lv_draw_sdl_stack_blur.c │ │ │ │ │ ├── lv_draw_sdl_stack_blur.h │ │ │ │ │ ├── lv_draw_sdl_texture_cache.c │ │ │ │ │ ├── lv_draw_sdl_texture_cache.h │ │ │ │ │ ├── lv_draw_sdl_utils.c │ │ │ │ │ └── lv_draw_sdl_utils.h │ │ │ │ ├── stm32_dma2d/ │ │ │ │ │ ├── lv_gpu_stm32_dma2d.c │ │ │ │ │ └── lv_gpu_stm32_dma2d.h │ │ │ │ └── sw/ │ │ │ │ ├── lv_draw_sw.c │ │ │ │ ├── lv_draw_sw.h │ │ │ │ ├── lv_draw_sw.mk │ │ │ │ ├── lv_draw_sw_arc.c │ │ │ │ ├── lv_draw_sw_blend.c │ │ │ │ ├── lv_draw_sw_blend.h │ │ │ │ ├── lv_draw_sw_dither.c │ │ │ │ ├── lv_draw_sw_dither.h │ │ │ │ ├── lv_draw_sw_gradient.c │ │ │ │ ├── lv_draw_sw_gradient.h │ │ │ │ ├── lv_draw_sw_img.c │ │ │ │ ├── lv_draw_sw_letter.c │ │ │ │ ├── lv_draw_sw_line.c │ │ │ │ ├── lv_draw_sw_polygon.c │ │ │ │ └── lv_draw_sw_rect.c │ │ │ ├── extra/ │ │ │ │ ├── README.md │ │ │ │ ├── extra.mk │ │ │ │ ├── layouts/ │ │ │ │ │ ├── flex/ │ │ │ │ │ │ ├── lv_flex.c │ │ │ │ │ │ └── lv_flex.h │ │ │ │ │ ├── grid/ │ │ │ │ │ │ ├── lv_grid.c │ │ │ │ │ │ └── lv_grid.h │ │ │ │ │ └── lv_layouts.h │ │ │ │ ├── libs/ │ │ │ │ │ ├── bmp/ │ │ │ │ │ │ ├── lv_bmp.c │ │ │ │ │ │ └── lv_bmp.h │ │ │ │ │ ├── ffmpeg/ │ │ │ │ │ │ ├── lv_ffmpeg.c │ │ │ │ │ │ └── lv_ffmpeg.h │ │ │ │ │ ├── freetype/ │ │ │ │ │ │ ├── lv_freetype.c │ │ │ │ │ │ └── lv_freetype.h │ │ │ │ │ ├── fsdrv/ │ │ │ │ │ │ ├── lv_fs_fatfs.c │ │ │ │ │ │ ├── lv_fs_posix.c │ │ │ │ │ │ ├── lv_fs_stdio.c │ │ │ │ │ │ ├── lv_fs_win32.c │ │ │ │ │ │ └── lv_fsdrv.h │ │ │ │ │ ├── gif/ │ │ │ │ │ │ ├── gifdec.c │ │ │ │ │ │ ├── gifdec.h │ │ │ │ │ │ ├── lv_gif.c │ │ │ │ │ │ └── lv_gif.h │ │ │ │ │ ├── lv_libs.h │ │ │ │ │ ├── png/ │ │ │ │ │ │ ├── lodepng.c │ │ │ │ │ │ ├── lodepng.h │ │ │ │ │ │ ├── lv_png.c │ │ │ │ │ │ └── lv_png.h │ │ │ │ │ ├── qrcode/ │ │ │ │ │ │ ├── lv_qrcode.c │ │ │ │ │ │ ├── lv_qrcode.h │ │ │ │ │ │ ├── qrcodegen.c │ │ │ │ │ │ └── qrcodegen.h │ │ │ │ │ ├── rlottie/ │ │ │ │ │ │ ├── lv_rlottie.c │ │ │ │ │ │ └── lv_rlottie.h │ │ │ │ │ └── sjpg/ │ │ │ │ │ ├── lv_sjpg.c │ │ │ │ │ ├── lv_sjpg.h │ │ │ │ │ ├── tjpgd.c │ │ │ │ │ ├── tjpgd.h │ │ │ │ │ └── tjpgdcnf.h │ │ │ │ ├── lv_extra.c │ │ │ │ ├── lv_extra.h │ │ │ │ ├── others/ │ │ │ │ │ ├── gridnav/ │ │ │ │ │ │ ├── lv_gridnav.c │ │ │ │ │ │ └── lv_gridnav.h │ │ │ │ │ ├── lv_others.h │ │ │ │ │ ├── monkey/ │ │ │ │ │ │ ├── lv_monkey.c │ │ │ │ │ │ └── lv_monkey.h │ │ │ │ │ └── snapshot/ │ │ │ │ │ ├── lv_snapshot.c │ │ │ │ │ └── lv_snapshot.h │ │ │ │ ├── themes/ │ │ │ │ │ ├── basic/ │ │ │ │ │ │ ├── lv_theme_basic.c │ │ │ │ │ │ └── lv_theme_basic.h │ │ │ │ │ ├── default/ │ │ │ │ │ │ ├── lv_theme_default.c │ │ │ │ │ │ └── lv_theme_default.h │ │ │ │ │ ├── lv_themes.h │ │ │ │ │ └── mono/ │ │ │ │ │ ├── lv_theme_mono.c │ │ │ │ │ └── lv_theme_mono.h │ │ │ │ └── widgets/ │ │ │ │ ├── animimg/ │ │ │ │ │ ├── lv_animimg.c │ │ │ │ │ └── lv_animimg.h │ │ │ │ ├── calendar/ │ │ │ │ │ ├── lv_calendar.c │ │ │ │ │ ├── lv_calendar.h │ │ │ │ │ ├── lv_calendar_header_arrow.c │ │ │ │ │ ├── lv_calendar_header_arrow.h │ │ │ │ │ ├── lv_calendar_header_dropdown.c │ │ │ │ │ └── lv_calendar_header_dropdown.h │ │ │ │ ├── chart/ │ │ │ │ │ ├── lv_chart.c │ │ │ │ │ └── lv_chart.h │ │ │ │ ├── colorwheel/ │ │ │ │ │ ├── lv_colorwheel.c │ │ │ │ │ └── lv_colorwheel.h │ │ │ │ ├── imgbtn/ │ │ │ │ │ ├── lv_imgbtn.c │ │ │ │ │ └── lv_imgbtn.h │ │ │ │ ├── keyboard/ │ │ │ │ │ ├── lv_keyboard.c │ │ │ │ │ └── lv_keyboard.h │ │ │ │ ├── led/ │ │ │ │ │ ├── lv_led.c │ │ │ │ │ └── lv_led.h │ │ │ │ ├── list/ │ │ │ │ │ ├── lv_list.c │ │ │ │ │ └── lv_list.h │ │ │ │ ├── lv_widgets.h │ │ │ │ ├── menu/ │ │ │ │ │ ├── lv_menu.c │ │ │ │ │ └── lv_menu.h │ │ │ │ ├── meter/ │ │ │ │ │ ├── lv_meter.c │ │ │ │ │ └── lv_meter.h │ │ │ │ ├── msgbox/ │ │ │ │ │ ├── lv_msgbox.c │ │ │ │ │ └── lv_msgbox.h │ │ │ │ ├── span/ │ │ │ │ │ ├── lv_span.c │ │ │ │ │ └── lv_span.h │ │ │ │ ├── spinbox/ │ │ │ │ │ ├── lv_spinbox.c │ │ │ │ │ └── lv_spinbox.h │ │ │ │ ├── spinner/ │ │ │ │ │ ├── lv_spinner.c │ │ │ │ │ └── lv_spinner.h │ │ │ │ ├── tabview/ │ │ │ │ │ ├── lv_tabview.c │ │ │ │ │ └── lv_tabview.h │ │ │ │ ├── tileview/ │ │ │ │ │ ├── lv_tileview.c │ │ │ │ │ └── lv_tileview.h │ │ │ │ └── win/ │ │ │ │ ├── lv_win.c │ │ │ │ └── lv_win.h │ │ │ ├── font/ │ │ │ │ ├── lv_font.c │ │ │ │ ├── lv_font.h │ │ │ │ ├── lv_font.mk │ │ │ │ ├── lv_font_dejavu_16_persian_hebrew.c │ │ │ │ ├── lv_font_fmt_txt.c │ │ │ │ ├── lv_font_fmt_txt.h │ │ │ │ ├── lv_font_loader.c │ │ │ │ ├── lv_font_loader.h │ │ │ │ ├── lv_font_montserrat_10.c │ │ │ │ ├── lv_font_montserrat_12.c │ │ │ │ ├── lv_font_montserrat_12_subpx.c │ │ │ │ ├── lv_font_montserrat_14.c │ │ │ │ ├── lv_font_montserrat_16.c │ │ │ │ ├── lv_font_montserrat_18.c │ │ │ │ ├── lv_font_montserrat_20.c │ │ │ │ ├── lv_font_montserrat_22.c │ │ │ │ ├── lv_font_montserrat_24.c │ │ │ │ ├── lv_font_montserrat_26.c │ │ │ │ ├── lv_font_montserrat_28.c │ │ │ │ ├── lv_font_montserrat_28_compressed.c │ │ │ │ ├── lv_font_montserrat_30.c │ │ │ │ ├── lv_font_montserrat_32.c │ │ │ │ ├── lv_font_montserrat_34.c │ │ │ │ ├── lv_font_montserrat_36.c │ │ │ │ ├── lv_font_montserrat_38.c │ │ │ │ ├── lv_font_montserrat_40.c │ │ │ │ ├── lv_font_montserrat_42.c │ │ │ │ ├── lv_font_montserrat_44.c │ │ │ │ ├── lv_font_montserrat_46.c │ │ │ │ ├── lv_font_montserrat_48.c │ │ │ │ ├── lv_font_montserrat_8.c │ │ │ │ ├── lv_font_simsun_16_cjk.c │ │ │ │ ├── lv_font_unscii_16.c │ │ │ │ ├── lv_font_unscii_8.c │ │ │ │ └── lv_symbol_def.h │ │ │ ├── gpu/ │ │ │ │ └── lv_gpu.mk │ │ │ ├── hal/ │ │ │ │ ├── lv_hal.h │ │ │ │ ├── lv_hal.mk │ │ │ │ ├── lv_hal_disp.c │ │ │ │ ├── lv_hal_disp.h │ │ │ │ ├── lv_hal_indev.c │ │ │ │ ├── lv_hal_indev.h │ │ │ │ ├── lv_hal_tick.c │ │ │ │ └── lv_hal_tick.h │ │ │ ├── lv_api_map.h │ │ │ ├── lv_conf_internal.h │ │ │ ├── lv_conf_kconfig.h │ │ │ ├── lvgl.h │ │ │ ├── misc/ │ │ │ │ ├── lv_anim.c │ │ │ │ ├── lv_anim.h │ │ │ │ ├── lv_anim_timeline.c │ │ │ │ ├── lv_anim_timeline.h │ │ │ │ ├── lv_area.c │ │ │ │ ├── lv_area.h │ │ │ │ ├── lv_assert.h │ │ │ │ ├── lv_async.c │ │ │ │ ├── lv_async.h │ │ │ │ ├── lv_bidi.c │ │ │ │ ├── lv_bidi.h │ │ │ │ ├── lv_color.c │ │ │ │ ├── lv_color.h │ │ │ │ ├── lv_fs.c │ │ │ │ ├── lv_fs.h │ │ │ │ ├── lv_gc.c │ │ │ │ ├── lv_gc.h │ │ │ │ ├── lv_ll.c │ │ │ │ ├── lv_ll.h │ │ │ │ ├── lv_log.c │ │ │ │ ├── lv_log.h │ │ │ │ ├── lv_lru.c │ │ │ │ ├── lv_lru.h │ │ │ │ ├── lv_math.c │ │ │ │ ├── lv_math.h │ │ │ │ ├── lv_mem.c │ │ │ │ ├── lv_mem.h │ │ │ │ ├── lv_misc.mk │ │ │ │ ├── lv_printf.c │ │ │ │ ├── lv_printf.h │ │ │ │ ├── lv_style.c │ │ │ │ ├── lv_style.h │ │ │ │ ├── lv_style_gen.c │ │ │ │ ├── lv_style_gen.h │ │ │ │ ├── lv_templ.c │ │ │ │ ├── lv_templ.h │ │ │ │ ├── lv_timer.c │ │ │ │ ├── lv_timer.h │ │ │ │ ├── lv_tlsf.c │ │ │ │ ├── lv_tlsf.h │ │ │ │ ├── lv_txt.c │ │ │ │ ├── lv_txt.h │ │ │ │ ├── lv_txt_ap.c │ │ │ │ ├── lv_txt_ap.h │ │ │ │ ├── lv_types.h │ │ │ │ ├── lv_utils.c │ │ │ │ └── lv_utils.h │ │ │ └── widgets/ │ │ │ ├── lv_arc.c │ │ │ ├── lv_arc.h │ │ │ ├── lv_bar.c │ │ │ ├── lv_bar.h │ │ │ ├── lv_btn.c │ │ │ ├── lv_btn.h │ │ │ ├── lv_btnmatrix.c │ │ │ ├── lv_btnmatrix.h │ │ │ ├── lv_canvas.c │ │ │ ├── lv_canvas.h │ │ │ ├── lv_checkbox.c │ │ │ ├── lv_checkbox.h │ │ │ ├── lv_dropdown.c │ │ │ ├── lv_dropdown.h │ │ │ ├── lv_img.c │ │ │ ├── lv_img.h │ │ │ ├── lv_label.c │ │ │ ├── lv_label.h │ │ │ ├── lv_line.c │ │ │ ├── lv_line.h │ │ │ ├── lv_objx_templ.c │ │ │ ├── lv_objx_templ.h │ │ │ ├── lv_roller.c │ │ │ ├── lv_roller.h │ │ │ ├── lv_slider.c │ │ │ ├── lv_slider.h │ │ │ ├── lv_switch.c │ │ │ ├── lv_switch.h │ │ │ ├── lv_table.c │ │ │ ├── lv_table.h │ │ │ ├── lv_textarea.c │ │ │ ├── lv_textarea.h │ │ │ └── lv_widgets.mk │ │ └── tests/ │ │ ├── .gitignore │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── config.yml │ │ ├── main.py │ │ ├── src/ │ │ │ ├── lv_test_conf.h │ │ │ ├── lv_test_helpers.h │ │ │ ├── lv_test_indev.c │ │ │ ├── lv_test_indev.h │ │ │ ├── lv_test_init.c │ │ │ ├── lv_test_init.h │ │ │ ├── test_cases/ │ │ │ │ ├── _test_template.c │ │ │ │ ├── test_arc.c │ │ │ │ ├── test_bar.c │ │ │ │ ├── test_checkbox.c │ │ │ │ ├── test_config.c │ │ │ │ ├── test_demo_stress.c │ │ │ │ ├── test_demo_widgets.c │ │ │ │ ├── test_dropdown.c │ │ │ │ ├── test_event.c │ │ │ │ ├── test_font_loader.c │ │ │ │ ├── test_obj_tree.c │ │ │ │ ├── test_snapshot.c │ │ │ │ ├── test_style.c │ │ │ │ ├── test_switch.c │ │ │ │ └── test_txt.c │ │ │ └── test_fonts/ │ │ │ ├── font_1.c │ │ │ ├── font_1.fnt │ │ │ ├── font_2.c │ │ │ ├── font_2.fnt │ │ │ ├── font_3.c │ │ │ └── font_3.fnt │ │ └── unity/ │ │ ├── generate_test_runner.rb │ │ ├── run_test.erb │ │ ├── type_sanitizer.rb │ │ ├── unity.c │ │ ├── unity.h │ │ ├── unity_internals.h │ │ ├── unity_support.c │ │ └── unity_support.h │ ├── partitions-no-ota.csv │ ├── platformio.ini │ ├── src/ │ │ ├── common.cpp │ │ ├── common.h │ │ ├── controller/ │ │ │ ├── base/ │ │ │ │ ├── controller_base.h │ │ │ │ └── heat_ctrl_base.h │ │ │ ├── heat_platform/ │ │ │ │ ├── heat_platform.cpp │ │ │ │ ├── heat_platform.h │ │ │ │ └── heat_platform_cfg.cpp │ │ │ ├── hot_air/ │ │ │ │ ├── hot_air.cpp │ │ │ │ ├── hot_air.h │ │ │ │ └── hot_air_cfg.cpp │ │ │ ├── osc/ │ │ │ │ ├── oscilloscope.cpp │ │ │ │ └── oscilloscope.h │ │ │ ├── power/ │ │ │ │ ├── adjustable_power.cpp │ │ │ │ └── adjustable_power.h │ │ │ ├── pwm/ │ │ │ │ ├── pwm_controller.cpp │ │ │ │ └── pwm_controller.h │ │ │ ├── signal_generator/ │ │ │ │ ├── signal_generator.cpp │ │ │ │ └── signal_generator.h │ │ │ └── solder/ │ │ │ ├── solder.cpp │ │ │ ├── solder.h │ │ │ └── solder_cfg.cpp │ │ ├── driver/ │ │ │ ├── buzzer.cpp │ │ │ ├── buzzer.h │ │ │ ├── display.cpp │ │ │ ├── display.h │ │ │ ├── flash_fs.cpp │ │ │ ├── flash_fs.h │ │ │ ├── knobs.cpp │ │ │ ├── knobs.h │ │ │ ├── lv_port_fatfs.cpp │ │ │ ├── lv_port_fatfs.h │ │ │ ├── lv_port_indev.cpp │ │ │ ├── lv_port_indev.h │ │ │ ├── max6675.cpp │ │ │ ├── max6675.h │ │ │ ├── rgb_led.cpp │ │ │ └── rgb_led.h │ │ ├── main.cpp │ │ ├── network.cpp │ │ ├── network.h │ │ ├── pid.cpp │ │ ├── pid.h │ │ └── sys/ │ │ ├── interface.h │ │ ├── snail_manager.cpp │ │ ├── snail_manager.h │ │ └── snail_manager_cfg.cpp │ └── test/ │ └── README └── Tool/ ├── .gitignore ├── GS_Hbed_Generator.py ├── QT_Tool/ │ ├── .gitignore │ ├── MyRtttl.py │ ├── MyRtttl_1.py │ ├── MyRtttl_2_delete.py │ ├── MyRtttl_3_delete.py │ ├── SnailHeater_Tool.py │ ├── SnailHeater_Tool.spec │ ├── SnailHeater_Tool.yaml │ ├── SnailHeater_Tool_EL.yaml │ ├── SnailHeater_WinTool_pyqt5.py │ ├── SnailHeater_WinTool_pyqt5_EL.py │ ├── SnailHeater_WinTool_pyside2.py │ ├── SnailHeater_WinTool_pyside2_EL.py │ ├── ToRtttl.md │ ├── apprcc.qrc │ ├── apprcc_rc.py │ ├── choose_ver.py │ ├── common.py │ ├── createWallpaperClean.py │ ├── download.py │ ├── download.ui │ ├── download_EL.py │ ├── lvgl_image_converter/ │ │ ├── .github/ │ │ │ └── workflows/ │ │ │ └── python-app.yml │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── __init__.py │ │ ├── lv_img_conv.py │ │ ├── lv_img_conv_win_spec/ │ │ │ ├── README.md │ │ │ ├── config │ │ │ └── main.py │ │ ├── lv_img_converter/ │ │ │ ├── __init__.py │ │ │ └── lv_img_converter.py │ │ └── requirements.txt │ ├── massagehead.py │ ├── midi2rtttl.py │ ├── midi2rtttl_0.py │ ├── midi2rtttl_simple.py │ ├── mywidgets.py │ ├── requirements.txt │ ├── requirements_pyqt5_venv.txt │ ├── requirements_pyside_venv.txt │ ├── spiffsgen.py │ ├── stub_flasher/ │ │ ├── stub_flasher_32.json │ │ ├── stub_flasher_32c2.json │ │ ├── stub_flasher_32c3.json │ │ ├── stub_flasher_32c6.json │ │ ├── stub_flasher_32c6beta.json │ │ ├── stub_flasher_32h2.json │ │ ├── stub_flasher_32h2beta1.json │ │ ├── stub_flasher_32h2beta2.json │ │ ├── stub_flasher_32p4.json │ │ ├── stub_flasher_32s2.json │ │ ├── stub_flasher_32s3.json │ │ ├── stub_flasher_32s3beta2.json │ │ └── stub_flasher_8266.json │ ├── temporary_sn_recode.txt │ └── 视频素材.lnk ├── SnailHeater_SN.cfg ├── SnailHeater_WinTool.cfg ├── lceda_gerber_create/ │ ├── .gitignore │ ├── README.md │ ├── lceda_gerber.py │ └── task.yaml └── sn_recode.txt