Browse Source

Added display invert Web ui option

Sebastien L 3 years ago
parent
commit
70e194e763
3 changed files with 212 additions and 613 deletions
  1. 4 1
      components/platform_console/cmd_i2ctools.c
  2. 44 233
      docker/patches/tools/ldgen/fragments.py
  3. 164 379
      sdkconfig

+ 4 - 1
components/platform_console/cmd_i2ctools.c

@@ -100,6 +100,7 @@ static struct {
 	struct arg_int *back;
 	struct arg_int *reset;
 	struct arg_lit *clear;
+	struct arg_lit *invert;
 	struct arg_end *end;
 } i2cdisp_args;
 
@@ -408,6 +409,7 @@ static int do_i2c_set_display(int argc, char **argv)
 	config.rotate = i2cdisp_args.rotate->count>0;
 	config.hflip = i2cdisp_args.hflip->count>0;
 	config.vflip = i2cdisp_args.vflip->count>0;
+	config.invert = i2cdisp_args.invert->count>0;
 
 	if(nerrors==0){
 		fprintf(f,"Saving display configuration\n");
@@ -961,7 +963,7 @@ cJSON * i2c_set_display_cb(){
 		cJSON_AddBoolToObject(values,"rotate",conf->rotate);
 		cJSON_AddBoolToObject(values,"hf",conf->hflip);
 		cJSON_AddBoolToObject(values,"vf",conf->vflip);
-
+		cJSON_AddBoolToObject(values,"invert",conf->invert);
 	}
 	return values;
 }
@@ -982,6 +984,7 @@ static void register_i2c_set_display(){
 	i2cdisp_args.depth = 	arg_int0("p", "depth", "-1|1|4", "Bit Depth (only for SSD1326 displays)");
 	i2cdisp_args.type = 	arg_str0("t", "type", "<I2C|SPI>", "Interface (default I2C)");
 	i2cdisp_args.rotate = 	arg_lit0("r", "rotate", "Rotate 180 degrees");
+	i2cdisp_args.invert = 	arg_lit0("i", "invert", "Invert colors");
 	i2cdisp_args.clear = 	arg_lit0(NULL, "clear", "clear configuration and return");
 	i2cdisp_args.end = 		arg_end(8);
 	const esp_console_cmd_t i2c_set_display= {

+ 44 - 233
docker/patches/tools/ldgen/fragments.py

@@ -1,25 +1,34 @@
 #
-# SPDX-FileCopyrightText: 2021 Espressif Systems (Shanghai) CO LTD
-# SPDX-License-Identifier: Apache-2.0
+# Copyright 2021 Espressif Systems (Shanghai) CO LTD
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
 #
 import abc
 import os
 import re
 from collections import namedtuple
-from enum import Enum
 
-from entity import Entity
-from pyparsing import (Combine, Forward, Group, Keyword, Literal, OneOrMore, Optional, Or, ParseFatalException,
-                       Suppress, Word, ZeroOrMore, alphanums, alphas, delimitedList, indentedBlock, nums,
-                       originalTextFor, restOfLine)
+from pyparsing import (Combine, Forward, Group, Literal, OneOrMore, Optional, ParseFatalException, Suppress, Word,
+                       ZeroOrMore, alphanums, alphas, indentedBlock, originalTextFor, restOfLine)
 from sdkconfig import SDKConfig
 
+KeyGrammar = namedtuple('KeyGrammar', 'grammar min max required')
+
 
 class FragmentFile():
     """
-    Processes a fragment file and stores all parsed fragments. For
-    more information on how this class interacts with classes for the different fragment types,
-    see description of Fragment.
+    Fragment file internal representation. Parses and stores instances of the fragment definitions
+    contained within the file.
     """
 
     def __init__(self, fragment_file, sdkconfig):
@@ -174,36 +183,11 @@ class FragmentFile():
 
 
 class Fragment():
+    __metaclass__ = abc.ABCMeta
     """
-    Base class for a fragment that can be parsed from a fragment file. All fragments
-    share the common grammar:
-
-    [type:name]
-    key1:value1
-    key2:value2
-    ...
-
-    Supporting a new fragment type means deriving a concrete class which specifies
-    key-value pairs that the fragment supports and what to do with the parsed key-value pairs.
-
-    The new fragment must also be appended to FRAGMENT_TYPES, specifying the
-    keyword for the type and the derived class.
-
-    The key of the key-value pair is a simple keyword string. Other parameters
-    that describe the key-value pair is specified in Fragment.KeyValue:
-        1. grammar - pyparsing grammar to parse the value of key-value pair
-        2. min - the minimum number of value in the key entry, None means no minimum
-        3. max - the maximum number of value in the key entry, None means no maximum
-        4. required - if the key-value pair is required in the fragment
-
-    Setting min=max=1 means that the key has a single value.
-
-    FragmentFile provides conditional expression evaluation, enforcing
-    the parameters for Fragment.Keyvalue.
+    Encapsulates a fragment as defined in the generator syntax. Sets values common to all fragment and performs processing
+    such as checking the validity of the fragment name and getting the entry values.
     """
-    __metaclass__ = abc.ABCMeta
-
-    KeyValue = namedtuple('KeyValue', 'grammar min max required')
 
     IDENTIFIER = Word(alphas + '_', alphanums + '_')
     ENTITY = Word(alphanums + '.-_$+')
@@ -218,15 +202,6 @@ class Fragment():
 
 
 class Sections(Fragment):
-    """
-    Fragment which contains list of input sections.
-
-    [sections:<name>]
-    entries:
-        .section1
-        .section2
-        ...
-    """
 
     # Unless quoted, symbol names start with a letter, underscore, or point
     # and may include any letters, underscores, digits, points, and hyphens.
@@ -235,7 +210,7 @@ class Sections(Fragment):
     entries_grammar = Combine(GNU_LD_SYMBOLS + Optional('+'))
 
     grammars = {
-        'entries': Fragment.KeyValue(entries_grammar.setResultsName('section'), 1, None, True)
+        'entries': KeyGrammar(entries_grammar.setResultsName('section'), 1, None, True)
     }
 
     """
@@ -269,19 +244,12 @@ class Sections(Fragment):
 
 class Scheme(Fragment):
     """
-    Fragment which defines where the input sections defined in a Sections fragment
-    is going to end up, the target. The targets are markers in a linker script template
-    (see LinkerScript in linker_script.py).
-
-    [scheme:<name>]
-    entries:
-        sections1 -> target1
-        ...
+    Encapsulates a scheme fragment, which defines what target input sections are placed under.
     """
 
     grammars = {
-        'entries': Fragment.KeyValue(Fragment.IDENTIFIER.setResultsName('sections') + Suppress('->') +
-                                     Fragment.IDENTIFIER.setResultsName('target'), 1, None, True)
+        'entries': KeyGrammar(Fragment.IDENTIFIER.setResultsName('sections') + Suppress('->') +
+                              Fragment.IDENTIFIER.setResultsName('target'), 1, None, True)
     }
 
     def set_key_value(self, key, parse_results):
@@ -296,147 +264,14 @@ class Scheme(Fragment):
 
 class Mapping(Fragment):
     """
-    Fragment which attaches a scheme to entities (see Entity in entity.py), specifying where the input
-    sections of the entity will end up.
-
-    [mapping:<name>]
-    archive: lib1.a
-    entries:
-        obj1:symbol1 (scheme1); section1 -> target1 KEEP SURROUND(sym1) ...
-        obj2 (scheme2)
-        ...
-
-    Ultimately, an `entity (scheme)` entry generates an
-    input section description (see https://sourceware.org/binutils/docs/ld/Input-Section.html)
-    in the output linker script. It is possible to attach 'flags' to the
-    `entity (scheme)` to generate different output commands or to
-    emit additional keywords in the generated input section description. The
-    input section description, as well as other output commands, is defined in
-    output_commands.py.
+    Encapsulates a mapping fragment, which defines what targets the input sections of mappable entties are placed under.
     """
 
-    class Flag():
-        PRE_POST = (Optional(Suppress(',') + Suppress('pre').setParseAction(lambda: True).setResultsName('pre')) +
-                    Optional(Suppress(',') + Suppress('post').setParseAction(lambda: True).setResultsName('post')))
-
-    class Surround(Flag):
-        def __init__(self, symbol):
-            self.symbol = symbol
-            self.pre = True
-            self.post = True
-
-        @staticmethod
-        def get_grammar():
-            # SURROUND(symbol)
-            #
-            # '__symbol_start', '__symbol_end' is generated before and after
-            # the corresponding input section description, respectively.
-            grammar = (Keyword('SURROUND').suppress() +
-                       Suppress('(') +
-                       Fragment.IDENTIFIER.setResultsName('symbol') +
-                       Suppress(')'))
-
-            grammar.setParseAction(lambda tok: Mapping.Surround(tok.symbol))
-            return grammar
-
-        def __eq__(self, other):
-            return (isinstance(other, Mapping.Surround) and
-                    self.symbol == other.symbol)
-
-    class Align(Flag):
-
-        def __init__(self, alignment, pre=True, post=False):
-            self.alignment = alignment
-            self.pre = pre
-            self.post = post
-
-        @staticmethod
-        def get_grammar():
-            # ALIGN(alignment, [, pre, post]).
-            #
-            # Generates alignment command before and/or after the corresponding
-            # input section description, depending whether pre, post or
-            # both are specified.
-            grammar = (Keyword('ALIGN').suppress() +
-                       Suppress('(') +
-                       Word(nums).setResultsName('alignment') +
-                       Mapping.Flag.PRE_POST +
-                       Suppress(')'))
-
-            def on_parse(tok):
-                alignment = int(tok.alignment)
-                if tok.pre == '' and tok.post == '':
-                    res = Mapping.Align(alignment)
-                elif tok.pre != '' and tok.post == '':
-                    res = Mapping.Align(alignment, tok.pre)
-                elif tok.pre == '' and tok.post != '':
-                    res = Mapping.Align(alignment, False, tok.post)
-                else:
-                    res = Mapping.Align(alignment, tok.pre, tok.post)
-                return res
-
-            grammar.setParseAction(on_parse)
-            return grammar
-
-        def __eq__(self, other):
-            return (isinstance(other, Mapping.Align) and
-                    self.alignment == other.alignment and
-                    self.pre == other.pre and
-                    self.post == other.post)
-
-    class Keep(Flag):
-
-        def __init__(self):
-            pass
-
-        @staticmethod
-        def get_grammar():
-            # KEEP()
-            #
-            # Surrounds input section description with KEEP command.
-            grammar = Keyword('KEEP()').setParseAction(Mapping.Keep)
-            return grammar
-
-        def __eq__(self, other):
-            return isinstance(other, Mapping.Keep)
-
-    class Sort(Flag):
-        class Type(Enum):
-            NAME = 0
-            ALIGNMENT = 1
-            INIT_PRIORITY = 2
-
-        def __init__(self, first, second=None):
-            self.first = first
-            self.second = second
-
-        @staticmethod
-        def get_grammar():
-            # SORT([sort_by_first, sort_by_second])
-            #
-            # where sort_by_first, sort_by_second = {name, alignment, init_priority}
-            #
-            # Emits SORT_BY_NAME, SORT_BY_ALIGNMENT or SORT_BY_INIT_PRIORITY
-            # depending on arguments. Nested sort follows linker script rules.
-            keywords = Keyword('name') | Keyword('alignment') | Keyword('init_priority')
-            grammar = (Keyword('SORT').suppress() + Suppress('(') +
-                       keywords.setResultsName('first') +
-                       Optional(Suppress(',') + keywords.setResultsName('second')) + Suppress(')'))
-
-            grammar.setParseAction(lambda tok: Mapping.Sort(tok.first, tok.second if tok.second != '' else None))
-            return grammar
-
-        def __eq__(self, other):
-            return (isinstance(other, Mapping.Sort) and
-                    self.first == other.first and
-                    self.second == other.second)
+    MAPPING_ALL_OBJECTS = '*'
 
     def __init__(self):
         Fragment.__init__(self)
         self.entries = set()
-        # k = (obj, symbol, scheme)
-        # v = list((section, target), Mapping.Flag))
-        self.flags = dict()
         self.deprecated = False
 
     def set_key_value(self, key, parse_results):
@@ -448,64 +283,41 @@ class Mapping(Fragment):
                 symbol = None
                 scheme = None
 
-                obj = result['object']
+                try:
+                    obj = result['object']
+                except KeyError:
+                    pass
 
                 try:
                     symbol = result['symbol']
                 except KeyError:
                     pass
 
-                scheme = result['scheme']
-
-                mapping = (obj, symbol, scheme)
-                self.entries.add(mapping)
-
                 try:
-                    parsed_flags = result['sections_target_flags']
+                    scheme = result['scheme']
                 except KeyError:
-                    parsed_flags = []
-
-                if parsed_flags:
-                    entry_flags = []
-                    for pf in parsed_flags:
-                        entry_flags.append((pf.sections, pf.target, list(pf.flags)))
-
-                    try:
-                        existing_flags = self.flags[mapping]
-                    except KeyError:
-                        existing_flags = list()
-                        self.flags[mapping] = existing_flags
+                    pass
 
-                    existing_flags.extend(entry_flags)
+                self.entries.add((obj, symbol, scheme))
 
     def get_key_grammars(self):
         # There are three possible patterns for mapping entries:
         #       obj:symbol (scheme)
         #       obj (scheme)
         #       * (scheme)
-        # Flags can be specified for section->target in the scheme specified, ex:
-        #       obj (scheme); section->target SURROUND(symbol), section2->target2 ALIGN(4)
         obj = Fragment.ENTITY.setResultsName('object')
         symbol = Suppress(':') + Fragment.IDENTIFIER.setResultsName('symbol')
         scheme = Suppress('(') + Fragment.IDENTIFIER.setResultsName('scheme') + Suppress(')')
 
-        # The flags are specified for section->target in the scheme specified
-        sections_target = Scheme.grammars['entries'].grammar
-
-        flag = Or([f.get_grammar() for f in [Mapping.Keep, Mapping.Align, Mapping.Surround, Mapping.Sort]])
-
-        section_target_flags = Group(sections_target + Group(OneOrMore(flag)).setResultsName('flags'))
-
-        pattern1 = obj + symbol
-        pattern2 = obj
-        pattern3 = Literal(Entity.ALL).setResultsName('object')
+        pattern1 = obj + symbol + scheme
+        pattern2 = obj + scheme
+        pattern3 = Literal(Mapping.MAPPING_ALL_OBJECTS).setResultsName('object') + scheme
 
-        entry = ((pattern1 | pattern2 | pattern3) + scheme +
-                 Optional(Suppress(';') + delimitedList(section_target_flags).setResultsName('sections_target_flags')))
+        entry = pattern1 | pattern2 | pattern3
 
         grammars = {
-            'archive': Fragment.KeyValue(Or([Fragment.ENTITY, Word(Entity.ALL)]).setResultsName('archive'), 1, 1, True),
-            'entries': Fragment.KeyValue(entry, 0, None, True)
+            'archive': KeyGrammar(Fragment.ENTITY.setResultsName('archive'), 1, 1, True),
+            'entries': KeyGrammar(entry, 0, None, True)
         }
 
         return grammars
@@ -513,13 +325,12 @@ class Mapping(Fragment):
 
 class DeprecatedMapping():
     """
-    Mapping fragment with old grammar in versions older than ESP-IDF v4.0. Does not conform to
-    requirements of the Fragment class and thus is limited when it comes to conditional expression
-    evaluation.
+    Encapsulates a mapping fragment, which defines what targets the input sections of mappable entties are placed under.
     """
 
     # Name of the default condition entry
     DEFAULT_CONDITION = 'default'
+    MAPPING_ALL_OBJECTS = '*'
 
     @staticmethod
     def get_fragment_grammar(sdkconfig, fragment_file):
@@ -537,7 +348,7 @@ class DeprecatedMapping():
 
         pattern1 = Group(obj + symbol + scheme)
         pattern2 = Group(obj + scheme)
-        pattern3 = Group(Literal(Entity.ALL).setResultsName('object') + scheme)
+        pattern3 = Group(Literal(Mapping.MAPPING_ALL_OBJECTS).setResultsName('object') + scheme)
 
         mapping_entry = pattern1 | pattern2 | pattern3
 

+ 164 - 379
sdkconfig

@@ -2,138 +2,8 @@
 # Automatically generated file. DO NOT EDIT.
 # Espressif IoT Development Framework (ESP-IDF) Project Configuration
 #
-CONFIG_SOC_BROWNOUT_RESET_SUPPORTED="Not determined"
-CONFIG_SOC_TWAI_BRP_DIV_SUPPORTED="Not determined"
-CONFIG_SOC_CAPS_ECO_VER_MAX=3
-CONFIG_SOC_ADC_SUPPORTED=y
-CONFIG_SOC_DAC_SUPPORTED=y
-CONFIG_SOC_MCPWM_SUPPORTED=y
-CONFIG_SOC_SDMMC_HOST_SUPPORTED=y
-CONFIG_SOC_BT_SUPPORTED=y
-CONFIG_SOC_CLASSIC_BT_SUPPORTED=y
-CONFIG_SOC_PCNT_SUPPORTED=y
-CONFIG_SOC_SDIO_SLAVE_SUPPORTED=y
-CONFIG_SOC_TWAI_SUPPORTED=y
-CONFIG_SOC_EMAC_SUPPORTED=y
-CONFIG_SOC_CPU_CORES_NUM=2
-CONFIG_SOC_ULP_SUPPORTED=y
-CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y
-CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y
-CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y
-CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y
-CONFIG_SOC_I2S_SUPPORTED=y
-CONFIG_SOC_RMT_SUPPORTED=y
-CONFIG_SOC_SIGMADELTA_SUPPORTED=y
-CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y
-CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y
-CONFIG_SOC_ADC_PERIPH_NUM=2
-CONFIG_SOC_ADC_MAX_CHANNEL_NUM=10
-CONFIG_SOC_ADC_DIGI_CONTROLLER_NUM=2
-CONFIG_SOC_ADC_PATT_LEN_MAX=16
-CONFIG_SOC_ADC_DIGI_MIN_BITWIDTH=9
-CONFIG_SOC_ADC_DIGI_MAX_BITWIDTH=12
-CONFIG_SOC_ADC_SAMPLE_FREQ_THRES_HIGH=2
-CONFIG_SOC_ADC_SAMPLE_FREQ_THRES_LOW=2000
-CONFIG_SOC_ADC_MAX_BITWIDTH=12
-CONFIG_SOC_CPU_BREAKPOINTS_NUM=2
-CONFIG_SOC_CPU_WATCHPOINTS_NUM=2
-CONFIG_SOC_CPU_WATCHPOINT_SIZE=64
-CONFIG_SOC_CPU_HAS_FPU=y
-CONFIG_SOC_DAC_PERIPH_NUM=2
-CONFIG_SOC_DAC_RESOLUTION=8
-CONFIG_SOC_GPIO_PORT=1
-CONFIG_SOC_GPIO_PIN_COUNT=40
-CONFIG_SOC_GPIO_VALID_GPIO_MASK=0xFFFFFFFFFF
-CONFIG_SOC_GPIO_SUPPORT_SLP_SWITCH=y
-CONFIG_SOC_I2C_NUM=2
-CONFIG_SOC_I2C_FIFO_LEN=32
-CONFIG_SOC_I2C_SUPPORT_APB=y
-CONFIG_SOC_I2S_NUM=2
-CONFIG_SOC_I2S_SUPPORTS_PDM_TX=y
-CONFIG_SOC_I2S_SUPPORTS_PDM_RX=y
-CONFIG_SOC_I2S_SUPPORTS_ADC=y
-CONFIG_SOC_I2S_SUPPORTS_DAC=y
-CONFIG_SOC_I2S_SUPPORTS_APLL=y
-CONFIG_SOC_I2S_APLL_MIN_FREQ=250000000
-CONFIG_SOC_I2S_APLL_MAX_FREQ=500000000
-CONFIG_SOC_I2S_APLL_MIN_RATE=10675
-CONFIG_SOC_I2S_TRANS_SIZE_ALIGN_WORD=y
-CONFIG_SOC_I2S_LCD_I80_VARIANT=y
-CONFIG_SOC_LCD_I80_SUPPORTED=y
-CONFIG_SOC_LCD_I80_BUSES=y
-CONFIG_SOC_LCD_I80_BUS_WIDTH=24
-CONFIG_SOC_LEDC_HAS_TIMER_SPECIFIC_MUX=y
-CONFIG_SOC_LEDC_SUPPORT_REF_TICK=y
-CONFIG_SOC_LEDC_SUPPORT_HS_MODE=y
-CONFIG_SOC_LEDC_CHANNEL_NUM=8
-CONFIG_SOC_LEDC_TIMER_BIT_WIDE_NUM=20
-CONFIG_SOC_MCPWM_GROUPS=2
-CONFIG_SOC_MCPWM_TIMERS_PER_GROUP=3
-CONFIG_SOC_MCPWM_OPERATORS_PER_GROUP=3
-CONFIG_SOC_MCPWM_COMPARATORS_PER_OPERATOR=2
-CONFIG_SOC_MCPWM_GENERATORS_PER_OPERATOR=2
-CONFIG_SOC_MCPWM_TRIGGERS_PER_OPERATOR=2
-CONFIG_SOC_MCPWM_GPIO_FAULTS_PER_GROUP=3
-CONFIG_SOC_MCPWM_CAPTURE_TIMERS_PER_GROUP=y
-CONFIG_SOC_MCPWM_CAPTURE_CHANNELS_PER_TIMER=3
-CONFIG_SOC_MCPWM_GPIO_SYNCHROS_PER_GROUP=3
-CONFIG_SOC_MCPWM_BASE_CLK_HZ=160000000
-CONFIG_SOC_MPU_MIN_REGION_SIZE=0x20000000
-CONFIG_SOC_MPU_REGIONS_MAX_NUM=8
-CONFIG_SOC_PCNT_GROUPS=1
-CONFIG_SOC_PCNT_UNITS_PER_GROUP=8
-CONFIG_SOC_PCNT_CHANNELS_PER_UNIT=2
-CONFIG_SOC_PCNT_THRES_POINT_PER_UNIT=2
-CONFIG_SOC_RMT_GROUPS=1
-CONFIG_SOC_RMT_TX_CANDIDATES_PER_GROUP=8
-CONFIG_SOC_RMT_RX_CANDIDATES_PER_GROUP=8
-CONFIG_SOC_RMT_CHANNELS_PER_GROUP=8
-CONFIG_SOC_RMT_MEM_WORDS_PER_CHANNEL=64
-CONFIG_SOC_RMT_SUPPORT_REF_TICK=y
-CONFIG_SOC_RMT_CHANNEL_CLK_INDEPENDENT=y
-CONFIG_SOC_RTCIO_PIN_COUNT=18
-CONFIG_SOC_RTCIO_INPUT_OUTPUT_SUPPORTED=y
-CONFIG_SOC_RTCIO_HOLD_SUPPORTED=y
-CONFIG_SOC_RTCIO_WAKE_SUPPORTED=y
-CONFIG_SOC_SIGMADELTA_NUM=1
-CONFIG_SOC_SIGMADELTA_CHANNEL_NUM=8
-CONFIG_SOC_SPI_PERIPH_NUM=3
-CONFIG_SOC_SPI_DMA_CHAN_NUM=2
-CONFIG_SOC_SPI_MAXIMUM_BUFFER_SIZE=64
-CONFIG_SOC_SPI_MAX_PRE_DIVIDER=8192
-CONFIG_SOC_SPI_SUPPORT_AS_CS=y
-CONFIG_SOC_TIMER_GROUPS=2
-CONFIG_SOC_TIMER_GROUP_TIMERS_PER_GROUP=2
-CONFIG_SOC_TIMER_GROUP_COUNTER_BIT_WIDTH=64
-CONFIG_SOC_TOUCH_VERSION_1=y
-CONFIG_SOC_TOUCH_SENSOR_NUM=10
-CONFIG_SOC_TOUCH_PAD_MEASURE_WAIT_MAX=0xFF
-CONFIG_SOC_TWAI_BRP_MIN=2
-CONFIG_SOC_TWAI_SUPPORT_MULTI_ADDRESS_LAYOUT=y
-CONFIG_SOC_UART_NUM=3
-CONFIG_SOC_UART_SUPPORT_REF_TICK=y
-CONFIG_SOC_UART_FIFO_LEN=128
-CONFIG_SOC_UART_BITRATE_MAX=5000000
-CONFIG_SOC_SPIRAM_SUPPORTED=y
-CONFIG_SOC_SHA_SUPPORT_PARALLEL_ENG=y
-CONFIG_SOC_SHA_SUPPORT_SHA1=y
-CONFIG_SOC_SHA_SUPPORT_SHA256=y
-CONFIG_SOC_SHA_SUPPORT_SHA384=y
-CONFIG_SOC_SHA_SUPPORT_SHA512=y
-CONFIG_SOC_RSA_MAX_BIT_LEN=4096
-CONFIG_SOC_AES_SUPPORT_AES_128=y
-CONFIG_SOC_AES_SUPPORT_AES_192=y
-CONFIG_SOC_AES_SUPPORT_AES_256=y
-CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32
-CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21
-CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y
-CONFIG_SOC_PM_SUPPORT_TOUCH_SENSOR_WAKEUP=y
-CONFIG_SOC_SDMMC_USE_IOMUX=y
-CONFIG_SOC_SDMMC_NUM_SLOTS=2
-CONFIG_SOC_BLE_DONT_UPDATE_OWN_RPA=y
 CONFIG_IDF_CMAKE=y
 CONFIG_IDF_TARGET_ARCH_XTENSA=y
-CONFIG_IDF_TARGET_ARCH="xtensa"
 CONFIG_IDF_TARGET="esp32"
 CONFIG_IDF_TARGET_ESP32=y
 CONFIG_IDF_FIRMWARE_CHIP_ID=0x0000
@@ -153,7 +23,6 @@ CONFIG_APP_BUILD_TYPE_APP_2NDBOOT=y
 CONFIG_APP_BUILD_GENERATE_BINARIES=y
 CONFIG_APP_BUILD_BOOTLOADER=y
 CONFIG_APP_BUILD_USE_FLASH_SECTIONS=y
-# CONFIG_APP_REPRODUCIBLE_BUILD is not set
 # end of Build type
 
 #
@@ -206,20 +75,15 @@ CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y
 # CONFIG_SECURE_FLASH_ENC_ENABLED is not set
 # end of Security features
 
-CONFIG_ESP_ROM_HAS_CRC_LE=y
-CONFIG_ESP_ROM_HAS_CRC_BE=y
-CONFIG_ESP_ROM_HAS_JPEG_DECODE=y
-CONFIG_ESP_ROM_SUPPORT_MULTIPLE_UART=y
-
 #
 # Serial flasher config
 #
+CONFIG_ESPTOOLPY_BAUD_OTHER_VAL=115200
 # CONFIG_ESPTOOLPY_NO_STUB is not set
 CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
 # CONFIG_ESPTOOLPY_FLASHMODE_QOUT is not set
 # CONFIG_ESPTOOLPY_FLASHMODE_DIO is not set
 # CONFIG_ESPTOOLPY_FLASHMODE_DOUT is not set
-CONFIG_ESPTOOLPY_FLASH_SAMPLE_MODE_STR=y
 CONFIG_ESPTOOLPY_FLASHMODE="dio"
 CONFIG_ESPTOOLPY_FLASHFREQ_80M=y
 # CONFIG_ESPTOOLPY_FLASHFREQ_40M is not set
@@ -255,7 +119,6 @@ CONFIG_ESPTOOLPY_MONITOR_BAUD=115200
 # Partition Table
 #
 # CONFIG_PARTITION_TABLE_SINGLE_APP is not set
-# CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE is not set
 # CONFIG_PARTITION_TABLE_TWO_OTA is not set
 CONFIG_PARTITION_TABLE_CUSTOM=y
 CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv"
@@ -264,6 +127,45 @@ CONFIG_PARTITION_TABLE_OFFSET=0x8000
 CONFIG_PARTITION_TABLE_MD5=y
 # end of Partition Table
 
+#
+# Network Manager Configuration
+#
+
+#
+# WiFi Options
+#
+CONFIG_WIFI_MANAGER_TASK_PRIORITY=5
+CONFIG_WIFI_MANAGER_MAX_RETRY=2
+CONFIG_DEFAULT_AP_SSID="squeezelite"
+CONFIG_DEFAULT_AP_PASSWORD="squeezelite"
+CONFIG_DEFAULT_AP_CHANNEL=1
+CONFIG_DEFAULT_AP_IP="192.168.4.1"
+CONFIG_DEFAULT_AP_GATEWAY="192.168.4.1"
+CONFIG_DEFAULT_AP_NETMASK="255.255.255.0"
+CONFIG_DEFAULT_AP_MAX_CONNECTIONS=4
+CONFIG_DEFAULT_AP_BEACON_INTERVAL=100
+# end of WiFi Options
+
+#
+# Ethernet Options
+#
+CONFIG_ETH_NODRIVER=y
+# CONFIG_ETH_LAN8720 is not set
+# CONFIG_ETH_DM9051 is not set
+# CONFIG_ETH_W5500 is not set
+CONFIG_ETH_PHY_RST_IO=-1
+CONFIG_ETH_MDC_IO=-1
+CONFIG_ETH_MDIO_IO=-1
+CONFIG_ETH_SPI_HOST=-1
+CONFIG_ETH_SPI_INTR_IO=-1
+CONFIG_ETH_SPI_CS_IO=-1
+CONFIG_ETH_SPI_CLK_IO=-1
+CONFIG_ETH_SPI_MOSI_IO=-1
+CONFIG_ETH_SPI_MISO_IO=-1
+CONFIG_ETH_SPI_SPEED=20000000
+# end of Ethernet Options
+# end of Network Manager Configuration
+
 CONFIG_LWIP_MAX_SOCKETS=20
 
 #
@@ -415,45 +317,6 @@ CONFIG_ROTARY_ENCODER=""
 CONFIG_DEFAULT_COMMAND_LINE="squeezelite -o I2S -b 500:2000 -d all=info -C 30 -W"
 # end of Squeezelite-ESP32
 
-#
-# Network Manager Configuration
-#
-
-#
-# WiFi Options
-#
-CONFIG_WIFI_MANAGER_TASK_PRIORITY=5
-CONFIG_WIFI_MANAGER_MAX_RETRY=2
-CONFIG_DEFAULT_AP_SSID="squeezelite"
-CONFIG_DEFAULT_AP_PASSWORD="squeezelite"
-CONFIG_DEFAULT_AP_CHANNEL=1
-CONFIG_DEFAULT_AP_IP="192.168.4.1"
-CONFIG_DEFAULT_AP_GATEWAY="192.168.4.1"
-CONFIG_DEFAULT_AP_NETMASK="255.255.255.0"
-CONFIG_DEFAULT_AP_MAX_CONNECTIONS=4
-CONFIG_DEFAULT_AP_BEACON_INTERVAL=100
-# end of WiFi Options
-
-#
-# Ethernet Options
-#
-CONFIG_ETH_NODRIVER=y
-# CONFIG_ETH_LAN8720 is not set
-# CONFIG_ETH_DM9051 is not set
-# CONFIG_ETH_W5500 is not set
-CONFIG_ETH_PHY_RST_IO=-1
-CONFIG_ETH_MDC_IO=-1
-CONFIG_ETH_MDIO_IO=-1
-CONFIG_ETH_SPI_HOST=-1
-CONFIG_ETH_SPI_INTR_IO=-1
-CONFIG_ETH_SPI_CS_IO=-1
-CONFIG_ETH_SPI_CLK_IO=-1
-CONFIG_ETH_SPI_MOSI_IO=-1
-CONFIG_ETH_SPI_MISO_IO=-1
-CONFIG_ETH_SPI_SPEED=20000000
-# end of Ethernet Options
-# end of Network Manager Configuration
-
 #
 # Compiler options
 #
@@ -464,9 +327,6 @@ CONFIG_COMPILER_OPTIMIZATION_SIZE=y
 # CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE is not set
 CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT=y
 # CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE is not set
-CONFIG_COMPILER_OPTIMIZATION_ASSERTION_LEVEL=1
-# CONFIG_COMPILER_OPTIMIZATION_CHECKS_SILENT is not set
-CONFIG_COMPILER_HIDE_PATHS_MACROS=y
 CONFIG_COMPILER_CXX_EXCEPTIONS=y
 CONFIG_COMPILER_CXX_EXCEPTIONS_EMG_POOL_SIZE=0
 # CONFIG_COMPILER_CXX_RTTI is not set
@@ -486,7 +346,7 @@ CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y
 #
 # Application Level Tracing
 #
-# CONFIG_APPTRACE_DEST_JTAG is not set
+# CONFIG_APPTRACE_DEST_TRAX is not set
 CONFIG_APPTRACE_DEST_NONE=y
 CONFIG_APPTRACE_LOCK_ENABLE=y
 # end of Application Level Tracing
@@ -501,9 +361,10 @@ CONFIG_APPTRACE_LOCK_ENABLE=y
 # Bluetooth
 #
 CONFIG_BT_ENABLED=y
+CONFIG_BT_CTRL_ESP32=y
 
 #
-# Bluetooth controller
+# Bluetooth controller(ESP32 Dual Mode Bluetooth)
 #
 # CONFIG_BTDM_CTRL_MODE_BLE_ONLY is not set
 CONFIG_BTDM_CTRL_MODE_BR_EDR_ONLY=y
@@ -541,9 +402,37 @@ CONFIG_BTDM_CTRL_LPCLK_SEL_MAIN_XTAL=y
 # end of MODEM SLEEP Options
 
 CONFIG_BTDM_BLE_SLEEP_CLOCK_ACCURACY_INDEX_EFF=1
-CONFIG_BTDM_RESERVE_DRAM=0xdb5c
-CONFIG_BTDM_CTRL_HLI=y
-# end of Bluetooth controller
+# end of Bluetooth controller(ESP32 Dual Mode Bluetooth)
+
+CONFIG_BT_CTRL_MODE_EFF=1
+CONFIG_BT_CTRL_BLE_MAX_ACT=10
+CONFIG_BT_CTRL_BLE_MAX_ACT_EFF=10
+CONFIG_BT_CTRL_BLE_STATIC_ACL_TX_BUF_NB=0
+CONFIG_BT_CTRL_PINNED_TO_CORE=0
+CONFIG_BT_CTRL_HCI_TL=1
+CONFIG_BT_CTRL_ADV_DUP_FILT_MAX=30
+CONFIG_BT_CTRL_HW_CCA_EFF=0
+CONFIG_BT_CTRL_DFT_TX_POWER_LEVEL_EFF=0
+CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP=y
+CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM=100
+CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD=20
+CONFIG_BT_CTRL_BLE_SCAN_DUPL=y
+CONFIG_BT_CTRL_SCAN_DUPL_TYPE=0
+CONFIG_BT_CTRL_SCAN_DUPL_CACHE_SIZE=100
+
+#
+# MODEM SLEEP Options
+#
+# end of MODEM SLEEP Options
+
+CONFIG_BT_CTRL_SLEEP_MODE_EFF=0
+CONFIG_BT_CTRL_SLEEP_CLOCK_EFF=0
+CONFIG_BT_CTRL_HCI_TL_EFF=1
+
+#
+# MODEM SLEEP Options
+#
+# end of MODEM SLEEP Options
 
 CONFIG_BT_BLUEDROID_ENABLED=y
 # CONFIG_BT_NIMBLE_ENABLED is not set
@@ -562,7 +451,7 @@ CONFIG_BT_CLASSIC_ENABLED=y
 CONFIG_BT_A2DP_ENABLE=y
 # CONFIG_BT_SPP_ENABLED is not set
 # CONFIG_BT_HFP_ENABLE is not set
-# CONFIG_BT_HID_ENABLED is not set
+# CONFIG_BT_HID_HOST_ENABLED is not set
 CONFIG_BT_SSP_ENABLED=y
 # CONFIG_BT_BLE_ENABLED is not set
 CONFIG_BT_STACK_NO_LOG=y
@@ -575,7 +464,10 @@ CONFIG_BT_SMP_ENABLE=y
 CONFIG_BT_BLE_ESTAB_LINK_CONN_TOUT=30
 CONFIG_BT_MAX_DEVICE_NAME_LEN=32
 # CONFIG_BT_BLE_RPA_SUPPORTED is not set
+CONFIG_BT_RESERVE_DRAM=0xdb5c
 # end of Bluedroid Options
+
+CONFIG_BT_NIMBLE_USE_ESP_TIMER=y
 # end of Bluetooth
 
 # CONFIG_BLE_MESH is not set
@@ -600,12 +492,6 @@ CONFIG_COAP_LOG_DEFAULT_LEVEL=0
 CONFIG_ADC_DISABLE_DAC=y
 # end of ADC configuration
 
-#
-# MCPWM configuration
-#
-# CONFIG_MCPWM_ISR_IN_IRAM is not set
-# end of MCPWM configuration
-
 #
 # SPI configuration
 #
@@ -642,13 +528,6 @@ CONFIG_SPI_MASTER_ISR_IN_IRAM=y
 #
 # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set
 # end of GPIO Configuration
-
-#
-# GDMA Configuration
-#
-# CONFIG_GDMA_CTRL_FUNC_IN_IRAM is not set
-# CONFIG_GDMA_ISR_IRAM_SAFE is not set
-# end of GDMA Configuration
 # end of Driver configurations
 
 #
@@ -668,7 +547,6 @@ CONFIG_EFUSE_MAX_BLK_LEN=192
 CONFIG_ESP_TLS_USING_MBEDTLS=y
 # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set
 # CONFIG_ESP_TLS_SERVER is not set
-# CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set
 # CONFIG_ESP_TLS_PSK_VERIFICATION is not set
 CONFIG_ESP_TLS_INSECURE=y
 CONFIG_ESP_TLS_SKIP_SERVER_CERT_VERIFY=y
@@ -710,7 +588,6 @@ CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=256
 CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y
 CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=65536
 CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY=y
-# CONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY is not set
 CONFIG_SPIRAM_CACHE_WORKAROUND=y
 
 #
@@ -721,23 +598,6 @@ CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_MEMW=y
 # CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_NOPS is not set
 # end of SPIRAM cache workaround debugging
 
-#
-# SPIRAM workaround libraries placement
-#
-CONFIG_SPIRAM_CACHE_LIBJMP_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBMATH_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBNUMPARSER_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBIO_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBTIME_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBCHAR_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBMEM_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBSTR_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBRAND_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBENV_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBFILE_IN_IRAM=y
-CONFIG_SPIRAM_CACHE_LIBMISC_IN_IRAM=y
-# end of SPIRAM workaround libraries placement
-
 # CONFIG_SPIRAM_BANKSWITCH_ENABLE is not set
 CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY=y
 # CONFIG_SPIRAM_OCCUPY_HSPI_HOST is not set
@@ -769,6 +629,9 @@ CONFIG_PICO_PSRAM_CS_IO=10
 
 # CONFIG_ESP32_TRAX is not set
 CONFIG_ESP32_TRACEMEM_RESERVE_DRAM=0x0
+# CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_TWO is not set
+CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_FOUR=y
+CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES=4
 # CONFIG_ESP32_ULP_COPROC_ENABLED is not set
 CONFIG_ESP32_ULP_COPROC_RESERVE_MEM=0
 CONFIG_ESP32_DEBUG_OCDAWARE=y
@@ -782,6 +645,7 @@ CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_0=y
 # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_6 is not set
 # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_7 is not set
 CONFIG_ESP32_BROWNOUT_DET_LVL=0
+CONFIG_ESP32_REDUCE_PHY_TX_POWER=y
 CONFIG_ESP32_TIME_SYSCALL_USE_RTC_FRC1=y
 # CONFIG_ESP32_TIME_SYSCALL_USE_RTC is not set
 # CONFIG_ESP32_TIME_SYSCALL_USE_FRC1 is not set
@@ -815,6 +679,32 @@ CONFIG_ADC_CAL_LUT_ENABLE=y
 # Common ESP-related
 #
 CONFIG_ESP_ERR_TO_NAME_LOOKUP=y
+CONFIG_ESP_SYSTEM_EVENT_QUEUE_SIZE=32
+CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=3400
+CONFIG_ESP_MAIN_TASK_STACK_SIZE=8192
+CONFIG_ESP_IPC_TASK_STACK_SIZE=1024
+CONFIG_ESP_IPC_USES_CALLERS_PRIORITY=y
+CONFIG_ESP_MINIMAL_SHARED_STACK_SIZE=2048
+CONFIG_ESP_CONSOLE_UART_DEFAULT=y
+# CONFIG_ESP_CONSOLE_UART_CUSTOM is not set
+# CONFIG_ESP_CONSOLE_NONE is not set
+CONFIG_ESP_CONSOLE_UART=y
+CONFIG_ESP_CONSOLE_MULTIPLE_UART=y
+CONFIG_ESP_CONSOLE_UART_NUM=0
+CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200
+CONFIG_ESP_INT_WDT=y
+CONFIG_ESP_INT_WDT_TIMEOUT_MS=800
+CONFIG_ESP_INT_WDT_CHECK_CPU1=y
+CONFIG_ESP_TASK_WDT=y
+# CONFIG_ESP_TASK_WDT_PANIC is not set
+CONFIG_ESP_TASK_WDT_TIMEOUT_S=5
+CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0=y
+CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1=y
+# CONFIG_ESP_PANIC_HANDLER_IRAM is not set
+CONFIG_ESP_MAC_ADDR_UNIVERSE_WIFI_STA=y
+CONFIG_ESP_MAC_ADDR_UNIVERSE_WIFI_AP=y
+CONFIG_ESP_MAC_ADDR_UNIVERSE_BT=y
+CONFIG_ESP_MAC_ADDR_UNIVERSE_ETH=y
 CONFIG_ESP_ALLOW_BSS_SEG_EXTERNAL_MEMORY=y
 # end of Common ESP-related
 
@@ -824,6 +714,7 @@ CONFIG_ESP_ALLOW_BSS_SEG_EXTERNAL_MEMORY=y
 CONFIG_ETH_ENABLED=y
 CONFIG_ETH_USE_ESP32_EMAC=y
 CONFIG_ETH_PHY_INTERFACE_RMII=y
+# CONFIG_ETH_PHY_INTERFACE_MII is not set
 CONFIG_ETH_RMII_CLK_INPUT=y
 # CONFIG_ETH_RMII_CLK_OUTPUT is not set
 CONFIG_ETH_RMII_CLK_IN_GPIO=0
@@ -833,7 +724,6 @@ CONFIG_ETH_DMA_TX_BUFFER_NUM=10
 CONFIG_ETH_USE_SPI_ETHERNET=y
 CONFIG_ETH_SPI_ETHERNET_DM9051=y
 CONFIG_ETH_SPI_ETHERNET_W5500=y
-# CONFIG_ETH_SPI_ETHERNET_KSZ8851SNL is not set
 # CONFIG_ETH_USE_OPENETH is not set
 # end of Ethernet
 
@@ -855,7 +745,6 @@ CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR=y
 #
 CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y
 # CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is not set
-# CONFIG_ESP_HTTP_CLIENT_ENABLE_DIGEST_AUTH is not set
 # end of ESP HTTP client
 
 #
@@ -881,48 +770,6 @@ CONFIG_HTTPD_PURGE_BUF_LEN=32
 # CONFIG_ESP_HTTPS_SERVER_ENABLE is not set
 # end of ESP HTTPS server
 
-#
-# Hardware Settings
-#
-
-#
-# MAC Config
-#
-CONFIG_ESP_MAC_ADDR_UNIVERSE_WIFI_STA=y
-CONFIG_ESP_MAC_ADDR_UNIVERSE_WIFI_AP=y
-CONFIG_ESP_MAC_ADDR_UNIVERSE_BT=y
-CONFIG_ESP_MAC_ADDR_UNIVERSE_ETH=y
-# CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_TWO is not set
-CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_FOUR=y
-CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES=4
-# end of MAC Config
-
-#
-# Sleep Config
-#
-CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y
-# CONFIG_ESP_SLEEP_GPIO_RESET_WORKAROUND is not set
-# CONFIG_ESP_SLEEP_PSRAM_LEAKAGE_WORKAROUND is not set
-# CONFIG_ESP_SLEEP_FLASH_LEAKAGE_WORKAROUND is not set
-# end of Sleep Config
-
-#
-# RTC Clock Config
-#
-# end of RTC Clock Config
-# end of Hardware Settings
-
-#
-# LCD and Touch Panel
-#
-
-#
-# LCD Peripheral Configuration
-#
-CONFIG_LCD_PANEL_IO_FORMAT_BUF_SIZE=32
-# end of LCD Peripheral Configuration
-# end of LCD and Touch Panel
-
 #
 # ESP NETIF Adapter
 #
@@ -930,19 +777,8 @@ CONFIG_ESP_NETIF_IP_LOST_TIMER_INTERVAL=120
 CONFIG_ESP_NETIF_TCPIP_LWIP=y
 # CONFIG_ESP_NETIF_LOOPBACK is not set
 CONFIG_ESP_NETIF_TCPIP_ADAPTER_COMPATIBLE_LAYER=y
-# CONFIG_ESP_NETIF_L2_TAP is not set
 # end of ESP NETIF Adapter
 
-#
-# PHY
-#
-CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE=y
-# CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is not set
-CONFIG_ESP_PHY_MAX_WIFI_TX_POWER=20
-CONFIG_ESP_PHY_MAX_TX_POWER=20
-CONFIG_ESP_PHY_REDUCE_TX_POWER=y
-# end of PHY
-
 #
 # Power Management
 #
@@ -956,49 +792,15 @@ CONFIG_ESP_PHY_REDUCE_TX_POWER=y
 CONFIG_ESP_SYSTEM_PANIC_PRINT_REBOOT=y
 # CONFIG_ESP_SYSTEM_PANIC_SILENT_REBOOT is not set
 # CONFIG_ESP_SYSTEM_PANIC_GDBSTUB is not set
-# CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME is not set
+# CONFIG_ESP_SYSTEM_PSRAM_LEAKAGE_WORKAROUND is not set
+# CONFIG_ESP_SYSTEM_FLASH_LEAKAGE_WORKAROUND is not set
 
 #
 # Memory protection
 #
 # end of Memory protection
-
-CONFIG_ESP_SYSTEM_EVENT_QUEUE_SIZE=32
-CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=3400
-CONFIG_ESP_MAIN_TASK_STACK_SIZE=8192
-CONFIG_ESP_MAIN_TASK_AFFINITY_CPU0=y
-# CONFIG_ESP_MAIN_TASK_AFFINITY_CPU1 is not set
-# CONFIG_ESP_MAIN_TASK_AFFINITY_NO_AFFINITY is not set
-CONFIG_ESP_MAIN_TASK_AFFINITY=0x0
-CONFIG_ESP_MINIMAL_SHARED_STACK_SIZE=2048
-CONFIG_ESP_CONSOLE_UART_DEFAULT=y
-# CONFIG_ESP_CONSOLE_UART_CUSTOM is not set
-# CONFIG_ESP_CONSOLE_NONE is not set
-CONFIG_ESP_CONSOLE_UART=y
-CONFIG_ESP_CONSOLE_MULTIPLE_UART=y
-CONFIG_ESP_CONSOLE_UART_NUM=0
-CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200
-CONFIG_ESP_INT_WDT=y
-CONFIG_ESP_INT_WDT_TIMEOUT_MS=800
-CONFIG_ESP_INT_WDT_CHECK_CPU1=y
-CONFIG_ESP_TASK_WDT=y
-# CONFIG_ESP_TASK_WDT_PANIC is not set
-CONFIG_ESP_TASK_WDT_TIMEOUT_S=5
-CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0=y
-CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1=y
-# CONFIG_ESP_PANIC_HANDLER_IRAM is not set
-# CONFIG_ESP_DEBUG_STUBS_ENABLE is not set
-CONFIG_ESP_SYSTEM_CHECK_INT_LEVEL_5=y
 # end of ESP System Settings
 
-#
-# IPC (Inter-Processor Call)
-#
-CONFIG_ESP_IPC_TASK_STACK_SIZE=1024
-CONFIG_ESP_IPC_USES_CALLERS_PRIORITY=y
-CONFIG_ESP_IPC_ISR_ENABLE=y
-# end of IPC (Inter-Processor Call)
-
 #
 # High resolution timer (esp_timer)
 #
@@ -1006,8 +808,6 @@ CONFIG_ESP_IPC_ISR_ENABLE=y
 CONFIG_ESP_TIME_FUNCS_USE_RTC_TIMER=y
 CONFIG_ESP_TIME_FUNCS_USE_ESP_TIMER=y
 CONFIG_ESP_TIMER_TASK_STACK_SIZE=3584
-CONFIG_ESP_TIMER_INTERRUPT_LEVEL=1
-# CONFIG_ESP_TIMER_SUPPORTS_ISR_DISPATCH_METHOD is not set
 # CONFIG_ESP_TIMER_IMPL_FRC2 is not set
 CONFIG_ESP_TIMER_IMPL_TG0_LAC=y
 # end of High resolution timer (esp_timer)
@@ -1015,7 +815,6 @@ CONFIG_ESP_TIMER_IMPL_TG0_LAC=y
 #
 # Wi-Fi
 #
-CONFIG_ESP32_WIFI_ENABLED=y
 CONFIG_ESP32_WIFI_SW_COEXIST_ENABLE=y
 CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=12
 CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=40
@@ -1032,15 +831,28 @@ CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y
 # CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1 is not set
 CONFIG_ESP32_WIFI_SOFTAP_BEACON_MAX_LEN=752
 CONFIG_ESP32_WIFI_MGMT_SBUF_NUM=32
+# CONFIG_WIFI_LOG_DEFAULT_LEVEL_NONE is not set
+# CONFIG_WIFI_LOG_DEFAULT_LEVEL_ERROR is not set
+# CONFIG_WIFI_LOG_DEFAULT_LEVEL_WARN is not set
+CONFIG_WIFI_LOG_DEFAULT_LEVEL_INFO=y
+# CONFIG_WIFI_LOG_DEFAULT_LEVEL_DEBUG is not set
+# CONFIG_WIFI_LOG_DEFAULT_LEVEL_VERBOSE is not set
 # CONFIG_ESP32_WIFI_IRAM_OPT is not set
 # CONFIG_ESP32_WIFI_RX_IRAM_OPT is not set
 CONFIG_ESP32_WIFI_ENABLE_WPA3_SAE=y
 # CONFIG_ESP_WIFI_SLP_IRAM_OPT is not set
 # CONFIG_ESP_WIFI_STA_DISCONNECTED_PM_ENABLE is not set
-# CONFIG_ESP_WIFI_GMAC_SUPPORT is not set
-CONFIG_ESP_WIFI_SOFTAP_SUPPORT=y
 # end of Wi-Fi
 
+#
+# PHY
+#
+CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE=y
+# CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION is not set
+CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER=20
+CONFIG_ESP32_PHY_MAX_TX_POWER=20
+# end of PHY
+
 #
 # Core dump
 #
@@ -1051,7 +863,6 @@ CONFIG_ESP_COREDUMP_ENABLE_TO_NONE=y
 #
 # FAT Filesystem support
 #
-CONFIG_FATFS_VOLUME_COUNT=2
 # CONFIG_FATFS_CODEPAGE_DYNAMIC is not set
 CONFIG_FATFS_CODEPAGE_437=y
 # CONFIG_FATFS_CODEPAGE_720 is not set
@@ -1109,7 +920,11 @@ CONFIG_FMB_CONTROLLER_NOTIFY_QUEUE_SIZE=20
 CONFIG_FMB_CONTROLLER_STACK_SIZE=4096
 CONFIG_FMB_EVENT_QUEUE_TIMEOUT=20
 # CONFIG_FMB_TIMER_PORT_ENABLED is not set
-# CONFIG_FMB_TIMER_USE_ISR_DISPATCH_METHOD is not set
+CONFIG_FMB_TIMER_GROUP=0
+CONFIG_FMB_TIMER_INDEX=0
+CONFIG_FMB_MASTER_TIMER_GROUP=0
+CONFIG_FMB_MASTER_TIMER_INDEX=0
+# CONFIG_FMB_TIMER_ISR_IN_IRAM is not set
 # end of Modbus configuration
 
 #
@@ -1117,10 +932,8 @@ CONFIG_FMB_EVENT_QUEUE_TIMEOUT=20
 #
 # CONFIG_FREERTOS_UNICORE is not set
 CONFIG_FREERTOS_NO_AFFINITY=0x7FFFFFFF
-CONFIG_FREERTOS_TICK_SUPPORT_CORETIMER=y
 CONFIG_FREERTOS_CORETIMER_0=y
 # CONFIG_FREERTOS_CORETIMER_1 is not set
-CONFIG_FREERTOS_SYSTICK_USES_CCOUNT=y
 CONFIG_FREERTOS_HZ=100
 CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION=y
 # CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE is not set
@@ -1153,19 +966,8 @@ CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER=y
 CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH=y
 CONFIG_FREERTOS_DEBUG_OCDAWARE=y
 # CONFIG_FREERTOS_FPU_IN_ISR is not set
-CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT=y
-# CONFIG_FREERTOS_PLACE_SNAPSHOT_FUNS_INTO_FLASH is not set
 # end of FreeRTOS
 
-#
-# Hardware Abstraction Layer (HAL) and Low Level (LL)
-#
-CONFIG_HAL_ASSERTION_EQUALS_SYSTEM=y
-# CONFIG_HAL_ASSERTION_DISABLE is not set
-# CONFIG_HAL_ASSERTION_SILIENT is not set
-CONFIG_HAL_DEFAULT_ASSERTION_LEVEL=1
-# end of Hardware Abstraction Layer (HAL) and Low Level (LL)
-
 #
 # Heap memory debugging
 #
@@ -1178,6 +980,18 @@ CONFIG_HEAP_TRACING_OFF=y
 # CONFIG_HEAP_ABORT_WHEN_ALLOCATION_FAILS is not set
 # end of Heap memory debugging
 
+#
+# jsmn
+#
+# CONFIG_JSMN_PARENT_LINKS is not set
+# CONFIG_JSMN_STRICT is not set
+# end of jsmn
+
+#
+# libsodium
+#
+# end of libsodium
+
 #
 # Log output
 #
@@ -1188,10 +1002,6 @@ CONFIG_LOG_DEFAULT_LEVEL_INFO=y
 # CONFIG_LOG_DEFAULT_LEVEL_DEBUG is not set
 # CONFIG_LOG_DEFAULT_LEVEL_VERBOSE is not set
 CONFIG_LOG_DEFAULT_LEVEL=3
-CONFIG_LOG_MAXIMUM_EQUALS_DEFAULT=y
-# CONFIG_LOG_MAXIMUM_LEVEL_DEBUG is not set
-# CONFIG_LOG_MAXIMUM_LEVEL_VERBOSE is not set
-CONFIG_LOG_MAXIMUM_LEVEL=3
 CONFIG_LOG_COLORS=y
 CONFIG_LOG_TIMESTAMP_SOURCE_RTOS=y
 # CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM is not set
@@ -1201,8 +1011,6 @@ CONFIG_LOG_TIMESTAMP_SOURCE_RTOS=y
 # LWIP
 #
 CONFIG_LWIP_LOCAL_HOSTNAME="SqueezeESP32"
-# CONFIG_LWIP_NETIF_API is not set
-# CONFIG_LWIP_TCPIP_CORE_LOCKING is not set
 CONFIG_LWIP_DNS_SUPPORT_MDNS_QUERIES=y
 # CONFIG_LWIP_L2_TO_L3_COPY is not set
 # CONFIG_LWIP_IRAM_OPTIMIZATION is not set
@@ -1225,9 +1033,7 @@ CONFIG_LWIP_GARP_TMR_INTERVAL=60
 CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=32
 CONFIG_LWIP_DHCP_DOES_ARP_CHECK=y
 # CONFIG_LWIP_DHCP_DISABLE_CLIENT_ID is not set
-CONFIG_LWIP_DHCP_DISABLE_VENDOR_CLASS_ID=y
 CONFIG_LWIP_DHCP_RESTORE_LAST_IP=y
-CONFIG_LWIP_DHCP_OPTIONS_LEN=68
 
 #
 # DHCP server
@@ -1240,9 +1046,6 @@ CONFIG_LWIP_DHCPS_MAX_STATION_NUM=8
 # CONFIG_LWIP_AUTOIP is not set
 CONFIG_LWIP_IPV6=y
 # CONFIG_LWIP_IPV6_AUTOCONFIG is not set
-CONFIG_LWIP_IPV6_NUM_ADDRESSES=3
-# CONFIG_LWIP_IPV6_FORWARD is not set
-# CONFIG_LWIP_NETIF_STATUS_CALLBACK is not set
 CONFIG_LWIP_NETIF_LOOPBACK=y
 CONFIG_LWIP_LOOPBACK_MAX_PBUFS=8
 
@@ -1312,8 +1115,7 @@ CONFIG_LWIP_MAX_RAW_PCBS=16
 #
 # SNTP
 #
-CONFIG_LWIP_SNTP_MAX_SERVERS=1
-# CONFIG_LWIP_DHCP_GET_NTP_SRV is not set
+CONFIG_LWIP_DHCP_MAX_NTP_SERVERS=1
 CONFIG_LWIP_SNTP_UPDATE_DELAY=3600000
 # end of SNTP
 
@@ -1328,9 +1130,6 @@ CONFIG_LWIP_HOOK_TCP_ISN_DEFAULT=y
 CONFIG_LWIP_HOOK_IP6_ROUTE_NONE=y
 # CONFIG_LWIP_HOOK_IP6_ROUTE_DEFAULT is not set
 # CONFIG_LWIP_HOOK_IP6_ROUTE_CUSTOM is not set
-CONFIG_LWIP_HOOK_ND6_GET_GW_NONE=y
-# CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT is not set
-# CONFIG_LWIP_HOOK_ND6_GET_GW_CUSTOM is not set
 CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_NONE=y
 # CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_DEFAULT is not set
 # CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_CUSTOM is not set
@@ -1388,6 +1187,7 @@ CONFIG_MBEDTLS_TLS_ENABLED=y
 #
 # CONFIG_MBEDTLS_PSK_MODES is not set
 CONFIG_MBEDTLS_KEY_EXCHANGE_RSA=y
+CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_RSA=y
 CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE=y
 CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA=y
 CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA=y
@@ -1400,7 +1200,6 @@ CONFIG_MBEDTLS_SSL_RENEGOTIATION=y
 # CONFIG_MBEDTLS_SSL_PROTO_TLS1 is not set
 # CONFIG_MBEDTLS_SSL_PROTO_TLS1_1 is not set
 CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y
-# CONFIG_MBEDTLS_SSL_PROTO_GMTSSL1_1 is not set
 # CONFIG_MBEDTLS_SSL_PROTO_DTLS is not set
 CONFIG_MBEDTLS_SSL_ALPN=y
 CONFIG_MBEDTLS_CLIENT_SSL_SESSION_TICKETS=y
@@ -1436,7 +1235,6 @@ CONFIG_MBEDTLS_X509_CSR_PARSE_C=y
 # end of Certificates
 
 CONFIG_MBEDTLS_ECP_C=y
-# CONFIG_MBEDTLS_DHM_C is not set
 CONFIG_MBEDTLS_ECDH_C=y
 CONFIG_MBEDTLS_ECDSA_C=y
 # CONFIG_MBEDTLS_ECJPAKE_C is not set
@@ -1474,8 +1272,6 @@ CONFIG_MDNS_TASK_AFFINITY=0x0
 CONFIG_MDNS_SERVICE_ADD_TIMEOUT_MS=2000
 # CONFIG_MDNS_STRICT_MODE is not set
 CONFIG_MDNS_TIMER_PERIOD_MS=100
-# CONFIG_MDNS_NETWORKING_SOCKET is not set
-CONFIG_MDNS_MULTIPLE_INSTANCE=y
 # end of mDNS
 
 #
@@ -1517,12 +1313,6 @@ CONFIG_OPENSSL_ASSERT_DO_NOTHING=y
 # CONFIG_OPENSSL_ASSERT_EXIT is not set
 # end of OpenSSL
 
-#
-# OpenThread
-#
-# CONFIG_OPENTHREAD_ENABLED is not set
-# end of OpenThread
-
 #
 # PThreads
 #
@@ -1554,7 +1344,6 @@ CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=1
 CONFIG_SPI_FLASH_WRITE_CHUNK_SIZE=8192
 # CONFIG_SPI_FLASH_SIZE_OVERRIDE is not set
 # CONFIG_SPI_FLASH_CHECK_ERASE_TIMEOUT_DISABLED is not set
-# CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is not set
 
 #
 # Auto-detect flash chips
@@ -1563,8 +1352,6 @@ CONFIG_SPI_FLASH_SUPPORT_ISSI_CHIP=y
 CONFIG_SPI_FLASH_SUPPORT_MXIC_CHIP=y
 CONFIG_SPI_FLASH_SUPPORT_GD_CHIP=y
 CONFIG_SPI_FLASH_SUPPORT_WINBOND_CHIP=y
-# CONFIG_SPI_FLASH_SUPPORT_BOYA_CHIP is not set
-# CONFIG_SPI_FLASH_SUPPORT_TH_CHIP is not set
 # end of Auto-detect flash chips
 
 CONFIG_SPI_FLASH_ENABLE_ENCRYPTED_READ_WRITE=y
@@ -1617,12 +1404,16 @@ CONFIG_SPIFFS_USE_MTIME=y
 # end of Websocket
 # end of TCP Transport
 
+#
+# TinyUSB
+#
+# end of TinyUSB
+
 #
 # Unity unit testing library
 #
 CONFIG_UNITY_ENABLE_FLOAT=y
 CONFIG_UNITY_ENABLE_DOUBLE=y
-# CONFIG_UNITY_ENABLE_64BIT is not set
 # CONFIG_UNITY_ENABLE_COLOR is not set
 CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
 # CONFIG_UNITY_ENABLE_FIXTURE is not set
@@ -1666,7 +1457,6 @@ CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30
 #
 CONFIG_WPA_MBEDTLS_CRYPTO=y
 # CONFIG_WPA_WAPI_PSK is not set
-# CONFIG_WPA_SUITE_B_192 is not set
 # CONFIG_WPA_DEBUG_PRINT is not set
 # CONFIG_WPA_TESTING_OPTIONS is not set
 # CONFIG_WPA_WPS_STRICT is not set
@@ -1725,7 +1515,6 @@ CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE=y
 # CONFIG_OPTIMIZATION_ASSERTIONS_ENABLED is not set
 CONFIG_OPTIMIZATION_ASSERTIONS_SILENT=y
 # CONFIG_OPTIMIZATION_ASSERTIONS_DISABLED is not set
-CONFIG_OPTIMIZATION_ASSERTION_LEVEL=1
 CONFIG_CXX_EXCEPTIONS=y
 CONFIG_CXX_EXCEPTIONS_EMG_POOL_SIZE=0
 CONFIG_STACK_CHECK_NONE=y
@@ -1767,6 +1556,9 @@ CONFIG_ADC2_DISABLE_DAC=y
 CONFIG_SPIRAM_SUPPORT=y
 CONFIG_WIFI_LWIP_ALLOCATION_FROM_SPIRAM_FIRST=y
 CONFIG_TRACEMEM_RESERVE_DRAM=0x0
+# CONFIG_TWO_UNIVERSAL_MAC_ADDRESS is not set
+CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS=y
+CONFIG_NUMBER_OF_UNIVERSAL_MAC_ADDRESS=4
 # CONFIG_ULP_COPROC_ENABLED is not set
 CONFIG_ULP_COPROC_RESERVE_MEM=0
 CONFIG_BROWNOUT_DET=y
@@ -1779,31 +1571,17 @@ CONFIG_BROWNOUT_DET_LVL_SEL_0=y
 # CONFIG_BROWNOUT_DET_LVL_SEL_6 is not set
 # CONFIG_BROWNOUT_DET_LVL_SEL_7 is not set
 CONFIG_BROWNOUT_DET_LVL=0
+CONFIG_REDUCE_PHY_TX_POWER=y
 CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_RC=y
 # CONFIG_ESP32_RTC_CLOCK_SOURCE_EXTERNAL_CRYSTAL is not set
 # CONFIG_ESP32_RTC_CLOCK_SOURCE_EXTERNAL_OSC is not set
 # CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_8MD256 is not set
 # CONFIG_DISABLE_BASIC_ROM_CONSOLE is not set
 # CONFIG_COMPATIBLE_PRE_V2_1_BOOTLOADERS is not set
-# CONFIG_EVENT_LOOP_PROFILING is not set
-CONFIG_POST_EVENTS_FROM_ISR=y
-CONFIG_POST_EVENTS_FROM_IRAM_ISR=y
-# CONFIG_TWO_UNIVERSAL_MAC_ADDRESS is not set
-CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS=y
-CONFIG_NUMBER_OF_UNIVERSAL_MAC_ADDRESS=4
-# CONFIG_ESP32C3_LIGHTSLEEP_GPIO_RESET_WORKAROUND is not set
-CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE=y
-# CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION is not set
-CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER=20
-CONFIG_ESP32_PHY_MAX_TX_POWER=20
-CONFIG_ESP32_REDUCE_PHY_TX_POWER=y
-# CONFIG_ESP32S2_PANIC_PRINT_HALT is not set
-CONFIG_ESP32S2_PANIC_PRINT_REBOOT=y
-# CONFIG_ESP32S2_PANIC_SILENT_REBOOT is not set
-# CONFIG_ESP32S2_PANIC_GDBSTUB is not set
 CONFIG_SYSTEM_EVENT_QUEUE_SIZE=32
 CONFIG_SYSTEM_EVENT_TASK_STACK_SIZE=3400
 CONFIG_MAIN_TASK_STACK_SIZE=8192
+CONFIG_IPC_TASK_STACK_SIZE=1024
 CONFIG_CONSOLE_UART_DEFAULT=y
 # CONFIG_CONSOLE_UART_CUSTOM is not set
 # CONFIG_ESP_CONSOLE_UART_NONE is not set
@@ -1818,8 +1596,13 @@ CONFIG_TASK_WDT=y
 CONFIG_TASK_WDT_TIMEOUT_S=5
 CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU0=y
 CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU1=y
-# CONFIG_ESP32_DEBUG_STUBS_ENABLE is not set
-CONFIG_IPC_TASK_STACK_SIZE=1024
+# CONFIG_EVENT_LOOP_PROFILING is not set
+CONFIG_POST_EVENTS_FROM_ISR=y
+CONFIG_POST_EVENTS_FROM_IRAM_ISR=y
+# CONFIG_ESP32S2_PANIC_PRINT_HALT is not set
+CONFIG_ESP32S2_PANIC_PRINT_REBOOT=y
+# CONFIG_ESP32S2_PANIC_SILENT_REBOOT is not set
+# CONFIG_ESP32S2_PANIC_GDBSTUB is not set
 CONFIG_TIMER_TASK_STACK_SIZE=3584
 CONFIG_SW_COEXIST_ENABLE=y
 # CONFIG_ESP32_ENABLE_COREDUMP_TO_UART is not set
@@ -1836,6 +1619,8 @@ CONFIG_MB_CONTROLLER_NOTIFY_QUEUE_SIZE=20
 CONFIG_MB_CONTROLLER_STACK_SIZE=4096
 CONFIG_MB_EVENT_QUEUE_TIMEOUT=20
 # CONFIG_MB_TIMER_PORT_ENABLED is not set
+CONFIG_MB_TIMER_GROUP=0
+CONFIG_MB_TIMER_INDEX=0
 # CONFIG_ENABLE_STATIC_TASK_CLEAN_UP_HOOK is not set
 CONFIG_TIMER_TASK_PRIORITY=1
 CONFIG_TIMER_TASK_STACK_DEPTH=3800