├── .gitignore ├── Images ├── Debug_Popup.JPG ├── Debugging.JPG ├── ESP_Folder.JPG ├── Extensions.JPG ├── VSCode.JPG └── jtag-usb-configuration-zadig.jpg ├── README.md └── blink ├── .vscode ├── c_cpp_properties.json ├── launch.json ├── settings.json └── tasks.json ├── CMakeLists.txt ├── Makefile ├── README.md ├── main ├── CMakeLists.txt ├── Kconfig.projbuild ├── blink.c └── component.mk └── sdkconfig /.gitignore: -------------------------------------------------------------------------------- 1 | blink/build/** 2 | -------------------------------------------------------------------------------- /Images/Debug_Popup.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Adam-U/ESP32_VSCode_Debug/ee22445c56a3b2ed20ae5bc2bce6fbdeaba42dec/Images/Debug_Popup.JPG -------------------------------------------------------------------------------- /Images/Debugging.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Adam-U/ESP32_VSCode_Debug/ee22445c56a3b2ed20ae5bc2bce6fbdeaba42dec/Images/Debugging.JPG -------------------------------------------------------------------------------- /Images/ESP_Folder.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Adam-U/ESP32_VSCode_Debug/ee22445c56a3b2ed20ae5bc2bce6fbdeaba42dec/Images/ESP_Folder.JPG -------------------------------------------------------------------------------- /Images/Extensions.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Adam-U/ESP32_VSCode_Debug/ee22445c56a3b2ed20ae5bc2bce6fbdeaba42dec/Images/Extensions.JPG -------------------------------------------------------------------------------- /Images/VSCode.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Adam-U/ESP32_VSCode_Debug/ee22445c56a3b2ed20ae5bc2bce6fbdeaba42dec/Images/VSCode.JPG -------------------------------------------------------------------------------- /Images/jtag-usb-configuration-zadig.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Adam-U/ESP32_VSCode_Debug/ee22445c56a3b2ed20ae5bc2bce6fbdeaba42dec/Images/jtag-usb-configuration-zadig.jpg -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # VS Code ESP32 JTAG Debug - Example Project # 2 | ## Notes ## 3 | This guide assumes you have setup the esp-idf environment in Windows and can currently run `make flash monitor` and other commands succesfully. [Start with the ESP setup guide if not.](https://docs.espressif.com/projects/esp-idf/en/stable/get-started/index.html#setup-toolchain) 4 | 5 | There are other existing setup guides but this serves as an example project where you can step-by-step debug inside VSCode with one-click and with minimal setup. 6 | 7 | The example project is the default blink example, the only things added is the SDKCONFIG (where you will need to change the COM port to flash) and the .vscode folder which contains the necessary files to allow for intellisense and debugging. The files assume you have the esp-idf and openocd folder in "C:\esp" and msys in "C:\msys32". If not simply change in the json files to where you have them. 8 | 9 | ## Setup ## 10 | --- 11 | 12 | 1. [Download openocd](https://github.com/espressif/openocd-esp32/releases) and extract in the "C:\esp" folder alongside the esp-idf. 13 | 14 | ![Folder](Images/ESP_Folder.JPG "Directory") 15 | 16 | 2. Install the [native-debug extension](https://marketplace.visualstudio.com/items?itemName=webfreak.debug) and also the official C/C++ extension for VS Code. 17 | 18 | ![Ext](Images/Extensions.JPG "Extensions") 19 | 20 | 3. Setup of drivers if necessary. See WROVER setup below if needed. 21 | 22 | 4. Open the blink folder in VS Code and change the COM port in sdkconfig to your ESP32. 23 | 24 | 5. Run `make flash` or `make flash monitor` (You can use Ctrl+J to bring up the integrated terminal) 25 | 26 | ![VSCode](Images/VSCode.JPG "Integrated Terminal") 27 | 28 | 6. `Launch Program` in the debug menu when complete. An error like popup may appear click debug anyway. 29 | 30 | ![Debug Popup](Images/Debug_Popup.JPG "Debugging Task") 31 | ![Debug](Images/Debugging.JPG "Debugging") 32 | 33 | 34 | ## Files ## 35 | --- 36 | `c_cpp_properties.json` - Necessary for intellisense 37 | ```json 38 | { 39 | "configurations": [ 40 | { 41 | "name": "Windows", 42 | "includePath": 43 | [ 44 | "${workspaceFolder}/**", 45 | "C:/esp/esp-idf/components/**", 46 | "C:/msys32/opt/xtensa-esp32-elf/**" 47 | ], 48 | "browse": 49 | { 50 | "path" : 51 | [ 52 | "${workspaceFolder}/**", 53 | "C:/esp/esp-idf/components/**", 54 | "C:/msys32/opt/xtensa-esp32-elf/**" 55 | ] 56 | }, 57 | "defines": [], 58 | "compilerPath": "C:/msys32/opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc.exe", 59 | "cStandard": "c11", 60 | "intelliSenseMode": "gcc-x64", 61 | "cppStandard": "c++11" 62 | } 63 | ], 64 | "version": 4 65 | } 66 | ``` 67 | 68 | `launch.json` - Allows you to click to start debugging, starts openocd before running 69 | ```json 70 | { 71 | "version": "0.2.0", 72 | "configurations": 73 | [ 74 | { 75 | "type": "gdb", 76 | "request": "launch", 77 | "name": "Launch Program", 78 | "target": "./build/${workspaceFolderBasename}.elf", 79 | "cwd": "${workspaceFolder}", 80 | "gdbpath": "C:/msys32/opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gdb", 81 | "autorun": 82 | [ 83 | "target remote :3333", 84 | "mon reset halt", 85 | "flushregs", 86 | "thb app_main", 87 | "c" 88 | ], 89 | "preLaunchTask": "openocd" 90 | } 91 | ] 92 | } 93 | ``` 94 | `tasks.json` - Runs openocd, change the appimage_offset to where the binary is flashed on the ESP if you have changed partition_layout.csv. 0x10000 is the default. This will allow you to set breakpoints succesfully. 95 | 96 | Also enter the correct .cfg, this file assumes you are using the WROVER-KIT. 97 | ```json 98 | { 99 | "version": "2.0.0", 100 | "tasks": 101 | [ 102 | { 103 | "label": "openocd", 104 | "type": "shell", 105 | "isBackground": true, 106 | "options": 107 | { 108 | "cwd": "C:/esp/openocd-esp32" 109 | }, 110 | "command": "bin/openocd -s share/openocd/scripts -f interface/ftdi/esp32_devkitj_v1.cfg -f board/esp32-wrover.cfg -c \"init; halt; esp32 appimage_offset 0x10000\" ", 111 | }, 112 | ] 113 | } 114 | ``` 115 | `settings.json` - Integrated terminal which will open MSYS in the current working directory so you can run 'make flash' and other commands inside VS Code. 116 | ```json 117 | { 118 | "terminal.integrated.shell.windows": "C:\\msys32\\usr\\bin\\bash.exe", 119 | "terminal.integrated.shellArgs.windows": ["--login", "-i"], 120 | "terminal.integrated.env.windows": 121 | { 122 | "MSYSTEM": "MINGW32", 123 | "CHERE_INVOKING":"1" 124 | } 125 | } 126 | ``` 127 | 128 | ### Windows WROVER-KIT setup ### 129 | --- 130 | You can skip this step if not using the WROVER-KIT from Espressif. 131 | 132 | [Full guide where this is extracted from here.](https://docs.espressif.com/projects/esp-idf/en/stable/api-guides/jtag-debugging/configure-wrover.html) 133 | If using the WROVER-KIT make sure to connect the jumpers on the JTAG pins and install the correct drivers. 134 | 135 | 136 | - Using standard USB A / micro USB B cable connect ESP32 WROVER KIT to the computer. Switch the WROVER KIT on. 137 | 138 | - Wait until USB ports of WROVER KIT are recognized by Windows and drives are installed. If they do not install automatically, then then download them from http://www.ftdichip.com/Drivers/D2XX.htm and install manually. 139 | 140 | - Download Zadig tool (Zadig_X.X.exe) from http://zadig.akeo.ie/ and run it. 141 | 142 | - In Zadig tool go to “Options” and check “List All Devices”. 143 | 144 | - Check the list of devices that should contain two WROVER specific USB entries: “Dual RS232-HS (Interface 0)” and “Dual RS232-HS (Interface 1)”. The driver name would be “FTDIBUS (vxxxx)” and USB ID: 0403 6010. 145 | Configuration of JTAG USB driver in Zadig tool 146 | 147 | ![Zadig](Images/jtag-usb-configuration-zadig.jpg "Config of JTAG USB Driver in Zadig") 148 | 149 | - The first device (Dual RS232-HS (Interface 0)) is connected to the JTAG port of the ESP32. Original “FTDIBUS (vxxxx)” driver of this device should be replaced with “WinUSB (v6xxxxx)”. To do so, select “Dual RS232-HS (Interface 0) and reinstall attached driver to the “WinUSB (v6xxxxx)”, see picture above. 150 | 151 | ### Limitations ### 152 | --- 153 | * The popup that appears is due to the way VS Code runs tasks. This can be ignored it doesn't affect the process. Just click debug anyway. 154 | 155 | * Step over does not work correctly due to the way the ESP works with debugging. So when stepping over you do not bypass function calls you will always step into the function. You can workaround by just setting breakpoints to where you want to go and using continue. 156 | 157 | ### Useful Links + Further Reading ### 158 | --- 159 | https://docs.espressif.com/projects/esp-idf/en/stable/get-started/index.html 160 | 161 | https://docs.espressif.com/projects/esp-idf/en/stable/api-guides/jtag-debugging/index.html 162 | 163 | https://higaski.at/vscode-esp32-debugging/ 164 | 165 | https://github.com/VirgiliaBeatrice/esp32-devenv-vscode/blob/master/tutorial.md 166 | -------------------------------------------------------------------------------- /blink/.vscode/c_cpp_properties.json: -------------------------------------------------------------------------------- 1 | { 2 | "configurations": [ 3 | { 4 | "name": "Windows", 5 | "includePath": 6 | [ 7 | "${workspaceFolder}/**", 8 | "C:/esp/esp-idf/components/**", 9 | "C:/msys32/opt/xtensa-esp32-elf/**" 10 | ], 11 | "browse": 12 | { 13 | "path" : 14 | [ 15 | "${workspaceFolder}/**", 16 | "C:/esp/esp-idf/components/**", 17 | "C:/msys32/opt/xtensa-esp32-elf/**" 18 | ] 19 | }, 20 | "defines": [], 21 | "compilerPath": "C:/msys32/opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc.exe", 22 | "cStandard": "c11", 23 | "intelliSenseMode": "gcc-x64", 24 | "cppStandard": "c++11" 25 | } 26 | ], 27 | "version": 4 28 | } -------------------------------------------------------------------------------- /blink/.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.2.0", 3 | "configurations": 4 | [ 5 | { 6 | "type": "gdb", 7 | "request": "launch", 8 | "name": "Launch Program", 9 | "target": "./build/${workspaceFolderBasename}.elf", 10 | "cwd": "${workspaceFolder}", 11 | "gdbpath": "C:/msys32/opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gdb", 12 | "autorun": 13 | [ 14 | "target remote :3333", 15 | "mon reset halt", 16 | "flushregs", 17 | "thb app_main", 18 | "c" 19 | ], 20 | "preLaunchTask": "openocd" 21 | } 22 | ] 23 | } -------------------------------------------------------------------------------- /blink/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "terminal.integrated.shell.windows": "C:\\msys32\\usr\\bin\\bash.exe", 3 | "terminal.integrated.shellArgs.windows": ["--login", "-i"], 4 | "terminal.integrated.env.windows": 5 | { 6 | "MSYSTEM": "MINGW32", 7 | "CHERE_INVOKING":"1" 8 | } 9 | } -------------------------------------------------------------------------------- /blink/.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0.0", 3 | "tasks": 4 | [ 5 | { 6 | "label": "openocd", 7 | "type": "shell", 8 | "isBackground": true, 9 | "options": 10 | { 11 | "cwd": "C:/esp/openocd-esp32" 12 | }, 13 | "command": "bin/openocd -s share/openocd/scripts -f interface/ftdi/esp32_devkitj_v1.cfg -f board/esp32-wrover.cfg -c \"init; halt; esp32 appimage_offset 0x10000\" ", 14 | }, 15 | ] 16 | } -------------------------------------------------------------------------------- /blink/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # The following five lines of boilerplate have to be in your project's 2 | # CMakeLists in this exact order for cmake to work correctly 3 | cmake_minimum_required(VERSION 3.5) 4 | 5 | include($ENV{IDF_PATH}/tools/cmake/project.cmake) 6 | project(blink) 7 | -------------------------------------------------------------------------------- /blink/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # This is a project Makefile. It is assumed the directory this Makefile resides in is a 3 | # project subdirectory. 4 | # 5 | 6 | PROJECT_NAME := blink 7 | 8 | include $(IDF_PATH)/make/project.mk 9 | 10 | -------------------------------------------------------------------------------- /blink/README.md: -------------------------------------------------------------------------------- 1 | # Blink Example 2 | 3 | Starts a FreeRTOS task to blink an LED 4 | 5 | See the README.md file in the upper level 'examples' directory for more information about examples. 6 | -------------------------------------------------------------------------------- /blink/main/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(COMPONENT_SRCS "blink.c") 2 | set(COMPONENT_ADD_INCLUDEDIRS ".") 3 | 4 | register_component() 5 | -------------------------------------------------------------------------------- /blink/main/Kconfig.projbuild: -------------------------------------------------------------------------------- 1 | menu "Example Configuration" 2 | 3 | config BLINK_GPIO 4 | int "Blink GPIO number" 5 | range 0 34 6 | default 5 7 | help 8 | GPIO number (IOxx) to blink on and off. 9 | 10 | Some GPIOs are used for other purposes (flash connections, etc.) and cannot be used to blink. 11 | 12 | GPIOs 35-39 are input-only so cannot be used as outputs. 13 | 14 | endmenu 15 | -------------------------------------------------------------------------------- /blink/main/blink.c: -------------------------------------------------------------------------------- 1 | /* Blink Example 2 | 3 | This example code is in the Public Domain (or CC0 licensed, at your option.) 4 | 5 | Unless required by applicable law or agreed to in writing, this 6 | software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 7 | CONDITIONS OF ANY KIND, either express or implied. 8 | */ 9 | #include 10 | #include "freertos/FreeRTOS.h" 11 | #include "freertos/task.h" 12 | #include "driver/gpio.h" 13 | #include "sdkconfig.h" 14 | 15 | /* Can run 'make menuconfig' to choose the GPIO to blink, 16 | or you can edit the following line and set a number here. 17 | */ 18 | #define BLINK_GPIO CONFIG_BLINK_GPIO 19 | 20 | void blink_task(void *pvParameter) 21 | { 22 | /* Configure the IOMUX register for pad BLINK_GPIO (some pads are 23 | muxed to GPIO on reset already, but some default to other 24 | functions and need to be switched to GPIO. Consult the 25 | Technical Reference for a list of pads and their default 26 | functions.) 27 | */ 28 | gpio_pad_select_gpio(BLINK_GPIO); 29 | /* Set the GPIO as a push/pull output */ 30 | gpio_set_direction(BLINK_GPIO, GPIO_MODE_OUTPUT); 31 | while(1) 32 | { 33 | /* Blink off (output low) */ 34 | gpio_set_level(BLINK_GPIO, 0); 35 | vTaskDelay(1000 / portTICK_PERIOD_MS); 36 | /* Blink on (output high) */ 37 | gpio_set_level(BLINK_GPIO, 1); 38 | vTaskDelay(1000 / portTICK_PERIOD_MS); 39 | } 40 | } 41 | 42 | void app_main() 43 | { 44 | xTaskCreate(&blink_task, "blink_task", configMINIMAL_STACK_SIZE, NULL, 5, NULL); 45 | } 46 | -------------------------------------------------------------------------------- /blink/main/component.mk: -------------------------------------------------------------------------------- 1 | # 2 | # "main" pseudo-component makefile. 3 | # 4 | # (Uses default behaviour of compiling all source files in directory, adding 'include' to include path.) 5 | -------------------------------------------------------------------------------- /blink/sdkconfig: -------------------------------------------------------------------------------- 1 | # 2 | # Automatically generated file; DO NOT EDIT. 3 | # Espressif IoT Development Framework Configuration 4 | # 5 | 6 | # 7 | # SDK tool configuration 8 | # 9 | CONFIG_TOOLPREFIX="xtensa-esp32-elf-" 10 | CONFIG_PYTHON="python" 11 | CONFIG_MAKE_WARN_UNDEFINED_VARIABLES=y 12 | 13 | # 14 | # Bootloader config 15 | # 16 | CONFIG_LOG_BOOTLOADER_LEVEL_NONE= 17 | CONFIG_LOG_BOOTLOADER_LEVEL_ERROR= 18 | CONFIG_LOG_BOOTLOADER_LEVEL_WARN= 19 | CONFIG_LOG_BOOTLOADER_LEVEL_INFO=y 20 | CONFIG_LOG_BOOTLOADER_LEVEL_DEBUG= 21 | CONFIG_LOG_BOOTLOADER_LEVEL_VERBOSE= 22 | CONFIG_LOG_BOOTLOADER_LEVEL=3 23 | CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_8V= 24 | CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_9V=y 25 | CONFIG_BOOTLOADER_FACTORY_RESET= 26 | CONFIG_BOOTLOADER_APP_TEST= 27 | 28 | # 29 | # Security features 30 | # 31 | CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT= 32 | CONFIG_SECURE_BOOT_ENABLED= 33 | CONFIG_FLASH_ENCRYPTION_ENABLED= 34 | 35 | # 36 | # Serial flasher config 37 | # 38 | CONFIG_ESPTOOLPY_PORT="COM16" 39 | CONFIG_ESPTOOLPY_BAUD_115200B=y 40 | CONFIG_ESPTOOLPY_BAUD_230400B= 41 | CONFIG_ESPTOOLPY_BAUD_921600B= 42 | CONFIG_ESPTOOLPY_BAUD_2MB= 43 | CONFIG_ESPTOOLPY_BAUD_OTHER= 44 | CONFIG_ESPTOOLPY_BAUD_OTHER_VAL=115200 45 | CONFIG_ESPTOOLPY_BAUD=115200 46 | CONFIG_ESPTOOLPY_COMPRESSED=y 47 | CONFIG_FLASHMODE_QIO= 48 | CONFIG_FLASHMODE_QOUT= 49 | CONFIG_FLASHMODE_DIO=y 50 | CONFIG_FLASHMODE_DOUT= 51 | CONFIG_ESPTOOLPY_FLASHMODE="dio" 52 | CONFIG_ESPTOOLPY_FLASHFREQ_80M= 53 | CONFIG_ESPTOOLPY_FLASHFREQ_40M=y 54 | CONFIG_ESPTOOLPY_FLASHFREQ_26M= 55 | CONFIG_ESPTOOLPY_FLASHFREQ_20M= 56 | CONFIG_ESPTOOLPY_FLASHFREQ="40m" 57 | CONFIG_ESPTOOLPY_FLASHSIZE_1MB= 58 | CONFIG_ESPTOOLPY_FLASHSIZE_2MB=y 59 | CONFIG_ESPTOOLPY_FLASHSIZE_4MB= 60 | CONFIG_ESPTOOLPY_FLASHSIZE_8MB= 61 | CONFIG_ESPTOOLPY_FLASHSIZE_16MB= 62 | CONFIG_ESPTOOLPY_FLASHSIZE="2MB" 63 | CONFIG_ESPTOOLPY_FLASHSIZE_DETECT=y 64 | CONFIG_ESPTOOLPY_BEFORE_RESET=y 65 | CONFIG_ESPTOOLPY_BEFORE_NORESET= 66 | CONFIG_ESPTOOLPY_BEFORE="default_reset" 67 | CONFIG_ESPTOOLPY_AFTER_RESET=y 68 | CONFIG_ESPTOOLPY_AFTER_NORESET= 69 | CONFIG_ESPTOOLPY_AFTER="hard_reset" 70 | CONFIG_MONITOR_BAUD_9600B= 71 | CONFIG_MONITOR_BAUD_57600B= 72 | CONFIG_MONITOR_BAUD_115200B=y 73 | CONFIG_MONITOR_BAUD_230400B= 74 | CONFIG_MONITOR_BAUD_921600B= 75 | CONFIG_MONITOR_BAUD_2MB= 76 | CONFIG_MONITOR_BAUD_OTHER= 77 | CONFIG_MONITOR_BAUD_OTHER_VAL=115200 78 | CONFIG_MONITOR_BAUD=115200 79 | 80 | # 81 | # Example Configuration 82 | # 83 | CONFIG_BLINK_GPIO=5 84 | 85 | # 86 | # Partition Table 87 | # 88 | CONFIG_PARTITION_TABLE_SINGLE_APP=y 89 | CONFIG_PARTITION_TABLE_TWO_OTA= 90 | CONFIG_PARTITION_TABLE_CUSTOM= 91 | CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" 92 | CONFIG_PARTITION_TABLE_FILENAME="partitions_singleapp.csv" 93 | CONFIG_PARTITION_TABLE_OFFSET=0x8000 94 | CONFIG_PARTITION_TABLE_MD5=y 95 | 96 | # 97 | # Compiler options 98 | # 99 | CONFIG_OPTIMIZATION_LEVEL_DEBUG=y 100 | CONFIG_OPTIMIZATION_LEVEL_RELEASE= 101 | CONFIG_OPTIMIZATION_ASSERTIONS_ENABLED=y 102 | CONFIG_OPTIMIZATION_ASSERTIONS_SILENT= 103 | CONFIG_OPTIMIZATION_ASSERTIONS_DISABLED= 104 | CONFIG_CXX_EXCEPTIONS= 105 | CONFIG_STACK_CHECK_NONE=y 106 | CONFIG_STACK_CHECK_NORM= 107 | CONFIG_STACK_CHECK_STRONG= 108 | CONFIG_STACK_CHECK_ALL= 109 | CONFIG_STACK_CHECK= 110 | CONFIG_WARN_WRITE_STRINGS= 111 | 112 | # 113 | # Component config 114 | # 115 | 116 | # 117 | # Application Level Tracing 118 | # 119 | CONFIG_ESP32_APPTRACE_DEST_TRAX= 120 | CONFIG_ESP32_APPTRACE_DEST_NONE=y 121 | CONFIG_ESP32_APPTRACE_ENABLE= 122 | CONFIG_ESP32_APPTRACE_LOCK_ENABLE=y 123 | CONFIG_AWS_IOT_SDK= 124 | 125 | # 126 | # Bluetooth 127 | # 128 | CONFIG_BT_ENABLED= 129 | CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE=0 130 | CONFIG_BT_RESERVE_DRAM=0 131 | 132 | # 133 | # Driver configurations 134 | # 135 | 136 | # 137 | # ADC configuration 138 | # 139 | CONFIG_ADC_FORCE_XPD_FSM= 140 | CONFIG_ADC2_DISABLE_DAC=y 141 | 142 | # 143 | # SPI master configuration 144 | # 145 | CONFIG_SPI_MASTER_IN_IRAM= 146 | CONFIG_SPI_MASTER_ISR_IN_IRAM=y 147 | 148 | # 149 | # ESP32-specific 150 | # 151 | CONFIG_ESP32_DEFAULT_CPU_FREQ_80= 152 | CONFIG_ESP32_DEFAULT_CPU_FREQ_160=y 153 | CONFIG_ESP32_DEFAULT_CPU_FREQ_240= 154 | CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ=160 155 | CONFIG_SPIRAM_SUPPORT= 156 | CONFIG_MEMMAP_TRACEMEM= 157 | CONFIG_MEMMAP_TRACEMEM_TWOBANKS= 158 | CONFIG_ESP32_TRAX= 159 | CONFIG_TRACEMEM_RESERVE_DRAM=0x0 160 | CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH= 161 | CONFIG_ESP32_ENABLE_COREDUMP_TO_UART= 162 | CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE=y 163 | CONFIG_ESP32_ENABLE_COREDUMP= 164 | CONFIG_TWO_UNIVERSAL_MAC_ADDRESS= 165 | CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS=y 166 | CONFIG_NUMBER_OF_UNIVERSAL_MAC_ADDRESS=4 167 | CONFIG_SYSTEM_EVENT_QUEUE_SIZE=32 168 | CONFIG_SYSTEM_EVENT_TASK_STACK_SIZE=2304 169 | CONFIG_MAIN_TASK_STACK_SIZE=3584 170 | CONFIG_IPC_TASK_STACK_SIZE=1024 171 | CONFIG_TIMER_TASK_STACK_SIZE=3584 172 | CONFIG_NEWLIB_STDOUT_LINE_ENDING_CRLF=y 173 | CONFIG_NEWLIB_STDOUT_LINE_ENDING_LF= 174 | CONFIG_NEWLIB_STDOUT_LINE_ENDING_CR= 175 | CONFIG_NEWLIB_STDIN_LINE_ENDING_CRLF= 176 | CONFIG_NEWLIB_STDIN_LINE_ENDING_LF= 177 | CONFIG_NEWLIB_STDIN_LINE_ENDING_CR=y 178 | CONFIG_NEWLIB_NANO_FORMAT= 179 | CONFIG_CONSOLE_UART_DEFAULT=y 180 | CONFIG_CONSOLE_UART_CUSTOM= 181 | CONFIG_CONSOLE_UART_NONE= 182 | CONFIG_CONSOLE_UART_NUM=0 183 | CONFIG_CONSOLE_UART_BAUDRATE=115200 184 | CONFIG_ULP_COPROC_ENABLED= 185 | CONFIG_ULP_COPROC_RESERVE_MEM=0 186 | CONFIG_ESP32_PANIC_PRINT_HALT= 187 | CONFIG_ESP32_PANIC_PRINT_REBOOT=y 188 | CONFIG_ESP32_PANIC_SILENT_REBOOT= 189 | CONFIG_ESP32_PANIC_GDBSTUB= 190 | CONFIG_ESP32_DEBUG_OCDAWARE=y 191 | CONFIG_ESP32_DEBUG_STUBS_ENABLE=y 192 | CONFIG_INT_WDT=y 193 | CONFIG_INT_WDT_TIMEOUT_MS=300 194 | CONFIG_INT_WDT_CHECK_CPU1=y 195 | CONFIG_TASK_WDT=y 196 | CONFIG_TASK_WDT_PANIC= 197 | CONFIG_TASK_WDT_TIMEOUT_S=5 198 | CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU0=y 199 | CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU1=y 200 | CONFIG_BROWNOUT_DET=y 201 | CONFIG_BROWNOUT_DET_LVL_SEL_0=y 202 | CONFIG_BROWNOUT_DET_LVL_SEL_1= 203 | CONFIG_BROWNOUT_DET_LVL_SEL_2= 204 | CONFIG_BROWNOUT_DET_LVL_SEL_3= 205 | CONFIG_BROWNOUT_DET_LVL_SEL_4= 206 | CONFIG_BROWNOUT_DET_LVL_SEL_5= 207 | CONFIG_BROWNOUT_DET_LVL_SEL_6= 208 | CONFIG_BROWNOUT_DET_LVL_SEL_7= 209 | CONFIG_BROWNOUT_DET_LVL=0 210 | CONFIG_ESP32_TIME_SYSCALL_USE_RTC_FRC1=y 211 | CONFIG_ESP32_TIME_SYSCALL_USE_RTC= 212 | CONFIG_ESP32_TIME_SYSCALL_USE_FRC1= 213 | CONFIG_ESP32_TIME_SYSCALL_USE_NONE= 214 | CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_RC=y 215 | CONFIG_ESP32_RTC_CLOCK_SOURCE_EXTERNAL_CRYSTAL= 216 | CONFIG_ESP32_RTC_CLK_CAL_CYCLES=1024 217 | CONFIG_ESP32_DEEP_SLEEP_WAKEUP_DELAY=2000 218 | CONFIG_ESP32_XTAL_FREQ_40=y 219 | CONFIG_ESP32_XTAL_FREQ_26= 220 | CONFIG_ESP32_XTAL_FREQ_AUTO= 221 | CONFIG_ESP32_XTAL_FREQ=40 222 | CONFIG_DISABLE_BASIC_ROM_CONSOLE= 223 | CONFIG_NO_BLOBS= 224 | CONFIG_ESP_TIMER_PROFILING= 225 | CONFIG_COMPATIBLE_PRE_V2_1_BOOTLOADERS= 226 | CONFIG_ESP_ERR_TO_NAME_LOOKUP=y 227 | 228 | # 229 | # Wi-Fi 230 | # 231 | CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=10 232 | CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32 233 | CONFIG_ESP32_WIFI_STATIC_TX_BUFFER= 234 | CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER=y 235 | CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=1 236 | CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32 237 | CONFIG_ESP32_WIFI_CSI_ENABLED= 238 | CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y 239 | CONFIG_ESP32_WIFI_TX_BA_WIN=6 240 | CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y 241 | CONFIG_ESP32_WIFI_RX_BA_WIN=6 242 | CONFIG_ESP32_WIFI_NVS_ENABLED=y 243 | CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y 244 | CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1= 245 | CONFIG_ESP32_WIFI_SOFTAP_BEACON_MAX_LEN=752 246 | 247 | # 248 | # PHY 249 | # 250 | CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE=y 251 | CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION= 252 | CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER=20 253 | CONFIG_ESP32_PHY_MAX_TX_POWER=20 254 | 255 | # 256 | # Power Management 257 | # 258 | CONFIG_PM_ENABLE= 259 | 260 | # 261 | # ADC-Calibration 262 | # 263 | CONFIG_ADC_CAL_EFUSE_TP_ENABLE=y 264 | CONFIG_ADC_CAL_EFUSE_VREF_ENABLE=y 265 | CONFIG_ADC_CAL_LUT_ENABLE=y 266 | 267 | # 268 | # ESP HTTP client 269 | # 270 | CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y 271 | 272 | # 273 | # Ethernet 274 | # 275 | CONFIG_DMA_RX_BUF_NUM=10 276 | CONFIG_DMA_TX_BUF_NUM=10 277 | CONFIG_EMAC_L2_TO_L3_RX_BUF_MODE= 278 | CONFIG_EMAC_TASK_PRIORITY=20 279 | 280 | # 281 | # FAT Filesystem support 282 | # 283 | CONFIG_FATFS_CODEPAGE_DYNAMIC= 284 | CONFIG_FATFS_CODEPAGE_437=y 285 | CONFIG_FATFS_CODEPAGE_720= 286 | CONFIG_FATFS_CODEPAGE_737= 287 | CONFIG_FATFS_CODEPAGE_771= 288 | CONFIG_FATFS_CODEPAGE_775= 289 | CONFIG_FATFS_CODEPAGE_850= 290 | CONFIG_FATFS_CODEPAGE_852= 291 | CONFIG_FATFS_CODEPAGE_855= 292 | CONFIG_FATFS_CODEPAGE_857= 293 | CONFIG_FATFS_CODEPAGE_860= 294 | CONFIG_FATFS_CODEPAGE_861= 295 | CONFIG_FATFS_CODEPAGE_862= 296 | CONFIG_FATFS_CODEPAGE_863= 297 | CONFIG_FATFS_CODEPAGE_864= 298 | CONFIG_FATFS_CODEPAGE_865= 299 | CONFIG_FATFS_CODEPAGE_866= 300 | CONFIG_FATFS_CODEPAGE_869= 301 | CONFIG_FATFS_CODEPAGE_932= 302 | CONFIG_FATFS_CODEPAGE_936= 303 | CONFIG_FATFS_CODEPAGE_949= 304 | CONFIG_FATFS_CODEPAGE_950= 305 | CONFIG_FATFS_CODEPAGE=437 306 | CONFIG_FATFS_LFN_NONE=y 307 | CONFIG_FATFS_LFN_HEAP= 308 | CONFIG_FATFS_LFN_STACK= 309 | CONFIG_FATFS_FS_LOCK=0 310 | CONFIG_FATFS_TIMEOUT_MS=10000 311 | CONFIG_FATFS_PER_FILE_CACHE=y 312 | 313 | # 314 | # FreeRTOS 315 | # 316 | CONFIG_FREERTOS_UNICORE= 317 | CONFIG_FREERTOS_CORETIMER_0=y 318 | CONFIG_FREERTOS_CORETIMER_1= 319 | CONFIG_FREERTOS_HZ=100 320 | CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION=y 321 | CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE= 322 | CONFIG_FREERTOS_CHECK_STACKOVERFLOW_PTRVAL= 323 | CONFIG_FREERTOS_CHECK_STACKOVERFLOW_CANARY=y 324 | CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK= 325 | CONFIG_FREERTOS_INTERRUPT_BACKTRACE=y 326 | CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS=1 327 | CONFIG_FREERTOS_ASSERT_FAIL_ABORT=y 328 | CONFIG_FREERTOS_ASSERT_FAIL_PRINT_CONTINUE= 329 | CONFIG_FREERTOS_ASSERT_DISABLE= 330 | CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=1536 331 | CONFIG_FREERTOS_ISR_STACKSIZE=1536 332 | CONFIG_FREERTOS_LEGACY_HOOKS= 333 | CONFIG_FREERTOS_MAX_TASK_NAME_LEN=16 334 | CONFIG_SUPPORT_STATIC_ALLOCATION= 335 | CONFIG_TIMER_TASK_PRIORITY=1 336 | CONFIG_TIMER_TASK_STACK_DEPTH=2048 337 | CONFIG_TIMER_QUEUE_LENGTH=10 338 | CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE=0 339 | CONFIG_FREERTOS_USE_TRACE_FACILITY= 340 | CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS= 341 | CONFIG_FREERTOS_DEBUG_INTERNALS= 342 | 343 | # 344 | # Heap memory debugging 345 | # 346 | CONFIG_HEAP_POISONING_DISABLED=y 347 | CONFIG_HEAP_POISONING_LIGHT= 348 | CONFIG_HEAP_POISONING_COMPREHENSIVE= 349 | CONFIG_HEAP_TRACING= 350 | 351 | # 352 | # libsodium 353 | # 354 | CONFIG_LIBSODIUM_USE_MBEDTLS_SHA=y 355 | 356 | # 357 | # Log output 358 | # 359 | CONFIG_LOG_DEFAULT_LEVEL_NONE= 360 | CONFIG_LOG_DEFAULT_LEVEL_ERROR= 361 | CONFIG_LOG_DEFAULT_LEVEL_WARN= 362 | CONFIG_LOG_DEFAULT_LEVEL_INFO=y 363 | CONFIG_LOG_DEFAULT_LEVEL_DEBUG= 364 | CONFIG_LOG_DEFAULT_LEVEL_VERBOSE= 365 | CONFIG_LOG_DEFAULT_LEVEL=3 366 | CONFIG_LOG_COLORS=y 367 | 368 | # 369 | # LWIP 370 | # 371 | CONFIG_L2_TO_L3_COPY= 372 | CONFIG_LWIP_IRAM_OPTIMIZATION= 373 | CONFIG_LWIP_MAX_SOCKETS=10 374 | CONFIG_USE_ONLY_LWIP_SELECT= 375 | CONFIG_LWIP_SO_REUSE=y 376 | CONFIG_LWIP_SO_REUSE_RXTOALL=y 377 | CONFIG_LWIP_SO_RCVBUF= 378 | CONFIG_LWIP_DHCP_MAX_NTP_SERVERS=1 379 | CONFIG_LWIP_IP_FRAG= 380 | CONFIG_LWIP_IP_REASSEMBLY= 381 | CONFIG_LWIP_STATS= 382 | CONFIG_LWIP_ETHARP_TRUST_IP_MAC= 383 | CONFIG_ESP_GRATUITOUS_ARP=y 384 | CONFIG_GARP_TMR_INTERVAL=60 385 | CONFIG_TCPIP_RECVMBOX_SIZE=32 386 | CONFIG_LWIP_DHCP_DOES_ARP_CHECK=y 387 | 388 | # 389 | # DHCP server 390 | # 391 | CONFIG_LWIP_DHCPS_LEASE_UNIT=60 392 | CONFIG_LWIP_DHCPS_MAX_STATION_NUM=8 393 | CONFIG_LWIP_AUTOIP= 394 | CONFIG_LWIP_NETIF_LOOPBACK=y 395 | CONFIG_LWIP_LOOPBACK_MAX_PBUFS=8 396 | 397 | # 398 | # TCP 399 | # 400 | CONFIG_LWIP_MAX_ACTIVE_TCP=16 401 | CONFIG_LWIP_MAX_LISTENING_TCP=16 402 | CONFIG_TCP_MAXRTX=12 403 | CONFIG_TCP_SYNMAXRTX=6 404 | CONFIG_TCP_MSS=1436 405 | CONFIG_TCP_MSL=60000 406 | CONFIG_TCP_SND_BUF_DEFAULT=5744 407 | CONFIG_TCP_WND_DEFAULT=5744 408 | CONFIG_TCP_RECVMBOX_SIZE=6 409 | CONFIG_TCP_QUEUE_OOSEQ=y 410 | CONFIG_ESP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES= 411 | CONFIG_TCP_OVERSIZE_MSS=y 412 | CONFIG_TCP_OVERSIZE_QUARTER_MSS= 413 | CONFIG_TCP_OVERSIZE_DISABLE= 414 | 415 | # 416 | # UDP 417 | # 418 | CONFIG_LWIP_MAX_UDP_PCBS=16 419 | CONFIG_UDP_RECVMBOX_SIZE=6 420 | CONFIG_TCPIP_TASK_STACK_SIZE=2048 421 | CONFIG_PPP_SUPPORT= 422 | 423 | # 424 | # ICMP 425 | # 426 | CONFIG_LWIP_MULTICAST_PING= 427 | CONFIG_LWIP_BROADCAST_PING= 428 | 429 | # 430 | # LWIP RAW API 431 | # 432 | CONFIG_LWIP_MAX_RAW_PCBS=16 433 | 434 | # 435 | # mbedTLS 436 | # 437 | CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384 438 | CONFIG_MBEDTLS_DEBUG= 439 | CONFIG_MBEDTLS_HARDWARE_AES=y 440 | CONFIG_MBEDTLS_HARDWARE_MPI= 441 | CONFIG_MBEDTLS_HARDWARE_SHA= 442 | CONFIG_MBEDTLS_HAVE_TIME=y 443 | CONFIG_MBEDTLS_HAVE_TIME_DATE= 444 | CONFIG_MBEDTLS_TLS_SERVER_AND_CLIENT=y 445 | CONFIG_MBEDTLS_TLS_SERVER_ONLY= 446 | CONFIG_MBEDTLS_TLS_CLIENT_ONLY= 447 | CONFIG_MBEDTLS_TLS_DISABLED= 448 | CONFIG_MBEDTLS_TLS_SERVER=y 449 | CONFIG_MBEDTLS_TLS_CLIENT=y 450 | CONFIG_MBEDTLS_TLS_ENABLED=y 451 | 452 | # 453 | # TLS Key Exchange Methods 454 | # 455 | CONFIG_MBEDTLS_PSK_MODES= 456 | CONFIG_MBEDTLS_KEY_EXCHANGE_RSA=y 457 | CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_RSA=y 458 | CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE=y 459 | CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA=y 460 | CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA=y 461 | CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA=y 462 | CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_RSA=y 463 | CONFIG_MBEDTLS_SSL_RENEGOTIATION=y 464 | CONFIG_MBEDTLS_SSL_PROTO_SSL3= 465 | CONFIG_MBEDTLS_SSL_PROTO_TLS1=y 466 | CONFIG_MBEDTLS_SSL_PROTO_TLS1_1=y 467 | CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y 468 | CONFIG_MBEDTLS_SSL_PROTO_DTLS= 469 | CONFIG_MBEDTLS_SSL_ALPN=y 470 | CONFIG_MBEDTLS_SSL_SESSION_TICKETS=y 471 | 472 | # 473 | # Symmetric Ciphers 474 | # 475 | CONFIG_MBEDTLS_AES_C=y 476 | CONFIG_MBEDTLS_CAMELLIA_C= 477 | CONFIG_MBEDTLS_DES_C= 478 | CONFIG_MBEDTLS_RC4_DISABLED=y 479 | CONFIG_MBEDTLS_RC4_ENABLED_NO_DEFAULT= 480 | CONFIG_MBEDTLS_RC4_ENABLED= 481 | CONFIG_MBEDTLS_BLOWFISH_C= 482 | CONFIG_MBEDTLS_XTEA_C= 483 | CONFIG_MBEDTLS_CCM_C=y 484 | CONFIG_MBEDTLS_GCM_C=y 485 | CONFIG_MBEDTLS_RIPEMD160_C= 486 | 487 | # 488 | # Certificates 489 | # 490 | CONFIG_MBEDTLS_PEM_PARSE_C=y 491 | CONFIG_MBEDTLS_PEM_WRITE_C=y 492 | CONFIG_MBEDTLS_X509_CRL_PARSE_C=y 493 | CONFIG_MBEDTLS_X509_CSR_PARSE_C=y 494 | CONFIG_MBEDTLS_ECP_C=y 495 | CONFIG_MBEDTLS_ECDH_C=y 496 | CONFIG_MBEDTLS_ECDSA_C=y 497 | CONFIG_MBEDTLS_ECP_DP_SECP192R1_ENABLED=y 498 | CONFIG_MBEDTLS_ECP_DP_SECP224R1_ENABLED=y 499 | CONFIG_MBEDTLS_ECP_DP_SECP256R1_ENABLED=y 500 | CONFIG_MBEDTLS_ECP_DP_SECP384R1_ENABLED=y 501 | CONFIG_MBEDTLS_ECP_DP_SECP521R1_ENABLED=y 502 | CONFIG_MBEDTLS_ECP_DP_SECP192K1_ENABLED=y 503 | CONFIG_MBEDTLS_ECP_DP_SECP224K1_ENABLED=y 504 | CONFIG_MBEDTLS_ECP_DP_SECP256K1_ENABLED=y 505 | CONFIG_MBEDTLS_ECP_DP_BP256R1_ENABLED=y 506 | CONFIG_MBEDTLS_ECP_DP_BP384R1_ENABLED=y 507 | CONFIG_MBEDTLS_ECP_DP_BP512R1_ENABLED=y 508 | CONFIG_MBEDTLS_ECP_DP_CURVE25519_ENABLED=y 509 | CONFIG_MBEDTLS_ECP_NIST_OPTIM=y 510 | 511 | # 512 | # NVS 513 | # 514 | CONFIG_MP_BLOB_SUPPORT= 515 | 516 | # 517 | # OpenSSL 518 | # 519 | CONFIG_OPENSSL_DEBUG= 520 | CONFIG_OPENSSL_ASSERT_DO_NOTHING=y 521 | CONFIG_OPENSSL_ASSERT_EXIT= 522 | 523 | # 524 | # PThreads 525 | # 526 | CONFIG_ESP32_PTHREAD_TASK_PRIO_DEFAULT=5 527 | CONFIG_ESP32_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072 528 | 529 | # 530 | # SPI Flash driver 531 | # 532 | CONFIG_SPI_FLASH_VERIFY_WRITE= 533 | CONFIG_SPI_FLASH_ENABLE_COUNTERS= 534 | CONFIG_SPI_FLASH_ROM_DRIVER_PATCH=y 535 | CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ABORTS=y 536 | CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_FAILS= 537 | CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ALLOWED= 538 | 539 | # 540 | # SPIFFS Configuration 541 | # 542 | CONFIG_SPIFFS_MAX_PARTITIONS=3 543 | 544 | # 545 | # SPIFFS Cache Configuration 546 | # 547 | CONFIG_SPIFFS_CACHE=y 548 | CONFIG_SPIFFS_CACHE_WR=y 549 | CONFIG_SPIFFS_CACHE_STATS= 550 | CONFIG_SPIFFS_PAGE_CHECK=y 551 | CONFIG_SPIFFS_GC_MAX_RUNS=10 552 | CONFIG_SPIFFS_GC_STATS= 553 | CONFIG_SPIFFS_PAGE_SIZE=256 554 | CONFIG_SPIFFS_OBJ_NAME_LEN=32 555 | CONFIG_SPIFFS_USE_MAGIC=y 556 | CONFIG_SPIFFS_USE_MAGIC_LENGTH=y 557 | CONFIG_SPIFFS_META_LENGTH=4 558 | CONFIG_SPIFFS_USE_MTIME=y 559 | 560 | # 561 | # Debug Configuration 562 | # 563 | CONFIG_SPIFFS_DBG= 564 | CONFIG_SPIFFS_API_DBG= 565 | CONFIG_SPIFFS_GC_DBG= 566 | CONFIG_SPIFFS_CACHE_DBG= 567 | CONFIG_SPIFFS_CHECK_DBG= 568 | CONFIG_SPIFFS_TEST_VISUALISATION= 569 | 570 | # 571 | # tcpip adapter 572 | # 573 | CONFIG_IP_LOST_TIMER_INTERVAL=120 574 | 575 | # 576 | # Virtual file system 577 | # 578 | CONFIG_SUPPRESS_SELECT_DEBUG_OUTPUT=y 579 | 580 | # 581 | # Wear Levelling 582 | # 583 | CONFIG_WL_SECTOR_SIZE_512= 584 | CONFIG_WL_SECTOR_SIZE_4096=y 585 | CONFIG_WL_SECTOR_SIZE=4096 586 | --------------------------------------------------------------------------------