From af37bf2810729612a4f4f1bc75c165953b382df6 Mon Sep 17 00:00:00 2001 From: Thomas Farstrike Date: Sun, 15 Jun 2025 10:18:41 +0200 Subject: [PATCH] Remove unused files --- patches/esp32_components.cmake | 5 - patches/freezeFS_fix_glob_python_3.9.patch | 16 - patches/lv_conf.h | 1131 ----------------- ...cropython_add_cnadler86_esp32-camera.patch | 10 - ...opython_lib_micropython_fix_mpremote.patch | 14 - ...micropython_fix_ov5640_camera_colors.patch | 12 - ...on_lib_micropython_temperature_float.patch | 14 - patches/modesp32.c | 255 ---- patches/mpremote_dont_reset.patch | 14 - patches/ov5640_settings.h_fixed | 336 ----- ..._allow_fullscreen_and_proper_pointer.patch | 20 - patches/task_handler.p_fix_remove_callback | 17 - patches/touch_cst816s_add_cst816.patch | 23 - scripts/pngtobin.sh | 3 - 14 files changed, 1870 deletions(-) delete mode 100644 patches/esp32_components.cmake delete mode 100644 patches/freezeFS_fix_glob_python_3.9.patch delete mode 100644 patches/lv_conf.h delete mode 100644 patches/lvgl_micropython_lib_micropython_add_cnadler86_esp32-camera.patch delete mode 100644 patches/lvgl_micropython_lib_micropython_fix_mpremote.patch delete mode 100644 patches/lvgl_micropython_lib_micropython_fix_ov5640_camera_colors.patch delete mode 100644 patches/lvgl_micropython_lib_micropython_temperature_float.patch delete mode 100644 patches/modesp32.c delete mode 100644 patches/mpremote_dont_reset.patch delete mode 100644 patches/ov5640_settings.h_fixed delete mode 100644 patches/sdl_bus_allow_fullscreen_and_proper_pointer.patch delete mode 100644 patches/task_handler.p_fix_remove_callback delete mode 100644 patches/touch_cst816s_add_cst816.patch delete mode 100755 scripts/pngtobin.sh diff --git a/patches/esp32_components.cmake b/patches/esp32_components.cmake deleted file mode 100644 index 33b5b524..00000000 --- a/patches/esp32_components.cmake +++ /dev/null @@ -1,5 +0,0 @@ - - -include(/home/user/sources/micropython-camera-API/src/micropython.cmake) -include(/home/user/sources/MicroPythonOS/c_mpos/secp256k1-embedded_kdmukai/micropython.cmake) -include(/home/user/sources/MicroPythonOS/c_mpos/micropython.cmake) \ No newline at end of file diff --git a/patches/freezeFS_fix_glob_python_3.9.patch b/patches/freezeFS_fix_glob_python_3.9.patch deleted file mode 100644 index 81488ca8..00000000 --- a/patches/freezeFS_fix_glob_python_3.9.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/freezefs/archive.py b/freezefs/archive.py -index 843090d..26e2029 100644 ---- a/freezefs/archive.py -+++ b/freezefs/archive.py -@@ -87,8 +87,9 @@ def to_python( pc_infolder, pc_outfile, - - # Get files - files = [] -- for path in glob( "**", root_dir=pc_infolder, recursive=True ): -- fo = FileObject( pc_infolder, Path( path ), request_compression, level, wbits ) -+ for path in glob(os.path.join(pc_infolder, "**"), recursive=True): -+ rel_path = os.path.relpath(path, pc_infolder) -+ fo = FileObject(pc_infolder, Path(rel_path), request_compression, level, wbits) - files.append( fo ) - - # Generate output diff --git a/patches/lv_conf.h b/patches/lv_conf.h deleted file mode 100644 index c4574fb4..00000000 --- a/patches/lv_conf.h +++ /dev/null @@ -1,1131 +0,0 @@ -// Copyright (c) 2024 - 2025 Kevin G. Schlosser - -#ifndef __MICROPY_CONFIG__ -#define __MICROPY_CONFIG__ -#define LV_STDLIB_MPY 254 - -#ifndef MICROPY_FREETYPE - #define MICROPY_FREETYPE 0 -#endif -#ifndef MICROPY_FB - #define MICROPY_FB 0 -#endif -#ifndef MICROPY_SDL - #define MICROPY_SDL 0 -#endif -#ifndef MICROPY_FFMPEG - #define MICROPY_FFMPEG 0 -#endif -#ifndef MICROPY_RLOTTIE - #define MICROPY_RLOTTIE 0 -#endif -#ifndef MICROPY_TINY_TTF - #define MICROPY_TINY_TTF 0 -#endif -#ifndef MICROPY_CACHE_SIZE - #define MICROPY_CACHE_SIZE 50 * 64 * 64 * 2 // 50 images of 64x64 pixels at 2 bytes per pixel -#endif -#ifndef MICROPY_COLOR_DEPTH - #define MICROPY_COLOR_DEPTH 16 -#endif -#ifndef MICROPY_FLOAT - #define MICROPY_FLOAT 0 -#endif -#ifndef MICROPY_MEM_SIZE - #define MICROPY_MEM_SIZE 256 -#endif - -#ifndef MICROPY_FAST_MEM - #if (defined(ESP_IDF_VERSION) && !defined(PYCPARSER)) - #include "esp_attr.h" - - #define MICROPY_FAST_MEM IRAM_ATTR - #else - #define MICROPY_FAST_MEM - #endif -#endif - -/*Garbage Collector settings - *Used if lvgl is bound to higher level language and the memory is managed by that language*/ -extern void mp_lv_init_gc(); -#define LV_GC_INIT() mp_lv_init_gc() -extern void *mp_lv_roots; - -#include - -#define LV_USE_DEV_VERSION 1 -#endif - -/* - * Copy this file as `lv_conf.h` - * 1. simply next to the `lvgl` folder - * 2. or any other places and - * - define `LV_CONF_INCLUDE_SIMPLE` - * - add the path as include path - */ - -/* clang-format off */ -#if 1 /*Set it to "1" to enable content*/ - -#ifndef LV_CONF_H -#define LV_CONF_H - -/*If you need to include anything here, do it inside the `__ASSEMBLY__` guard */ -#if 0 && defined(__ASSEMBLY__) -#include "my_include.h" -#endif - -/*==================== - COLOR SETTINGS - *====================*/ - -/*Color depth: 8 (A8), 16 (RGB565), 24 (RGB888), 32 (XRGB8888)*/ -#define LV_COLOR_DEPTH MICROPY_COLOR_DEPTH - -/*========================= - STDLIB WRAPPER SETTINGS - *=========================*/ - -/* Possible values - * - LV_STDLIB_BUILTIN: LVGL's built in implementation - * - LV_STDLIB_CLIB: Standard C functions, like malloc, strlen, etc - * - LV_STDLIB_MICROPYTHON: MicroPython implementation - * - LV_STDLIB_RTTHREAD: RT-Thread implementation - * - LV_STDLIB_CUSTOM: Implement the functions externally - */ -#define LV_USE_STDLIB_MALLOC LV_STDLIB_MPY -#define LV_USE_STDLIB_STRING LV_STDLIB_BUILTIN -#define LV_USE_STDLIB_SPRINTF LV_STDLIB_BUILTIN - -#define LV_STDINT_INCLUDE -#define LV_STDDEF_INCLUDE -#define LV_STDBOOL_INCLUDE -#define LV_INTTYPES_INCLUDE -#define LV_LIMITS_INCLUDE -#define LV_STDARG_INCLUDE - -#if LV_USE_STDLIB_MALLOC == LV_STDLIB_BUILTIN - /*Size of the memory available for `lv_malloc()` in bytes (>= 2kB)*/ - #define LV_MEM_SIZE (MICROPY_MEM_SIZE * 1024U) /*[bytes]*/ - - /*Size of the memory expand for `lv_malloc()` in bytes*/ - #define LV_MEM_POOL_EXPAND_SIZE 0 - - /*Set an address for the memory pool instead of allocating it as a normal array. Can be in external SRAM too.*/ - #define LV_MEM_ADR 0 /*0: unused*/ - /*Instead of an address give a memory allocator that will be called to get a memory pool for LVGL. E.g. my_malloc*/ - #if LV_MEM_ADR == 0 - #undef LV_MEM_POOL_INCLUDE - #undef LV_MEM_POOL_ALLOC - #endif -#endif /*LV_USE_STDLIB_MALLOC == LV_STDLIB_BUILTIN*/ - -/*==================== - HAL SETTINGS - *====================*/ - -/*Default display refresh, input device read and animation step period.*/ -#define LV_DEF_REFR_PERIOD 33 /*[ms]*/ - -/*Default Dot Per Inch. Used to initialize default sizes such as widgets sized, style paddings. - *(Not so important, you can adjust it to modify default sizes and spaces)*/ -#define LV_DPI_DEF 130 /*[px/inch]*/ - -/*================= - * OPERATING SYSTEM - *=================*/ -/*Select an operating system to use. Possible options: - * - LV_OS_NONE - * - LV_OS_PTHREAD - * - LV_OS_FREERTOS - * - LV_OS_CMSIS_RTOS2 - * - LV_OS_RTTHREAD - * - LV_OS_WINDOWS - * - LV_OS_MQX - * - LV_OS_CUSTOM */ -#define LV_USE_OS LV_OS_NONE - -#if LV_USE_OS == LV_OS_CUSTOM - #define LV_OS_CUSTOM_INCLUDE -#endif - -/*======================== - * RENDERING CONFIGURATION - *========================*/ - -/*Align the stride of all layers and images to this bytes*/ -#define LV_DRAW_BUF_STRIDE_ALIGN 1 - -/*Align the start address of draw_buf addresses to this bytes*/ -#define LV_DRAW_BUF_ALIGN 4 - -/* If a widget has `style_opa < 255` (not `bg_opa`, `text_opa` etc) or not NORMAL blend mode - * it is buffered into a "simple" layer before rendering. The widget can be buffered in smaller chunks. - * "Transformed layers" (if `transform_angle/zoom` are set) use larger buffers - * and can't be drawn in chunks. */ - -/*The target buffer size for simple layer chunks.*/ -#define LV_DRAW_LAYER_SIMPLE_BUF_SIZE (24 * 1024) /*[bytes]*/ - -/* The stack size of the drawing thread. - * NOTE: If FreeType or ThorVG is enabled, it is recommended to set it to 32KB or more. - */ -#define LV_DRAW_THREAD_STACK_SIZE (8 * 1024) /*[bytes]*/ - -#define LV_USE_DRAW_SW 1 -#if LV_USE_DRAW_SW == 1 - - /* - * Selectively disable color format support in order to reduce code size. - * NOTE: some features use certain color formats internally, e.g. - * - gradients use RGB888 - * - bitmaps with transparency may use ARGB8888 - */ - - #define LV_DRAW_SW_SUPPORT_RGB565 1 - #define LV_DRAW_SW_SUPPORT_RGB565A8 1 - #define LV_DRAW_SW_SUPPORT_RGB888 1 - #define LV_DRAW_SW_SUPPORT_XRGB8888 1 - #define LV_DRAW_SW_SUPPORT_ARGB8888 1 - #define LV_DRAW_SW_SUPPORT_L8 1 - #define LV_DRAW_SW_SUPPORT_AL88 1 - #define LV_DRAW_SW_SUPPORT_A8 1 - - /* Set the number of draw unit. - * > 1 requires an operating system enabled in `LV_USE_OS` - * > 1 means multiply threads will render the screen in parallel */ - #define LV_DRAW_SW_DRAW_UNIT_CNT 1 - - /* Use Arm-2D to accelerate the sw render */ - #define LV_USE_DRAW_ARM2D_SYNC 0 - - /* Enable native helium assembly to be compiled */ - #define LV_USE_NATIVE_HELIUM_ASM 0 - - /* 0: use a simple renderer capable of drawing only simple rectangles with gradient, images, texts, and straight lines only - * 1: use a complex renderer capable of drawing rounded corners, shadow, skew lines, and arcs too */ - #define LV_DRAW_SW_COMPLEX 1 - - #if LV_DRAW_SW_COMPLEX == 1 - /*Allow buffering some shadow calculation. - *LV_DRAW_SW_SHADOW_CACHE_SIZE is the max. shadow size to buffer, where shadow size is `shadow_width + radius` - *Caching has LV_DRAW_SW_SHADOW_CACHE_SIZE^2 RAM cost*/ - #define LV_DRAW_SW_SHADOW_CACHE_SIZE 0 // TODO: set this? - - /* Set number of maximally cached circle data. - * The circumference of 1/4 circle are saved for anti-aliasing - * radius * 4 bytes are used per circle (the most often used radiuses are saved) - * 0: to disable caching */ - #define LV_DRAW_SW_CIRCLE_CACHE_SIZE 40 - #endif - - #define LV_USE_DRAW_SW_ASM LV_DRAW_SW_ASM_NONE - - #if LV_USE_DRAW_SW_ASM == LV_DRAW_SW_ASM_CUSTOM - #define LV_DRAW_SW_ASM_CUSTOM_INCLUDE "" - #endif - - /* Enable drawing complex gradients in software: linear at an angle, radial or conical */ - #define LV_USE_DRAW_SW_COMPLEX_GRADIENTS 0 -#endif - -/* Use NXP's VG-Lite GPU on iMX RTxxx platforms. */ -#define LV_USE_DRAW_VGLITE 0 - -#if LV_USE_DRAW_VGLITE - /* Enable blit quality degradation workaround recommended for screen's dimension > 352 pixels. */ - #define LV_USE_VGLITE_BLIT_SPLIT 0 - - #if LV_USE_OS - /* Enable VGLite draw async. Queue multiple tasks and flash them once to the GPU. */ - #define LV_USE_VGLITE_DRAW_ASYNC 1 - #endif - - /* Enable VGLite asserts. */ - #define LV_USE_VGLITE_ASSERT 0 -#endif - -/* Use NXP's PXP on iMX RTxxx platforms. */ -#define LV_USE_DRAW_PXP 0 - -#if LV_USE_DRAW_PXP - /* Enable PXP asserts. */ - #define LV_USE_PXP_ASSERT 0 -#endif - -/* Use Renesas Dave2D on RA platforms. */ -#define LV_USE_DRAW_DAVE2D 0 - -/* Draw using cached SDL textures*/ -#define LV_USE_DRAW_SDL 0 - -/* Use VG-Lite GPU. */ -#define LV_USE_DRAW_VG_LITE 0 - -#if LV_USE_DRAW_VG_LITE -/* Enable VG-Lite custom external 'gpu_init()' function */ -#define LV_VG_LITE_USE_GPU_INIT 0 - -/* Enable VG-Lite assert. */ -#define LV_VG_LITE_USE_ASSERT 0 - -/* VG-Lite flush commit trigger threshold. GPU will try to batch these many draw tasks. */ -#define LV_VG_LITE_FLUSH_MAX_COUNT 8 - -/* Enable border to simulate shadow - * NOTE: which usually improves performance, - * but does not guarantee the same rendering quality as the software. */ -#define LV_VG_LITE_USE_BOX_SHADOW 0 - -/* VG-Lite gradient maximum cache number. - * NOTE: The memory usage of a single gradient image is 4K bytes. - */ -#define LV_VG_LITE_GRAD_CACHE_CNT 32 - -#endif - -/*======================= - * FEATURE CONFIGURATION - *=======================*/ - -/*------------- - * Logging - *-----------*/ - -/*Enable the log module*/ -#define LV_USE_LOG 1 -#if LV_USE_LOG - - /*How important log should be added: - *LV_LOG_LEVEL_TRACE A lot of logs to give detailed information - *LV_LOG_LEVEL_INFO Log important events - *LV_LOG_LEVEL_WARN Log if something unwanted happened but didn't cause a problem - *LV_LOG_LEVEL_ERROR Only critical issue, when the system may fail - *LV_LOG_LEVEL_USER Only logs added by the user - *LV_LOG_LEVEL_NONE Do not log anything*/ - // // 0 is trace, 1 is info, 2 is warn, 3 is error, 4 is user (FPS is here as 'sysmon' user) - #define LV_LOG_LEVEL LV_LOG_LEVEL_WARN - - /*1: Print the log with 'printf'; - *0: User need to register a callback with `lv_log_register_print_cb()`*/ - #define LV_LOG_PRINTF 0 // this doesn't seem to print anything to the serial port, so don't use it - - /*Set callback to print the logs. - *E.g `my_print`. The prototype should be `void my_print(lv_log_level_t level, const char * buf)` - *Can be overwritten by `lv_log_register_print_cb`*/ - //#define LV_LOG_PRINT_CB - - /*1: Enable print timestamp; - *0: Disable print timestamp*/ - #define LV_LOG_USE_TIMESTAMP 1 - - /*1: Print file and line number of the log; - *0: Do not print file and line number of the log*/ - #define LV_LOG_USE_FILE_LINE 1 - - - /*Enable/disable LV_LOG_TRACE in modules that produces a huge number of logs*/ - #define LV_LOG_TRACE_MEM 1 - #define LV_LOG_TRACE_TIMER 1 - #define LV_LOG_TRACE_INDEV 1 - #define LV_LOG_TRACE_DISP_REFR 1 - #define LV_LOG_TRACE_EVENT 1 - #define LV_LOG_TRACE_OBJ_CREATE 1 - #define LV_LOG_TRACE_LAYOUT 1 - #define LV_LOG_TRACE_ANIM 1 - #define LV_LOG_TRACE_CACHE 1 - -#endif /*LV_USE_LOG*/ - -/*------------- - * Asserts - *-----------*/ - -/*Enable asserts if an operation is failed or an invalid data is found. - *If LV_USE_LOG is enabled an error message will be printed on failure*/ -#define LV_USE_ASSERT_NULL 1 /*Check if the parameter is NULL. (Very fast, recommended)*/ -#define LV_USE_ASSERT_MALLOC 1 /*Checks is the memory is successfully allocated or no. (Very fast, recommended)*/ -#define LV_USE_ASSERT_STYLE 1 /*Check if the styles are properly initialized. (Very fast, recommended)*/ -#define LV_USE_ASSERT_MEM_INTEGRITY 0 /*Check the integrity of `lv_mem` after critical operations. (Slow)*/ -#define LV_USE_ASSERT_OBJ 0 /*Check the object's type and existence (e.g. not deleted). (Slow)*/ - -/*Add a custom handler when assert happens e.g. to restart the MCU*/ -#define LV_ASSERT_HANDLER_INCLUDE -///home/user/sources/lvgl_micropython/lib/lv_conf.h:353:27: error: implicit declaration of function 'printf' [-Werror=implicit-function-declaration] -//#define LV_ASSERT_HANDLER printf("custom handler when assert happens e.g. to restart the MCU"); while(1); /*Halt by default*/ -#define LV_ASSERT_HANDLER while(1); /*Halt by default*/ - -/*------------- - * Debug - *-----------*/ - -/*1: Draw random colored rectangles over the redrawn areas*/ -#define LV_USE_REFR_DEBUG 0 - -/*1: Draw a red overlay for ARGB layers and a green overlay for RGB layers*/ -#define LV_USE_LAYER_DEBUG 0 - -/*1: Draw overlays with different colors for each draw_unit's tasks. - *Also add the index number of the draw unit on white background. - *For layers add the index number of the draw unit on black background.*/ -#define LV_USE_PARALLEL_DRAW_DEBUG 0 - -/*------------- - * Others - *-----------*/ - -#define LV_ENABLE_GLOBAL_CUSTOM 1 -#if LV_ENABLE_GLOBAL_CUSTOM - /*Header to include for the custom 'lv_global' function"*/ - #define LV_GLOBAL_CUSTOM() ((lv_global_t*)mp_lv_roots) -#endif - -/*Default cache size in bytes. - *Used by image decoders such as `lv_lodepng` to keep the decoded image in the memory. - *If size is not set to 0, the decoder will fail to decode when the cache is full. - *If size is 0, the cache function is not enabled and the decoded mem will be released immediately after use.*/ -#define LV_CACHE_DEF_SIZE MICROPY_CACHE_SIZE - -/*Default number of image header cache entries. The cache is used to store the headers of images - *The main logic is like `LV_CACHE_DEF_SIZE` but for image headers.*/ -#define LV_IMAGE_HEADER_CACHE_DEF_CNT 24 - -/*Number of stops allowed per gradient. Increase this to allow more stops. - *This adds (sizeof(lv_color_t) + 1) bytes per additional stop*/ -#define LV_GRADIENT_MAX_STOPS 2 - -/* Adjust color mix functions rounding. GPUs might calculate color mix (blending) differently. - * 0: round down, 64: round up from x.75, 128: round up from half, 192: round up from x.25, 254: round up */ -#define LV_COLOR_MIX_ROUND_OFS 0 - -/* Add 2 x 32 bit variables to each lv_obj_t to speed up getting style properties */ -#define LV_OBJ_STYLE_CACHE 1 - -/* Add `id` field to `lv_obj_t` */ -#define LV_USE_OBJ_ID 1 - -/* Automatically assign an ID when obj is created */ -#define LV_OBJ_ID_AUTO_ASSIGN LV_USE_OBJ_ID - -/*Use the builtin obj ID handler functions: -* - lv_obj_assign_id: Called when a widget is created. Use a separate counter for each widget class as an ID. -* - lv_obj_id_compare: Compare the ID to decide if it matches with a requested value. -* - lv_obj_stringify_id: Return e.g. "button3" -* - lv_obj_free_id: Does nothing, as there is no memory allocation for the ID. -* When disabled these functions needs to be implemented by the user.*/ -#define LV_USE_OBJ_ID_BUILTIN 1 - -/*Use obj property set/get API*/ -#define LV_USE_OBJ_PROPERTY 0 - -/*Enable property name support*/ -#define LV_USE_OBJ_PROPERTY_NAME 1 - -/* VG-Lite Simulator */ -/*Requires: LV_USE_THORVG_INTERNAL or LV_USE_THORVG_EXTERNAL */ -#define LV_USE_VG_LITE_THORVG 0 - -#if LV_USE_VG_LITE_THORVG - - /*Enable LVGL's blend mode support*/ - #define LV_VG_LITE_THORVG_LVGL_BLEND_SUPPORT 0 - - /*Enable YUV color format support*/ - #define LV_VG_LITE_THORVG_YUV_SUPPORT 0 - - /*Enable Linear gradient extension support*/ - #define LV_VG_LITE_THORVG_LINEAR_GRADIENT_EXT_SUPPORT 0 - - /*Enable 16 pixels alignment*/ - #define LV_VG_LITE_THORVG_16PIXELS_ALIGN 1 - - /*Buffer address alignment*/ - #define LV_VG_LITE_THORVG_BUF_ADDR_ALIGN 64 - - /*Enable multi-thread render*/ - #define LV_VG_LITE_THORVG_THREAD_RENDER 0 - -#endif - -/*===================== - * COMPILER SETTINGS - *====================*/ - -/*For big endian systems set to 1*/ -#define LV_BIG_ENDIAN_SYSTEM 0 - -/*Define a custom attribute to `lv_tick_inc` function*/ -#define LV_ATTRIBUTE_TICK_INC - -/*Define a custom attribute to `lv_timer_handler` function*/ -#define LV_ATTRIBUTE_TIMER_HANDLER - -/*Define a custom attribute to `lv_display_flush_ready` function*/ -#define LV_ATTRIBUTE_FLUSH_READY - -/*Required alignment size for buffers*/ -#define LV_ATTRIBUTE_MEM_ALIGN_SIZE 1 - -/*Will be added where memories needs to be aligned (with -Os data might not be aligned to boundary by default). - * E.g. __attribute__((aligned(4)))*/ -#define LV_ATTRIBUTE_MEM_ALIGN - -/*Attribute to mark large constant arrays for example font's bitmaps*/ -#define LV_ATTRIBUTE_LARGE_CONST - -/*Compiler prefix for a big array declaration in RAM*/ -#define LV_ATTRIBUTE_LARGE_RAM_ARRAY - -/*Place performance critical functions into a faster memory (e.g RAM)*/ -#define LV_ATTRIBUTE_FAST_MEM MICROPY_FAST_MEM - -/*Export integer constant to binding. This macro is used with constants in the form of LV_ that - *should also appear on LVGL binding API such as Micropython.*/ -#define LV_EXPORT_CONST_INT(int_value) enum {ENUM_##int_value = int_value} - -/*Prefix all global extern data with this*/ -#define LV_ATTRIBUTE_EXTERN_DATA - -/* Use `float` as `lv_value_precise_t` */ -#define LV_USE_FLOAT MICROPY_FLOAT - -/*================== - * FONT USAGE - *===================*/ - -/*Montserrat fonts with ASCII range and some symbols using bpp = 4 - *https://fonts.google.com/specimen/Montserrat*/ -#define LV_FONT_MONTSERRAT_8 1 -#define LV_FONT_MONTSERRAT_10 1 -#define LV_FONT_MONTSERRAT_12 1 -#define LV_FONT_MONTSERRAT_14 1 -#define LV_FONT_MONTSERRAT_16 1 -#define LV_FONT_MONTSERRAT_18 1 -#define LV_FONT_MONTSERRAT_20 1 -#define LV_FONT_MONTSERRAT_22 1 -#define LV_FONT_MONTSERRAT_24 1 -#define LV_FONT_MONTSERRAT_26 1 -#define LV_FONT_MONTSERRAT_28 1 -#define LV_FONT_MONTSERRAT_30 1 -#define LV_FONT_MONTSERRAT_32 0 -#define LV_FONT_MONTSERRAT_34 0 -#define LV_FONT_MONTSERRAT_36 0 -#define LV_FONT_MONTSERRAT_38 0 -#define LV_FONT_MONTSERRAT_40 0 -#define LV_FONT_MONTSERRAT_42 0 -#define LV_FONT_MONTSERRAT_44 0 -#define LV_FONT_MONTSERRAT_46 0 -#define LV_FONT_MONTSERRAT_48 0 - -/*Demonstrate special features*/ -#define LV_FONT_MONTSERRAT_28_COMPRESSED 0 /*bpp = 3*/ -#define LV_FONT_DEJAVU_16_PERSIAN_HEBREW 1 /*Hebrew, Arabic, Persian letters and all their forms*/ -#define LV_FONT_SIMSUN_14_CJK 0 /*1000 most common CJK radicals*/ -#define LV_FONT_SIMSUN_16_CJK 0 /*1000 most common CJK radicals*/ - -/*Pixel perfect monospace fonts*/ -#define LV_FONT_UNSCII_8 1 -#define LV_FONT_UNSCII_16 1 - -/*Optionally declare custom fonts here. - *You can use these fonts as default font too and they will be available globally. - *E.g. #define LV_FONT_CUSTOM_DECLARE LV_FONT_DECLARE(my_font_1) LV_FONT_DECLARE(my_font_2)*/ -#define LV_FONT_CUSTOM_DECLARE - -/*Always set a default font*/ -#define LV_FONT_DEFAULT &lv_font_montserrat_14 - -/*Enable handling large font and/or fonts with a lot of characters. - *The limit depends on the font size, font face and bpp. - *Compiler error will be triggered if a font needs it.*/ -#define LV_FONT_FMT_TXT_LARGE 0 - -/*Enables/disables support for compressed fonts.*/ -#define LV_USE_FONT_COMPRESSED 0 - -/*Enable drawing placeholders when glyph dsc is not found*/ -#define LV_USE_FONT_PLACEHOLDER 1 - -/*================= - * TEXT SETTINGS - *=================*/ - -/** - * Select a character encoding for strings. - * Your IDE or editor should have the same character encoding - * - LV_TXT_ENC_UTF8 - * - LV_TXT_ENC_ASCII - */ -#define LV_TXT_ENC LV_TXT_ENC_UTF8 - -/*Can break (wrap) texts on these chars*/ -#define LV_TXT_BREAK_CHARS " ,.;:-_)]}" - -/*If a word is at least this long, will break wherever "prettiest" - *To disable, set to a value <= 0*/ -#define LV_TXT_LINE_BREAK_LONG_LEN 0 - -/*Minimum number of characters in a long word to put on a line before a break. - *Depends on LV_TXT_LINE_BREAK_LONG_LEN.*/ -#define LV_TXT_LINE_BREAK_LONG_PRE_MIN_LEN 3 - -/*Minimum number of characters in a long word to put on a line after a break. - *Depends on LV_TXT_LINE_BREAK_LONG_LEN.*/ -#define LV_TXT_LINE_BREAK_LONG_POST_MIN_LEN 3 - -/*Support bidirectional texts. Allows mixing Left-to-Right and Right-to-Left texts. - *The direction will be processed according to the Unicode Bidirectional Algorithm: - *https://www.w3.org/International/articles/inline-bidi-markup/uba-basics*/ -#define LV_USE_BIDI 0 -#if LV_USE_BIDI - /*Set the default direction. Supported values: - *`LV_BASE_DIR_LTR` Left-to-Right - *`LV_BASE_DIR_RTL` Right-to-Left - *`LV_BASE_DIR_AUTO` detect texts base direction*/ - #define LV_BIDI_BASE_DIR_DEF LV_BASE_DIR_AUTO -#endif - -/*Enable Arabic/Persian processing - *In these languages characters should be replaced with an other form based on their position in the text*/ -#define LV_USE_ARABIC_PERSIAN_CHARS 0 - -/*================== - * WIDGETS - *================*/ - -/*Documentation of the widgets: https://docs.lvgl.io/latest/en/html/widgets/index.html*/ - -#define LV_WIDGETS_HAS_DEFAULT_VALUE 1 - -#define LV_USE_ANIMIMG 1 - -#define LV_USE_ARC 1 - -#define LV_USE_BAR 1 - -#define LV_USE_BUTTON 1 - -#define LV_USE_BUTTONMATRIX 1 - -#define LV_USE_CALENDAR 1 -#if LV_USE_CALENDAR - #define LV_CALENDAR_WEEK_STARTS_MONDAY 1 - #if LV_CALENDAR_WEEK_STARTS_MONDAY - #define LV_CALENDAR_DEFAULT_DAY_NAMES {"Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"} - #else - #define LV_CALENDAR_DEFAULT_DAY_NAMES {"Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"} - #endif - - #define LV_CALENDAR_DEFAULT_MONTH_NAMES {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"} - #define LV_USE_CALENDAR_HEADER_ARROW 1 - #define LV_USE_CALENDAR_HEADER_DROPDOWN 1 - #define LV_USE_CALENDAR_CHINESE 0 -#endif /*LV_USE_CALENDAR*/ - -#define LV_USE_CANVAS 1 - -#define LV_USE_CHART 1 - -#define LV_USE_CHECKBOX 1 - -#define LV_USE_DROPDOWN 1 /*Requires: lv_label*/ - -#define LV_USE_IMAGE 1 /*Requires: lv_label*/ - -#define LV_USE_IMAGEBUTTON 1 - -#define LV_USE_KEYBOARD 1 - -#define LV_USE_LABEL 1 -#if LV_USE_LABEL - #define LV_LABEL_TEXT_SELECTION 1 /*Enable selecting text of the label*/ - #define LV_LABEL_LONG_TXT_HINT 1 /*Store some extra info in labels to speed up drawing of very long texts*/ - #define LV_LABEL_WAIT_CHAR_COUNT 3 /*The count of wait chart*/ -#endif - -#define LV_USE_LED 1 - -#define LV_USE_LINE 1 - -#define LV_USE_LIST 1 - -#define LV_USE_LOTTIE 0 /*Requires: lv_canvas, thorvg */ - -#define LV_USE_MENU 1 - -#define LV_USE_MSGBOX 1 - -#define LV_USE_ROLLER 1 /*Requires: lv_label*/ - -#define LV_USE_SCALE 1 - -#define LV_USE_SLIDER 1 /*Requires: lv_bar*/ - -#define LV_USE_SPAN 1 -#if LV_USE_SPAN - /*A line text can contain maximum num of span descriptor */ - #define LV_SPAN_SNIPPET_STACK_SIZE 64 -#endif - -#define LV_USE_SPINBOX 1 - -#define LV_USE_SPINNER 1 - -#define LV_USE_SWITCH 1 - -#define LV_USE_TEXTAREA 1 /*Requires: lv_label*/ -#if LV_USE_TEXTAREA != 0 - #define LV_TEXTAREA_DEF_PWD_SHOW_TIME 1500 /*ms*/ -#endif - -#define LV_USE_TABLE 1 - -#define LV_USE_TABVIEW 1 - -#define LV_USE_TILEVIEW 1 - -#define LV_USE_WIN 1 - -/*================== - * THEMES - *==================*/ - -/*A simple, impressive and very complete theme*/ -#define LV_USE_THEME_DEFAULT 1 -#if LV_USE_THEME_DEFAULT - - /*0: Light mode; 1: Dark mode*/ - #define LV_THEME_DEFAULT_DARK 1 - - /*1: Enable grow on press*/ - #define LV_THEME_DEFAULT_GROW 1 - - /*Default transition time in [ms]*/ - #define LV_THEME_DEFAULT_TRANSITION_TIME 80 -#endif /*LV_USE_THEME_DEFAULT*/ - -/*A very simple theme that is a good starting point for a custom theme*/ -#define LV_USE_THEME_SIMPLE 1 - -/*A theme designed for monochrome displays*/ -#define LV_USE_THEME_MONO 0 - -/*================== - * LAYOUTS - *==================*/ - -/*A layout similar to Flexbox in CSS.*/ -#define LV_USE_FLEX 1 - -/*A layout similar to Grid in CSS.*/ -#define LV_USE_GRID 1 - -/*==================== - * 3RD PARTS LIBRARIES - *====================*/ - -/*File system interfaces for common APIs */ - -/*API for fopen, fread, etc*/ -#define LV_USE_FS_STDIO 0 -#if LV_USE_FS_STDIO - #define LV_FS_STDIO_LETTER 'A' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/ - #define LV_FS_STDIO_PATH "" /*Set the working directory. File/directory paths will be appended to it.*/ - #define LV_FS_STDIO_CACHE_SIZE 0 /*>0 to cache this number of bytes in lv_fs_read()*/ -#endif - -/*API for open, read, etc*/ -#define LV_USE_FS_POSIX 0 -#if LV_USE_FS_POSIX - #define LV_FS_POSIX_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/ - #define LV_FS_POSIX_PATH "" /*Set the working directory. File/directory paths will be appended to it.*/ - #define LV_FS_POSIX_CACHE_SIZE 0 /*>0 to cache this number of bytes in lv_fs_read()*/ -#endif - -/*API for CreateFile, ReadFile, etc*/ -#define LV_USE_FS_WIN32 0 -#if LV_USE_FS_WIN32 - #define LV_FS_WIN32_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/ - #define LV_FS_WIN32_PATH "" /*Set the working directory. File/directory paths will be appended to it.*/ - #define LV_FS_WIN32_CACHE_SIZE 0 /*>0 to cache this number of bytes in lv_fs_read()*/ -#endif - -/*API for FATFS (needs to be added separately). Uses f_open, f_read, etc*/ -#define LV_USE_FS_FATFS 0 -#if LV_USE_FS_FATFS - #define LV_FS_FATFS_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/ - #define LV_FS_FATFS_CACHE_SIZE 0 /*>0 to cache this number of bytes in lv_fs_read()*/ -#endif - -/*API for memory-mapped file access. */ -#define LV_USE_FS_MEMFS 0 -#if LV_USE_FS_MEMFS - #define LV_FS_MEMFS_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/ -#endif - -/*API for LittleFs. */ -#define LV_USE_FS_LITTLEFS 0 -#if LV_USE_FS_LITTLEFS - #define LV_FS_LITTLEFS_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/ -#endif - -/*API for Arduino LittleFs. */ -#define LV_USE_FS_ARDUINO_ESP_LITTLEFS 0 -#if LV_USE_FS_ARDUINO_ESP_LITTLEFS - #define LV_FS_ARDUINO_ESP_LITTLEFS_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/ -#endif - -/*API for Arduino Sd. */ -#define LV_USE_FS_ARDUINO_SD 0 -#if LV_USE_FS_ARDUINO_SD - #define LV_FS_ARDUINO_SD_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/ - #define LV_FS_ARDUINO_SD_CS_PIN 0 /*Set the pin connected to the chip select line of the SD card */ - #define LV_FS_ARDUINO_SD_FREQUENCY 40000000 /*Set the frequency used by the chip of the SD CARD */ -#endif - -/*LODEPNG decoder library*/ -#define LV_USE_LODEPNG 1 - -/*PNG decoder(libpng) library*/ -#define LV_USE_LIBPNG 0 - -/*BMP decoder library*/ -#define LV_USE_BMP 1 - -/* JPG + split JPG decoder library. - * Split JPG is a custom format optimized for embedded systems. */ -#define LV_USE_TJPGD 1 - -/* libjpeg-turbo decoder library. - * Supports complete JPEG specifications and high-performance JPEG decoding. */ -#define LV_USE_LIBJPEG_TURBO 0 - -/*GIF decoder library*/ -#define LV_USE_GIF 1 -#if LV_USE_GIF -/*GIF decoder accelerate*/ -#define LV_GIF_CACHE_DECODE_DATA 1 -#endif - - -/*Decode bin images to RAM*/ -#define LV_BIN_DECODER_RAM_LOAD 0 - -/*RLE decompress library*/ -#define LV_USE_RLE 0 - -/*QR code library*/ -#define LV_USE_QRCODE 1 - -/*Barcode code library*/ -#define LV_USE_BARCODE 1 - -/*FreeType library*/ -#define LV_USE_FREETYPE MICROPY_FREETYPE -#if LV_USE_FREETYPE - /*Let FreeType to use LVGL memory and file porting*/ - #define LV_FREETYPE_USE_LVGL_PORT 0 - - /*Cache count of the glyphs in FreeType. It means the number of glyphs that can be cached. - *The higher the value, the more memory will be used.*/ - #define LV_FREETYPE_CACHE_FT_GLYPH_CNT 256 -#endif - -/* Built-in TTF decoder */ -#define LV_USE_TINY_TTF MICROPY_TINY_TTF -#if LV_USE_TINY_TTF - /* Enable loading TTF data from files */ - #define LV_TINY_TTF_FILE_SUPPORT 1 -#endif - -/*Rlottie library*/ -#define LV_USE_RLOTTIE MICROPY_RLOTTIE - -/*Enable Vector Graphic APIs*/ -#define LV_USE_VECTOR_GRAPHIC 0 - -/* Enable ThorVG (vector graphics library) from the src/libs folder */ -#define LV_USE_THORVG_INTERNAL 0 - -/* Enable ThorVG by assuming that its installed and linked to the project */ -#define LV_USE_THORVG_EXTERNAL 0 - -/*Use lvgl built-in LZ4 lib*/ -#define LV_USE_LZ4_INTERNAL 0 - -/*Use external LZ4 library*/ -#define LV_USE_LZ4_EXTERNAL 0 - -/*FFmpeg library for image decoding and playing videos - *Supports all major image formats so do not enable other image decoder with it*/ -#define LV_USE_FFMPEG MICROPY_FFMPEG -#if LV_USE_FFMPEG - /*Dump input information to stderr*/ - #define LV_FFMPEG_DUMP_FORMAT 0 -#endif - -/*================== - * OTHERS - *==================*/ - -/*1: Enable API to take snapshot for object*/ -#define LV_USE_SNAPSHOT 1 - -/*1: Enable system monitor component*/ -#define LV_USE_SYSMON 1 -#if LV_USE_SYSMON - /*Get the idle percentage. E.g. uint32_t my_get_idle(void);*/ - #define LV_SYSMON_GET_IDLE lv_timer_get_idle - - /*1: Show CPU usage and FPS count - * Requires `LV_USE_SYSMON = 1`*/ - #define LV_USE_PERF_MONITOR 1 - #if LV_USE_PERF_MONITOR - #define LV_USE_PERF_MONITOR_POS LV_ALIGN_BOTTOM_RIGHT - - /*0: Displays performance data on the screen, 1: Prints performance data using log.*/ - #define LV_USE_PERF_MONITOR_LOG_MODE 1 - #endif - - /*1: Show the used memory and the memory fragmentation - * Requires `LV_USE_STDLIB_MALLOC = LV_STDLIB_BUILTIN` - * Requires `LV_USE_SYSMON = 1`*/ - #define LV_USE_MEM_MONITOR 0 - #if LV_USE_MEM_MONITOR - #define LV_USE_MEM_MONITOR_POS LV_ALIGN_BOTTOM_LEFT - #endif - -#endif /*LV_USE_SYSMON*/ - -/*1: Enable the runtime performance profiler*/ -#define LV_USE_PROFILER 0 -#if LV_USE_PROFILER - /*1: Enable the built-in profiler*/ - #define LV_USE_PROFILER_BUILTIN 1 - #if LV_USE_PROFILER_BUILTIN - /*Default profiler trace buffer size*/ - #define LV_PROFILER_BUILTIN_BUF_SIZE (16 * 1024) /*[bytes]*/ - #endif - - /*Header to include for the profiler*/ - #define LV_PROFILER_INCLUDE "lvgl/src/misc/lv_profiler_builtin.h" - - /*Profiler start point function*/ - #define LV_PROFILER_BEGIN LV_PROFILER_BUILTIN_BEGIN - - /*Profiler end point function*/ - #define LV_PROFILER_END LV_PROFILER_BUILTIN_END - - /*Profiler start point function with custom tag*/ - #define LV_PROFILER_BEGIN_TAG LV_PROFILER_BUILTIN_BEGIN_TAG - - /*Profiler end point function with custom tag*/ - #define LV_PROFILER_END_TAG LV_PROFILER_BUILTIN_END_TAG -#endif - -/*1: Enable Monkey test*/ -#define LV_USE_MONKEY 0 - -/*1: Enable grid navigation*/ -#define LV_USE_GRIDNAV 1 - -/*1: Enable lv_obj fragment*/ -#define LV_USE_FRAGMENT 0 - -/*1: Support using images as font in label or span widgets */ -#define LV_USE_IMGFONT 1 -#if LV_USE_IMGFONT - /*Imgfont image file path maximum length*/ - #define LV_IMGFONT_PATH_MAX_LEN 64 - - /*1: Use img cache to buffer header information*/ - #define LV_IMGFONT_USE_IMAGE_CACHE_HEADER 1 -#endif - -/*1: Enable an observer pattern implementation*/ -#define LV_USE_OBSERVER 1 - -/*1: Enable Pinyin input method*/ -/*Requires: lv_keyboard*/ -#define LV_USE_IME_PINYIN 1 -#if LV_USE_IME_PINYIN - /*1: Use default thesaurus*/ - /*If you do not use the default thesaurus, be sure to use `lv_ime_pinyin` after setting the thesauruss*/ - #define LV_IME_PINYIN_USE_DEFAULT_DICT 1 - /*Set the maximum number of candidate panels that can be displayed*/ - /*This needs to be adjusted according to the size of the screen*/ - #define LV_IME_PINYIN_CAND_TEXT_NUM 6 - - /*Use 9 key input(k9)*/ - #define LV_IME_PINYIN_USE_K9_MODE 1 - #if LV_IME_PINYIN_USE_K9_MODE == 1 - #define LV_IME_PINYIN_K9_CAND_TEXT_NUM 3 - #endif /*LV_IME_PINYIN_USE_K9_MODE*/ -#endif - -/*1: Enable file explorer*/ -/*Requires: lv_table*/ -#define LV_USE_FILE_EXPLORER 1 -#if LV_USE_FILE_EXPLORER - /*Maximum length of path*/ - #define LV_FILE_EXPLORER_PATH_MAX_LEN (128) - /*Quick access bar, 1:use, 0:not use*/ - /*Requires: lv_list*/ - #define LV_FILE_EXPLORER_QUICK_ACCESS 1 -#endif - -/*================== - * DEVICES - *==================*/ - -/*Use SDL to open window on PC and handle mouse and keyboard*/ -#define LV_USE_SDL MICROPY_SDL -#if LV_USE_SDL - #define LV_SDL_INCLUDE_PATH - #define LV_SDL_RENDER_MODE LV_DISPLAY_RENDER_MODE_DIRECT /*LV_DISPLAY_RENDER_MODE_DIRECT is recommended for best performance*/ - #define LV_SDL_BUF_COUNT 1 /*1 or 2*/ - #define LV_SDL_FULLSCREEN 0 /*1: Make the window full screen by default*/ - #define LV_SDL_DIRECT_EXIT 1 /*1: Exit the application when all SDL windows are closed*/ - #define LV_SDL_MOUSEWHEEL_MODE LV_SDL_MOUSEWHEEL_MODE_ENCODER /*LV_SDL_MOUSEWHEEL_MODE_ENCODER/CROWN*/ -#endif - -/*Use X11 to open window on Linux desktop and handle mouse and keyboard*/ -#define LV_USE_X11 0 -#if LV_USE_X11 - #define LV_X11_DIRECT_EXIT 1 /*Exit the application when all X11 windows have been closed*/ - #define LV_X11_DOUBLE_BUFFER 1 /*Use double buffers for endering*/ - /*select only 1 of the following render modes (LV_X11_RENDER_MODE_PARTIAL preferred!)*/ - #define LV_X11_RENDER_MODE_PARTIAL 1 /*Partial render mode (preferred)*/ - #define LV_X11_RENDER_MODE_DIRECT 0 /*direct render mode*/ - #define LV_X11_RENDER_MODE_FULL 0 /*Full render mode*/ -#endif - -/*Driver for /dev/fb*/ -#define LV_USE_LINUX_FBDEV MICROPY_FB -#if LV_USE_LINUX_FBDEV - #define LV_LINUX_FBDEV_BSD 0 - #define LV_LINUX_FBDEV_RENDER_MODE LV_DISPLAY_RENDER_MODE_PARTIAL - #define LV_LINUX_FBDEV_BUFFER_COUNT 0 - #define LV_LINUX_FBDEV_BUFFER_SIZE 60 -#endif - -/*Use Nuttx to open window and handle touchscreen*/ -#define LV_USE_NUTTX 0 - -#if LV_USE_NUTTX - #define LV_USE_NUTTX_LIBUV 0 - - /*Use Nuttx custom init API to open window and handle touchscreen*/ - #define LV_USE_NUTTX_CUSTOM_INIT 0 - - /*Driver for /dev/lcd*/ - #define LV_USE_NUTTX_LCD 0 - #if LV_USE_NUTTX_LCD - #define LV_NUTTX_LCD_BUFFER_COUNT 0 - #define LV_NUTTX_LCD_BUFFER_SIZE 60 - #endif - - /*Driver for /dev/input*/ - #define LV_USE_NUTTX_TOUCHSCREEN 0 - -#endif - -/*Driver for /dev/dri/card*/ -#define LV_USE_LINUX_DRM 0 - -/*Interface for TFT_eSPI*/ -#define LV_USE_TFT_ESPI 0 - -/*Driver for evdev input devices*/ -#define LV_USE_EVDEV 0 - -/*Driver for libinput input devices*/ -#define LV_USE_LIBINPUT 0 - -#if LV_USE_LIBINPUT - #define LV_LIBINPUT_BSD 0 - - /*Full keyboard support*/ - #define LV_LIBINPUT_XKB 0 - #if LV_LIBINPUT_XKB - /*"setxkbmap -query" can help find the right values for your keyboard*/ - #define LV_LIBINPUT_XKB_KEY_MAP { .rules = NULL, .model = "pc101", .layout = "us", .variant = NULL, .options = NULL } - #endif -#endif - -/*Drivers for LCD devices connected via SPI/parallel port*/ -#define LV_USE_ST7735 0 -#define LV_USE_ST7789 0 -#define LV_USE_ST7796 0 -#define LV_USE_ILI9341 0 - -#define LV_USE_GENERIC_MIPI (LV_USE_ST7735 | LV_USE_ST7789 | LV_USE_ST7796 | LV_USE_ILI9341) - -/*Driver for Renesas GLCD*/ -#define LV_USE_RENESAS_GLCDC 0 - -/* LVGL Windows backend */ -#define LV_USE_WINDOWS 0 - -/* Use OpenGL to open window on PC and handle mouse and keyboard */ -#define LV_USE_OPENGLES 0 -#if LV_USE_OPENGLES - #define LV_USE_OPENGLES_DEBUG 1 /* Enable or disable debug for opengles */ -#endif - -/*================== -* EXAMPLES -*==================*/ - -/*Enable the examples to be built with the library*/ -#define LV_BUILD_EXAMPLES 0 - -/*=================== - * DEMO USAGE - ====================*/ - -/*Show some widget. It might be required to increase `LV_MEM_SIZE` */ -#define LV_USE_DEMO_WIDGETS 0 - -/*Demonstrate the usage of encoder and keyboard*/ -#define LV_USE_DEMO_KEYPAD_AND_ENCODER 0 - -/*Benchmark your system*/ -#define LV_USE_DEMO_BENCHMARK 0 - -/*Render test for each primitives. Requires at least 480x272 display*/ -#define LV_USE_DEMO_RENDER 0 - -/*Stress test for LVGL*/ -#define LV_USE_DEMO_STRESS 0 - -/*Music player demo*/ -#define LV_USE_DEMO_MUSIC 0 -#if LV_USE_DEMO_MUSIC - #define LV_DEMO_MUSIC_SQUARE 0 - #define LV_DEMO_MUSIC_LANDSCAPE 0 - #define LV_DEMO_MUSIC_ROUND 0 - #define LV_DEMO_MUSIC_LARGE 0 - #define LV_DEMO_MUSIC_AUTO_PLAY 0 -#endif - -/*Flex layout demo*/ -#define LV_USE_DEMO_FLEX_LAYOUT 0 - -/*Smart-phone like multi-language demo*/ -#define LV_USE_DEMO_MULTILANG 0 - -/*Widget transformation demo*/ -#define LV_USE_DEMO_TRANSFORM 0 - -/*Demonstrate scroll settings*/ -#define LV_USE_DEMO_SCROLL 0 - -/*Vector graphic demo*/ -#define LV_USE_DEMO_VECTOR_GRAPHIC 0 - -/*--END OF LV_CONF_H--*/ - -#endif /*LV_CONF_H*/ - -#endif /*End of "Content enable"*/ diff --git a/patches/lvgl_micropython_lib_micropython_add_cnadler86_esp32-camera.patch b/patches/lvgl_micropython_lib_micropython_add_cnadler86_esp32-camera.patch deleted file mode 100644 index 9d31fcd9..00000000 --- a/patches/lvgl_micropython_lib_micropython_add_cnadler86_esp32-camera.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff --git a/ports/esp32/main_esp32s3/idf_component.yml b/ports/esp32/main_esp32s3/idf_component.yml -index 05ab2f2..0ce3878 100644 ---- a/ports/esp32/main_esp32s3/idf_component.yml -+++ b/ports/esp32/main_esp32s3/idf_component.yml -@@ -4,3 +4,5 @@ dependencies: - espressif/esp_tinyusb: "~1.0.0" - idf: - version: ">=5.0.4" -+ espressif/esp32-camera: -+ git: https://github.com/cnadler86/esp32-camera.git diff --git a/patches/lvgl_micropython_lib_micropython_fix_mpremote.patch b/patches/lvgl_micropython_lib_micropython_fix_mpremote.patch deleted file mode 100644 index 6c04b215..00000000 --- a/patches/lvgl_micropython_lib_micropython_fix_mpremote.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/tools/mpremote/mpremote/main.py b/tools/mpremote/mpremote/main.py -index e6e3970..5501fa4 100644 ---- a/tools/mpremote/mpremote/main.py -+++ b/tools/mpremote/mpremote/main.py -@@ -477,7 +477,8 @@ class State: - self.ensure_connected() - soft_reset = self._auto_soft_reset if soft_reset is None else soft_reset - if soft_reset or not self.transport.in_raw_repl: -- self.transport.enter_raw_repl(soft_reset=soft_reset) -+ #self.transport.enter_raw_repl(soft_reset=soft_reset) -+ self.transport.enter_raw_repl(soft_reset=False) - self._auto_soft_reset = False - - def ensure_friendly_repl(self): diff --git a/patches/lvgl_micropython_lib_micropython_fix_ov5640_camera_colors.patch b/patches/lvgl_micropython_lib_micropython_fix_ov5640_camera_colors.patch deleted file mode 100644 index 8d236b6e..00000000 --- a/patches/lvgl_micropython_lib_micropython_fix_ov5640_camera_colors.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- ports/esp32/managed_components/espressif__esp32-camera/sensors/private_include/ov5640_settings.h.orig 2025-04-30 13:55:08.270061607 +0200 -+++ ports/esp32/managed_components/espressif__esp32-camera/sensors/private_include/ov5640_settings.h 2025-04-25 11:34:00.519068438 +0200 -@@ -232,7 +232,8 @@ - - static const DRAM_ATTR uint16_t sensor_fmt_rgb565[][2] = { - {FORMAT_CTRL, 0x01}, // RGB -- {FORMAT_CTRL00, 0x61}, // RGB565 (BGR) -+ //{FORMAT_CTRL00, 0x61}, // RGB565 (BGR) -+ {FORMAT_CTRL00, 0x6F}, // RGB565 (RGB) - {REGLIST_TAIL, 0x00} - }; - diff --git a/patches/lvgl_micropython_lib_micropython_temperature_float.patch b/patches/lvgl_micropython_lib_micropython_temperature_float.patch deleted file mode 100644 index 6c04b215..00000000 --- a/patches/lvgl_micropython_lib_micropython_temperature_float.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/tools/mpremote/mpremote/main.py b/tools/mpremote/mpremote/main.py -index e6e3970..5501fa4 100644 ---- a/tools/mpremote/mpremote/main.py -+++ b/tools/mpremote/mpremote/main.py -@@ -477,7 +477,8 @@ class State: - self.ensure_connected() - soft_reset = self._auto_soft_reset if soft_reset is None else soft_reset - if soft_reset or not self.transport.in_raw_repl: -- self.transport.enter_raw_repl(soft_reset=soft_reset) -+ #self.transport.enter_raw_repl(soft_reset=soft_reset) -+ self.transport.enter_raw_repl(soft_reset=False) - self._auto_soft_reset = False - - def ensure_friendly_repl(self): diff --git a/patches/modesp32.c b/patches/modesp32.c deleted file mode 100644 index 594e3782..00000000 --- a/patches/modesp32.c +++ /dev/null @@ -1,255 +0,0 @@ -/* - * This file is part of the MicroPython project, http://micropython.org/ - * - * The MIT License (MIT) - * - * Copyright (c) 2017 "Eric Poulsen" - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#include -#include - -#include -#include -#include "driver/gpio.h" -#include "driver/adc.h" -#include "esp_heap_caps.h" -#include "multi_heap.h" - -#include "py/nlr.h" -#include "py/obj.h" -#include "py/runtime.h" -#include "py/mphal.h" -#include "shared/timeutils/timeutils.h" -#include "modmachine.h" -#include "machine_rtc.h" -#include "modesp32.h" - -// These private includes are needed for idf_heap_info. -#define MULTI_HEAP_FREERTOS -#include "../multi_heap_platform.h" -#include "../heap_private.h" - -static mp_obj_t esp32_wake_on_touch(const mp_obj_t wake) { - - if (machine_rtc_config.ext0_pin != -1) { - mp_raise_ValueError(MP_ERROR_TEXT("no resources")); - } - // mp_raise_msg(&mp_type_RuntimeError, MP_ERROR_TEXT("touchpad wakeup not available for this version of ESP-IDF")); - - machine_rtc_config.wake_on_touch = mp_obj_is_true(wake); - return mp_const_none; -} -static MP_DEFINE_CONST_FUN_OBJ_1(esp32_wake_on_touch_obj, esp32_wake_on_touch); - -static mp_obj_t esp32_wake_on_ext0(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) { - - if (machine_rtc_config.wake_on_touch) { - mp_raise_ValueError(MP_ERROR_TEXT("no resources")); - } - enum {ARG_pin, ARG_level}; - const mp_arg_t allowed_args[] = { - { MP_QSTR_pin, MP_ARG_OBJ, {.u_obj = mp_obj_new_int(machine_rtc_config.ext0_pin)} }, - { MP_QSTR_level, MP_ARG_BOOL, {.u_bool = machine_rtc_config.ext0_level} }, - }; - mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)]; - mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args); - - if (args[ARG_pin].u_obj == mp_const_none) { - machine_rtc_config.ext0_pin = -1; // "None" - } else { - gpio_num_t pin_id = machine_pin_get_id(args[ARG_pin].u_obj); - if (pin_id != machine_rtc_config.ext0_pin) { - if (!RTC_IS_VALID_EXT_PIN(pin_id)) { - mp_raise_ValueError(MP_ERROR_TEXT("invalid pin")); - } - machine_rtc_config.ext0_pin = pin_id; - } - } - - machine_rtc_config.ext0_level = args[ARG_level].u_bool; - machine_rtc_config.ext0_wake_types = MACHINE_WAKE_SLEEP | MACHINE_WAKE_DEEPSLEEP; - - return mp_const_none; -} -static MP_DEFINE_CONST_FUN_OBJ_KW(esp32_wake_on_ext0_obj, 0, esp32_wake_on_ext0); - -static mp_obj_t esp32_wake_on_ext1(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) { - enum {ARG_pins, ARG_level}; - const mp_arg_t allowed_args[] = { - { MP_QSTR_pins, MP_ARG_OBJ, {.u_obj = mp_const_none} }, - { MP_QSTR_level, MP_ARG_BOOL, {.u_bool = machine_rtc_config.ext1_level} }, - }; - mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)]; - mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args); - uint64_t ext1_pins = machine_rtc_config.ext1_pins; - - - // Check that all pins are allowed - if (args[ARG_pins].u_obj != mp_const_none) { - size_t len = 0; - mp_obj_t *elem; - mp_obj_get_array(args[ARG_pins].u_obj, &len, &elem); - ext1_pins = 0; - - for (int i = 0; i < len; i++) { - - gpio_num_t pin_id = machine_pin_get_id(elem[i]); - if (!RTC_IS_VALID_EXT_PIN(pin_id)) { - mp_raise_ValueError(MP_ERROR_TEXT("invalid pin")); - break; - } - ext1_pins |= (1ll << pin_id); - } - } - - machine_rtc_config.ext1_level = args[ARG_level].u_bool; - machine_rtc_config.ext1_pins = ext1_pins; - - return mp_const_none; -} -static MP_DEFINE_CONST_FUN_OBJ_KW(esp32_wake_on_ext1_obj, 0, esp32_wake_on_ext1); - -static mp_obj_t esp32_wake_on_ulp(const mp_obj_t wake) { - if (machine_rtc_config.ext0_pin != -1) { - mp_raise_ValueError(MP_ERROR_TEXT("no resources")); - } - machine_rtc_config.wake_on_ulp = mp_obj_is_true(wake); - return mp_const_none; -} -static MP_DEFINE_CONST_FUN_OBJ_1(esp32_wake_on_ulp_obj, esp32_wake_on_ulp); - -#if !SOC_GPIO_SUPPORT_HOLD_SINGLE_IO_IN_DSLP -static mp_obj_t esp32_gpio_deep_sleep_hold(const mp_obj_t enable) { - if (mp_obj_is_true(enable)) { - gpio_deep_sleep_hold_en(); - } else { - gpio_deep_sleep_hold_dis(); - } - return mp_const_none; -} -static MP_DEFINE_CONST_FUN_OBJ_1(esp32_gpio_deep_sleep_hold_obj, esp32_gpio_deep_sleep_hold); -#endif - -#if CONFIG_IDF_TARGET_ESP32 - -#include "soc/sens_reg.h" - -static mp_obj_t esp32_raw_temperature(void) { - SET_PERI_REG_BITS(SENS_SAR_MEAS_WAIT2_REG, SENS_FORCE_XPD_SAR, 3, SENS_FORCE_XPD_SAR_S); - SET_PERI_REG_BITS(SENS_SAR_TSENS_CTRL_REG, SENS_TSENS_CLK_DIV, 10, SENS_TSENS_CLK_DIV_S); - CLEAR_PERI_REG_MASK(SENS_SAR_TSENS_CTRL_REG, SENS_TSENS_POWER_UP); - CLEAR_PERI_REG_MASK(SENS_SAR_TSENS_CTRL_REG, SENS_TSENS_DUMP_OUT); - SET_PERI_REG_MASK(SENS_SAR_TSENS_CTRL_REG, SENS_TSENS_POWER_UP_FORCE); - SET_PERI_REG_MASK(SENS_SAR_TSENS_CTRL_REG, SENS_TSENS_POWER_UP); - esp_rom_delay_us(100); - SET_PERI_REG_MASK(SENS_SAR_TSENS_CTRL_REG, SENS_TSENS_DUMP_OUT); - esp_rom_delay_us(5); - int res = GET_PERI_REG_BITS2(SENS_SAR_SLAVE_ADDR3_REG, SENS_TSENS_OUT, SENS_TSENS_OUT_S); - - return mp_obj_new_int(res); -} -static MP_DEFINE_CONST_FUN_OBJ_0(esp32_raw_temperature_obj, esp32_raw_temperature); - -#else - -// IDF 5 exposes new internal temperature interface, and the ESP32C3/S2/S3 -// now have calibrated temperature settings in 5 discrete ranges. -#include "driver/temperature_sensor.h" - -static mp_obj_t esp32_mcu_temperature(void) { - static temperature_sensor_handle_t temp_sensor = NULL; - float tvalue; - if (temp_sensor == NULL) { - temperature_sensor_config_t temp_sensor_config = TEMPERATURE_SENSOR_CONFIG_DEFAULT(-10, 80); - ESP_ERROR_CHECK(temperature_sensor_install(&temp_sensor_config, &temp_sensor)); - } - ESP_ERROR_CHECK(temperature_sensor_enable(temp_sensor)); - ESP_ERROR_CHECK(temperature_sensor_get_celsius(temp_sensor, &tvalue)); - ESP_ERROR_CHECK(temperature_sensor_disable(temp_sensor)); - return mp_obj_new_int((int)(tvalue + 0.5)); - //return mp_obj_new_float(tvalue); // Always seems to return XX.80 degrees... -} -static MP_DEFINE_CONST_FUN_OBJ_0(esp32_mcu_temperature_obj, esp32_mcu_temperature); - -#endif - -static mp_obj_t esp32_idf_heap_info(const mp_obj_t cap_in) { - mp_int_t cap = mp_obj_get_int(cap_in); - multi_heap_info_t info; - heap_t *heap; - mp_obj_t heap_list = mp_obj_new_list(0, 0); - SLIST_FOREACH(heap, ®istered_heaps, next) { - if (heap_caps_match(heap, cap)) { - multi_heap_get_info(heap->heap, &info); - mp_obj_t data[] = { - MP_OBJ_NEW_SMALL_INT(heap->end - heap->start), // total heap size - MP_OBJ_NEW_SMALL_INT(info.total_free_bytes), // total free bytes - MP_OBJ_NEW_SMALL_INT(info.largest_free_block), // largest free contiguous - MP_OBJ_NEW_SMALL_INT(info.minimum_free_bytes), // minimum free seen - }; - mp_obj_t this_heap = mp_obj_new_tuple(4, data); - mp_obj_list_append(heap_list, this_heap); - } - } - return heap_list; -} -static MP_DEFINE_CONST_FUN_OBJ_1(esp32_idf_heap_info_obj, esp32_idf_heap_info); - -static const mp_rom_map_elem_t esp32_module_globals_table[] = { - { MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_esp32) }, - - { MP_ROM_QSTR(MP_QSTR_wake_on_touch), MP_ROM_PTR(&esp32_wake_on_touch_obj) }, - { MP_ROM_QSTR(MP_QSTR_wake_on_ext0), MP_ROM_PTR(&esp32_wake_on_ext0_obj) }, - { MP_ROM_QSTR(MP_QSTR_wake_on_ext1), MP_ROM_PTR(&esp32_wake_on_ext1_obj) }, - { MP_ROM_QSTR(MP_QSTR_wake_on_ulp), MP_ROM_PTR(&esp32_wake_on_ulp_obj) }, - #if !SOC_GPIO_SUPPORT_HOLD_SINGLE_IO_IN_DSLP - { MP_ROM_QSTR(MP_QSTR_gpio_deep_sleep_hold), MP_ROM_PTR(&esp32_gpio_deep_sleep_hold_obj) }, - #endif - #if CONFIG_IDF_TARGET_ESP32 - { MP_ROM_QSTR(MP_QSTR_raw_temperature), MP_ROM_PTR(&esp32_raw_temperature_obj) }, - #else - { MP_ROM_QSTR(MP_QSTR_mcu_temperature), MP_ROM_PTR(&esp32_mcu_temperature_obj) }, - #endif - { MP_ROM_QSTR(MP_QSTR_idf_heap_info), MP_ROM_PTR(&esp32_idf_heap_info_obj) }, - - { MP_ROM_QSTR(MP_QSTR_NVS), MP_ROM_PTR(&esp32_nvs_type) }, - { MP_ROM_QSTR(MP_QSTR_Partition), MP_ROM_PTR(&esp32_partition_type) }, - { MP_ROM_QSTR(MP_QSTR_RMT), MP_ROM_PTR(&esp32_rmt_type) }, - #if CONFIG_IDF_TARGET_ESP32 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3 - { MP_ROM_QSTR(MP_QSTR_ULP), MP_ROM_PTR(&esp32_ulp_type) }, - #endif - - { MP_ROM_QSTR(MP_QSTR_WAKEUP_ALL_LOW), MP_ROM_FALSE }, - { MP_ROM_QSTR(MP_QSTR_WAKEUP_ANY_HIGH), MP_ROM_TRUE }, - - { MP_ROM_QSTR(MP_QSTR_HEAP_DATA), MP_ROM_INT(MALLOC_CAP_8BIT) }, - { MP_ROM_QSTR(MP_QSTR_HEAP_EXEC), MP_ROM_INT(MALLOC_CAP_EXEC) }, -}; - -static MP_DEFINE_CONST_DICT(esp32_module_globals, esp32_module_globals_table); - -const mp_obj_module_t esp32_module = { - .base = { &mp_type_module }, - .globals = (mp_obj_dict_t *)&esp32_module_globals, -}; - -MP_REGISTER_MODULE(MP_QSTR_esp32, esp32_module); diff --git a/patches/mpremote_dont_reset.patch b/patches/mpremote_dont_reset.patch deleted file mode 100644 index 6c04b215..00000000 --- a/patches/mpremote_dont_reset.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/tools/mpremote/mpremote/main.py b/tools/mpremote/mpremote/main.py -index e6e3970..5501fa4 100644 ---- a/tools/mpremote/mpremote/main.py -+++ b/tools/mpremote/mpremote/main.py -@@ -477,7 +477,8 @@ class State: - self.ensure_connected() - soft_reset = self._auto_soft_reset if soft_reset is None else soft_reset - if soft_reset or not self.transport.in_raw_repl: -- self.transport.enter_raw_repl(soft_reset=soft_reset) -+ #self.transport.enter_raw_repl(soft_reset=soft_reset) -+ self.transport.enter_raw_repl(soft_reset=False) - self._auto_soft_reset = False - - def ensure_friendly_repl(self): diff --git a/patches/ov5640_settings.h_fixed b/patches/ov5640_settings.h_fixed deleted file mode 100644 index 0af1e4da..00000000 --- a/patches/ov5640_settings.h_fixed +++ /dev/null @@ -1,336 +0,0 @@ -#ifndef _OV5640_SETTINGS_H_ -#define _OV5640_SETTINGS_H_ - -#include -#include -#include "esp_attr.h" -#include "ov5640_regs.h" - -static const ratio_settings_t ratio_table[] = { - // mw, mh, sx, sy, ex, ey, ox, oy, tx, ty - { 2560, 1920, 0, 0, 2623, 1951, 32, 16, 2844, 1968 }, //4x3 - { 2560, 1704, 0, 110, 2623, 1843, 32, 16, 2844, 1752 }, //3x2 - { 2560, 1600, 0, 160, 2623, 1791, 32, 16, 2844, 1648 }, //16x10 - { 2560, 1536, 0, 192, 2623, 1759, 32, 16, 2844, 1584 }, //5x3 - { 2560, 1440, 0, 240, 2623, 1711, 32, 16, 2844, 1488 }, //16x9 - { 2560, 1080, 0, 420, 2623, 1531, 32, 16, 2844, 1128 }, //21x9 - { 2400, 1920, 80, 0, 2543, 1951, 32, 16, 2684, 1968 }, //5x4 - { 1920, 1920, 320, 0, 2543, 1951, 32, 16, 2684, 1968 }, //1x1 - { 1088, 1920, 736, 0, 1887, 1951, 32, 16, 1884, 1968 } //9x16 -}; - -#define REG_DLY 0xffff -#define REGLIST_TAIL 0x0000 - -static const DRAM_ATTR uint16_t sensor_default_regs[][2] = { - {SYSTEM_CTROL0, 0x82}, // software reset - {REG_DLY, 10}, // delay 10ms - {SYSTEM_CTROL0, 0x42}, // power down - - //enable pll - {0x3103, 0x13}, - - //io direction - {0x3017, 0xff}, - {0x3018, 0xff}, - - {DRIVE_CAPABILITY, 0xc3}, - {CLOCK_POL_CONTROL, 0x21}, - - {0x4713, 0x02},//jpg mode select - - {ISP_CONTROL_01, 0x83}, // turn color matrix, awb and SDE - - //sys reset - {0x3000, 0x20}, // reset MCU - {REG_DLY, 10}, // delay 10ms - {0x3002, 0x1c}, - - //clock enable - {0x3004, 0xff}, - {0x3006, 0xc3}, - - //isp control - {0x5000, 0xa7}, - {ISP_CONTROL_01, 0xa3},//+scaling? - {0x5003, 0x08},//special_effect - - //unknown - {0x370c, 0x02},//!!IMPORTANT - {0x3634, 0x40},//!!IMPORTANT - - //AEC/AGC - {0x3a02, 0x03}, - {0x3a03, 0xd8}, - {0x3a08, 0x01}, - {0x3a09, 0x27}, - {0x3a0a, 0x00}, - {0x3a0b, 0xf6}, - {0x3a0d, 0x04}, - {0x3a0e, 0x03}, - {0x3a0f, 0x30},//ae_level - {0x3a10, 0x28},//ae_level - {0x3a11, 0x60},//ae_level - {0x3a13, 0x43}, - {0x3a14, 0x03}, - {0x3a15, 0xd8}, - {0x3a18, 0x00},//gainceiling - {0x3a19, 0xf8},//gainceiling - {0x3a1b, 0x30},//ae_level - {0x3a1e, 0x26},//ae_level - {0x3a1f, 0x14},//ae_level - - //vcm debug - {0x3600, 0x08}, - {0x3601, 0x33}, - - //50/60Hz - {0x3c01, 0xa4}, - {0x3c04, 0x28}, - {0x3c05, 0x98}, - {0x3c06, 0x00}, - {0x3c07, 0x08}, - {0x3c08, 0x00}, - {0x3c09, 0x1c}, - {0x3c0a, 0x9c}, - {0x3c0b, 0x40}, - - {0x460c, 0x22},//disable jpeg footer - - //BLC - {0x4001, 0x02}, - {0x4004, 0x02}, - - //AWB - {0x5180, 0xff}, - {0x5181, 0xf2}, - {0x5182, 0x00}, - {0x5183, 0x14}, - {0x5184, 0x25}, - {0x5185, 0x24}, - {0x5186, 0x09}, - {0x5187, 0x09}, - {0x5188, 0x09}, - {0x5189, 0x75}, - {0x518a, 0x54}, - {0x518b, 0xe0}, - {0x518c, 0xb2}, - {0x518d, 0x42}, - {0x518e, 0x3d}, - {0x518f, 0x56}, - {0x5190, 0x46}, - {0x5191, 0xf8}, - {0x5192, 0x04}, - {0x5193, 0x70}, - {0x5194, 0xf0}, - {0x5195, 0xf0}, - {0x5196, 0x03}, - {0x5197, 0x01}, - {0x5198, 0x04}, - {0x5199, 0x12}, - {0x519a, 0x04}, - {0x519b, 0x00}, - {0x519c, 0x06}, - {0x519d, 0x82}, - {0x519e, 0x38}, - - //color matrix (Saturation) - {0x5381, 0x1e}, - {0x5382, 0x5b}, - {0x5383, 0x08}, - {0x5384, 0x0a}, - {0x5385, 0x7e}, - {0x5386, 0x88}, - {0x5387, 0x7c}, - {0x5388, 0x6c}, - {0x5389, 0x10}, - {0x538a, 0x01}, - {0x538b, 0x98}, - - //CIP control (Sharpness) - {0x5300, 0x10},//sharpness - {0x5301, 0x10},//sharpness - {0x5302, 0x18},//sharpness - {0x5303, 0x19},//sharpness - {0x5304, 0x10}, - {0x5305, 0x10}, - {0x5306, 0x08},//denoise - {0x5307, 0x16}, - {0x5308, 0x40}, - {0x5309, 0x10},//sharpness - {0x530a, 0x10},//sharpness - {0x530b, 0x04},//sharpness - {0x530c, 0x06},//sharpness - - //GAMMA - {0x5480, 0x01}, - {0x5481, 0x00}, - {0x5482, 0x1e}, - {0x5483, 0x3b}, - {0x5484, 0x58}, - {0x5485, 0x66}, - {0x5486, 0x71}, - {0x5487, 0x7d}, - {0x5488, 0x83}, - {0x5489, 0x8f}, - {0x548a, 0x98}, - {0x548b, 0xa6}, - {0x548c, 0xb8}, - {0x548d, 0xca}, - {0x548e, 0xd7}, - {0x548f, 0xe3}, - {0x5490, 0x1d}, - - //Special Digital Effects (SDE) (UV adjust) - {0x5580, 0x06},//enable brightness and contrast - {0x5583, 0x40},//special_effect - {0x5584, 0x10},//special_effect - {0x5586, 0x20},//contrast - {0x5587, 0x00},//brightness - {0x5588, 0x00},//brightness - {0x5589, 0x10}, - {0x558a, 0x00}, - {0x558b, 0xf8}, - {0x501d, 0x40},// enable manual offset of contrast - - //power on - {0x3008, 0x02}, - - //50Hz - {0x3c00, 0x04}, - - {REG_DLY, 300}, - {REGLIST_TAIL, 0x00}, // tail -}; - -static const DRAM_ATTR uint16_t sensor_fmt_jpeg[][2] = { - {FORMAT_CTRL, 0x00}, // YUV422 - {FORMAT_CTRL00, 0x30}, // YUYV - {0x3002, 0x00},//0x1c to 0x00 !!! - {0x3006, 0xff},//0xc3 to 0xff !!! - {0x471c, 0x50},//0xd0 to 0x50 !!! - {REGLIST_TAIL, 0x00}, // tail -}; - -static const DRAM_ATTR uint16_t sensor_fmt_raw[][2] = { - {FORMAT_CTRL, 0x03}, // RAW (DPC) - {FORMAT_CTRL00, 0x00}, // RAW - {REGLIST_TAIL, 0x00} -}; - -static const DRAM_ATTR uint16_t sensor_fmt_grayscale[][2] = { - {FORMAT_CTRL, 0x00}, // YUV422 - {FORMAT_CTRL00, 0x10}, // Y8 - {REGLIST_TAIL, 0x00} -}; - -static const DRAM_ATTR uint16_t sensor_fmt_yuv422[][2] = { - {FORMAT_CTRL, 0x00}, // YUV422 - {FORMAT_CTRL00, 0x30}, // YUYV - {REGLIST_TAIL, 0x00} -}; - -static const DRAM_ATTR uint16_t sensor_fmt_rgb565[][2] = { - {FORMAT_CTRL, 0x01}, // RGB - //{FORMAT_CTRL00, 0x61}, // RGB565 (BGR) - {FORMAT_CTRL00, 0x6F}, // RGB565 (RGB) - {REGLIST_TAIL, 0x00} -}; - -static const DRAM_ATTR uint8_t sensor_saturation_levels[9][11] = { - {0x1d, 0x60, 0x03, 0x07, 0x48, 0x4f, 0x4b, 0x40, 0x0b, 0x01, 0x98},//-4 - {0x1d, 0x60, 0x03, 0x08, 0x54, 0x5c, 0x58, 0x4b, 0x0d, 0x01, 0x98},//-3 - {0x1d, 0x60, 0x03, 0x0a, 0x60, 0x6a, 0x64, 0x56, 0x0e, 0x01, 0x98},//-2 - {0x1d, 0x60, 0x03, 0x0b, 0x6c, 0x77, 0x70, 0x60, 0x10, 0x01, 0x98},//-1 - {0x1d, 0x60, 0x03, 0x0c, 0x78, 0x84, 0x7d, 0x6b, 0x12, 0x01, 0x98},//0 - {0x1d, 0x60, 0x03, 0x0d, 0x84, 0x91, 0x8a, 0x76, 0x14, 0x01, 0x98},//+1 - {0x1d, 0x60, 0x03, 0x0e, 0x90, 0x9e, 0x96, 0x80, 0x16, 0x01, 0x98},//+2 - {0x1d, 0x60, 0x03, 0x10, 0x9c, 0xac, 0xa2, 0x8b, 0x17, 0x01, 0x98},//+3 - {0x1d, 0x60, 0x03, 0x11, 0xa8, 0xb9, 0xaf, 0x96, 0x19, 0x01, 0x98},//+4 -}; - -static const DRAM_ATTR uint8_t sensor_special_effects[7][4] = { - {0x06, 0x40, 0x2c, 0x08},//Normal - {0x46, 0x40, 0x28, 0x08},//Negative - {0x1e, 0x80, 0x80, 0x08},//Grayscale - {0x1e, 0x80, 0xc0, 0x08},//Red Tint - {0x1e, 0x60, 0x60, 0x08},//Green Tint - {0x1e, 0xa0, 0x40, 0x08},//Blue Tint - {0x1e, 0x40, 0xa0, 0x08},//Sepia -}; - -static const DRAM_ATTR uint16_t sensor_regs_gamma0[][2] = { - {0x5480, 0x01}, - {0x5481, 0x08}, - {0x5482, 0x14}, - {0x5483, 0x28}, - {0x5484, 0x51}, - {0x5485, 0x65}, - {0x5486, 0x71}, - {0x5487, 0x7d}, - {0x5488, 0x87}, - {0x5489, 0x91}, - {0x548a, 0x9a}, - {0x548b, 0xaa}, - {0x548c, 0xb8}, - {0x548d, 0xcd}, - {0x548e, 0xdd}, - {0x548f, 0xea}, - {0x5490, 0x1d} -}; - -static const DRAM_ATTR uint16_t sensor_regs_gamma1[][2] = { - {0x5480, 0x1}, - {0x5481, 0x0}, - {0x5482, 0x1e}, - {0x5483, 0x3b}, - {0x5484, 0x58}, - {0x5485, 0x66}, - {0x5486, 0x71}, - {0x5487, 0x7d}, - {0x5488, 0x83}, - {0x5489, 0x8f}, - {0x548a, 0x98}, - {0x548b, 0xa6}, - {0x548c, 0xb8}, - {0x548d, 0xca}, - {0x548e, 0xd7}, - {0x548f, 0xe3}, - {0x5490, 0x1d} -}; - -static const DRAM_ATTR uint16_t sensor_regs_awb0[][2] = { - {0x5180, 0xff}, - {0x5181, 0xf2}, - {0x5182, 0x00}, - {0x5183, 0x14}, - {0x5184, 0x25}, - {0x5185, 0x24}, - {0x5186, 0x09}, - {0x5187, 0x09}, - {0x5188, 0x09}, - {0x5189, 0x75}, - {0x518a, 0x54}, - {0x518b, 0xe0}, - {0x518c, 0xb2}, - {0x518d, 0x42}, - {0x518e, 0x3d}, - {0x518f, 0x56}, - {0x5190, 0x46}, - {0x5191, 0xf8}, - {0x5192, 0x04}, - {0x5193, 0x70}, - {0x5194, 0xf0}, - {0x5195, 0xf0}, - {0x5196, 0x03}, - {0x5197, 0x01}, - {0x5198, 0x04}, - {0x5199, 0x12}, - {0x519a, 0x04}, - {0x519b, 0x00}, - {0x519c, 0x06}, - {0x519d, 0x82}, - {0x519e, 0x38} -}; - -#endif diff --git a/patches/sdl_bus_allow_fullscreen_and_proper_pointer.patch b/patches/sdl_bus_allow_fullscreen_and_proper_pointer.patch deleted file mode 100644 index 1fef0deb..00000000 --- a/patches/sdl_bus_allow_fullscreen_and_proper_pointer.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/ext_mod/lcd_bus/sdl_bus/sdl_bus.c b/ext_mod/lcd_bus/sdl_bus/sdl_bus.c -index 9378148..d31ef20 100644 ---- a/ext_mod/lcd_bus/sdl_bus/sdl_bus.c -+++ b/ext_mod/lcd_bus/sdl_bus/sdl_bus.c -@@ -182,6 +182,15 @@ - self->panel_io_config.bytes_per_pixel = bpp / 8; - self->texture = SDL_CreateTexture(self->renderer, (SDL_PixelFormatEnum)buffer_size, SDL_TEXTUREACCESS_STREAMING, width, height); - SDL_SetTextureBlendMode(self->texture, SDL_BLENDMODE_BLEND); -+ -+ // Check for SDL_WINDOW_FULLSCREEN environment variable -+ if (getenv("SDL_WINDOW_FULLSCREEN") != NULL) { -+ SDL_SetWindowFullscreen(self->window, SDL_WINDOW_FULLSCREEN); -+ } -+ // Set arrow cursor -+ SDL_Cursor* cursor = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_ARROW); -+ SDL_SetCursor(cursor); -+ - SDL_SetWindowSize(self->window, width, height); - - self->rgb565_byte_swap = false; diff --git a/patches/task_handler.p_fix_remove_callback b/patches/task_handler.p_fix_remove_callback deleted file mode 100644 index 58de9a44..00000000 --- a/patches/task_handler.p_fix_remove_callback +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/api_drivers/common_api_drivers/frozen/other/task_handler.py b/api_drivers/common_api_drivers/frozen/other/task_handler.py -index 67c85fa..99e9f4a 100644 ---- a/api_drivers/common_api_drivers/frozen/other/task_handler.py -+++ b/api_drivers/common_api_drivers/frozen/other/task_handler.py -@@ -82,9 +82,9 @@ class TaskHandler(object): - self._callbacks.append((callback, event, user_data)) - - def remove_event_cb(self, callback): -- for i, obj in self._callbacks: -- if obj[0] == callback: -- self._callbacks.remove(obj) -+ for (cb, evt, data) in self._callbacks: -+ if cb == callback: -+ self._callbacks.remove((cb,evt,data)) - break - - def deinit(self): diff --git a/patches/touch_cst816s_add_cst816.patch b/patches/touch_cst816s_add_cst816.patch deleted file mode 100644 index 315effa3..00000000 --- a/patches/touch_cst816s_add_cst816.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/api_drivers/common_api_drivers/indev/cst816s.py b/api_drivers/common_api_drivers/indev/cst816s.py -index 146bdae..46f3451 100644 ---- a/api_drivers/common_api_drivers/indev/cst816s.py -+++ b/api_drivers/common_api_drivers/indev/cst816s.py -@@ -40,7 +40,8 @@ _BPC1H = const(0xB2) - _BPC1L = const(0xB3) - - _ChipID = const(0xA7) --_ChipIDValue = const(0xB5) -+_ChipIDValueS = const(0xB5) # cst816s -+_ChipIDValue = const(0xB6) # cst816 - - _ProjID = const(0xA8) - _FwVersion = const(0xA9) -@@ -205,7 +206,7 @@ class CST816S(pointer_framework.PointerDriver): - self._read_reg(_FwVersion) - print('FW Version:', hex(self._rx_buf[0])) - -- if chip_id != _ChipIDValue: -+ if chip_id != _ChipIDValue and chip_id != ChipIDValueS: - raise RuntimeError(f'Incorrect chip id ({hex(_ChipIDValue)})') - - self._write_reg(_IrqCtl, _EnTouch | _EnChange) diff --git a/scripts/pngtobin.sh b/scripts/pngtobin.sh deleted file mode 100755 index 7a361848..00000000 --- a/scripts/pngtobin.sh +++ /dev/null @@ -1,3 +0,0 @@ -#~/sources/lvgl_micropython/lib/lvgl/scripts/LVGLImage.py --ofmt BIN --cf RGB565 -o icon_64x64.bin icon_64x64.png -#~/sources/lvgl_micropython/lib/lvgl/scripts/LVGLImage.py --ofmt BIN --cf RGB565 icon_64x64.png -~/sources/lvgl_micropython/lib/lvgl/scripts/LVGLImage.py --ofmt BIN --cf RGB565A8 "$1"