OTA Update Taking Noticeably Longer

I’m noticing that OTA update is taking much much longer on a project refactor that I’m working on.

Old Code:
ESP32 then upgraded to ESP32S3. Using Golioth SDK 0.7.0 and copied from the golioth_basics demo. It also uses ESP-IDF 4.4.x. Takes a couple minutes to download the code. Artifact size: 1.09MB

New code:
ESP32S3. Using Golioth SDK 0.11.0 and started from a fresh ESP-IDF project. Using ESP-IDF v5.2. This takes approximately an hour to download the code. Artifact size: 975kB.

My first guess is that the OTA process is storing the chunk in slower memory, which might be configured in sdkconfig. However, I’m not sure what setting to look for.

Second guess is something to do with the partition table, but it’s the same one between the two projects.

Here is the output from kconfig-diff. I’m not seeing anything jumping out at me. There are some adjustments of GOLIOTH_OTA settings, but those don’t look to be causing this.

-ADC_CALI_SUPPRESS_DEPRECATE_WARN n
-ADC_CONTINUOUS_FORCE_USE_ADC2_ON_C3_S3 n
-ADC_CONTINUOUS_ISR_IRAM_SAFE n
-ADC_ONESHOT_CTRL_FUNC_IN_IRAM n
-ADC_SUPPRESS_DEPRECATE_WARN n
-APPTRACE_DEST_UART1 n
-APPTRACE_DEST_UART2 n
-APPTRACE_DEST_UART_NONE y
-APPTRACE_DEST_USB_CDC n
-APPTRACE_UART_TASK_PRIO 1
-APP_BUILD_TYPE_RAM n
-APP_NO_BLOBS n
-APP_REPRODUCIBLE_BUILD n
-BOOTLOADER_COMPILE_TIME_DATE y
-BOOTLOADER_FLASH_DC_AWARE n
-BOOTLOADER_PROJECT_VER 1
-BROWNOUT_DET y
-BROWNOUT_DET_LVL 7
-BROWNOUT_DET_LVL_SEL_1 n
-BROWNOUT_DET_LVL_SEL_2 n
-BROWNOUT_DET_LVL_SEL_3 n
-BROWNOUT_DET_LVL_SEL_4 n
-BROWNOUT_DET_LVL_SEL_5 n
-BROWNOUT_DET_LVL_SEL_6 n
-BROWNOUT_DET_LVL_SEL_7 y
-BT_BLE_CCA_MODE 0
-BT_BLE_CCA_MODE_HW n
-BT_BLE_CCA_MODE_NONE y
-BT_BLE_CCA_MODE_SW n
-BT_CONTROLLER_DISABLED n
-BT_CONTROLLER_ENABLED y
-BT_CTRL_DFT_TX_POWER_LEVEL_P21 n
-BT_CTRL_DUPL_SCAN_CACHE_REFRESH_PERIOD 0
-BT_CTRL_SCAN_BACKOFF_UPPERLIMITMAX n
-BT_NIMBLE_50_FEATURE_SUPPORT y
-BT_NIMBLE_BLE_GATT_BLOB_TRANSFER n
-BT_NIMBLE_COEX_PHY_CODED_TX_RX_TLIM_DIS y
-BT_NIMBLE_COEX_PHY_CODED_TX_RX_TLIM_EN n
-BT_NIMBLE_DYNAMIC_SERVICE n
-BT_NIMBLE_GATT_MAX_PROCS 4
-BT_NIMBLE_HID_SERVICE n
-BT_NIMBLE_HIGH_DUTY_ADV_ITVL n
-BT_NIMBLE_HOST_QUEUE_CONG_CHECK n
-BT_NIMBLE_HOST_TASK_STACK_SIZE 4096
-BT_NIMBLE_LEGACY_VHCI_ENABLE y
-BT_NIMBLE_LL_CFG_FEAT_LE_2M_PHY y
-BT_NIMBLE_LL_CFG_FEAT_LE_CODED_PHY y
-BT_NIMBLE_LL_CFG_FEAT_LE_ENCRYPTION y
-BT_NIMBLE_MAX_PERIODIC_SYNCS 0
-BT_NIMBLE_MSYS_1_BLOCK_COUNT 12
-BT_NIMBLE_MSYS_1_BLOCK_SIZE 256
-BT_NIMBLE_MSYS_2_BLOCK_COUNT 24
-BT_NIMBLE_MSYS_2_BLOCK_SIZE 320
-BT_NIMBLE_SECURITY_ENABLE y
-BT_NIMBLE_SVC_GAP_APPEAR_WRITE n
-BT_NIMBLE_SVC_GAP_APPEAR_WRITE_PERM 0
-BT_NIMBLE_SVC_GAP_APPEAR_WRITE_PERM_ATHN 0
-BT_NIMBLE_SVC_GAP_APPEAR_WRITE_PERM_ATHR 0
-BT_NIMBLE_SVC_GAP_APPEAR_WRITE_PERM_ENC 0
-BT_NIMBLE_SVC_GAP_CAR_CHAR_NOT_SUPP y
-BT_NIMBLE_SVC_GAP_CAR_NOT_SUPP n
-BT_NIMBLE_SVC_GAP_CAR_SUPP n
-BT_NIMBLE_SVC_GAP_CENT_ADDR_RESOLUTION -1
-BT_NIMBLE_SVC_GAP_NAME_WRITE n
-BT_NIMBLE_SVC_GAP_NAME_WRITE_PERM 0
-BT_NIMBLE_SVC_GAP_NAME_WRITE_PERM_AUTHEN 0
-BT_NIMBLE_SVC_GAP_NAME_WRITE_PERM_AUTHOR 0
-BT_NIMBLE_SVC_GAP_NAME_WRITE_PERM_ENC 0
-BT_NIMBLE_SVC_GAP_PPCP_MAX_CONN_INTERVAL 0
-BT_NIMBLE_SVC_GAP_PPCP_MIN_CONN_INTERVAL 0
-BT_NIMBLE_SVC_GAP_PPCP_SLAVE_LATENCY 0
-BT_NIMBLE_SVC_GAP_PPCP_SUPERVISION_TMO 0
-BT_NIMBLE_TEST_THROUGHPUT_TEST n
-BT_NIMBLE_TRANSPORT_ACL_FROM_LL_COUNT 24
-BT_NIMBLE_TRANSPORT_ACL_SIZE 255
-BT_NIMBLE_TRANSPORT_EVT_COUNT 30
-BT_NIMBLE_TRANSPORT_EVT_DISCARD_COUNT 8
-BT_NIMBLE_TRANSPORT_EVT_SIZE 70
-BT_NIMBLE_VS_SUPPORT n
-BT_NIMBLE_WHITELIST_SIZE 12
-COMPILER_DISABLE_GCC12_WARNINGS n
-COMPILER_DISABLE_GCC13_WARNINGS n
-COMPILER_FLOAT_LIB_FROM_GCCLIB y
-COMPILER_OPTIMIZATION_DEBUG n
-COMPILER_RT_LIB_GCCLIB y
-COMPILER_RT_LIB_NAME "gcc"
-CONSOLE_UART_NONE n
-ESP32S3_REV_MAX_FULL 99
-ESP32S3_REV_MIN_0 y
-ESP32S3_REV_MIN_1 n
-ESP32S3_REV_MIN_2 n
-ESP32S3_REV_MIN_FULL 0
-ESP32S3_TIME_SYSCALL_USE_RTC_SYSTIMER y
-ESP32S3_TIME_SYSCALL_USE_SYSTIMER n
-ESP32_REDUCE_PHY_TX_POWER n
-ESP32_WIFI_ENABLE_WPA3_OWE_STA y
-ESPTOOLPY_FLASHFREQ_80M_DEFAULT y
-ESPTOOLPY_FLASH_MODE_AUTO_DETECT y
-ESPTOOLPY_HEADER_FLASHSIZE_UPDATE n
-ESP_BROWNOUT_DET y
-ESP_BROWNOUT_DET_LVL 7
-ESP_BROWNOUT_DET_LVL_SEL_1 n
-ESP_BROWNOUT_DET_LVL_SEL_2 n
-ESP_BROWNOUT_DET_LVL_SEL_3 n
-ESP_BROWNOUT_DET_LVL_SEL_4 n
-ESP_BROWNOUT_DET_LVL_SEL_5 n
-ESP_BROWNOUT_DET_LVL_SEL_6 n
-ESP_BROWNOUT_DET_LVL_SEL_7 y
-ESP_COEX_SW_COEXIST_ENABLE y
-ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED y
-ESP_DEBUG_OCDAWARE y
-ESP_DEFAULT_CPU_FREQ_MHZ 160
-ESP_DEFAULT_CPU_FREQ_MHZ_160 y
-ESP_DEFAULT_CPU_FREQ_MHZ_240 n
-ESP_DEFAULT_CPU_FREQ_MHZ_80 n
-ESP_HTTPS_OTA_ALLOW_HTTP n
-ESP_HTTPS_OTA_DECRYPT_CB n
-ESP_MAC_UNIVERSAL_MAC_ADDRESSES_FOUR y
-ESP_MAC_USE_CUSTOM_MAC_AS_BASE_MAC n
-ESP_NETIF_BRIDGE_EN n
-ESP_NETIF_L2_TAP n
-ESP_NETIF_RECEIVE_REPORT_ERRORS n
-ESP_NETIF_USES_TCPIP_WITH_BSD_API y
-ESP_PHY_CALIBRATION_MODE 0
-ESP_PHY_ENABLE_CERT_TEST n
-ESP_PHY_REDUCE_TX_POWER n
-ESP_PHY_RF_CAL_FULL n
-ESP_PHY_RF_CAL_NONE n
-ESP_PHY_RF_CAL_PARTIAL y
-ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_0 y
-ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_1 y
-ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_2 y
-ESP_REV_MAX_FULL 99
-ESP_REV_MIN_FULL 0
-ESP_ROM_GET_CLK_FREQ y
-ESP_ROM_HAS_CACHE_SUSPEND_WAITI_BUG y
-ESP_ROM_HAS_CACHE_WRITEBACK_BUG y
-ESP_ROM_HAS_CRC_BE y
-ESP_ROM_HAS_CRC_LE y
-ESP_ROM_HAS_ERASE_0_REGION_BUG y
-ESP_ROM_HAS_ETS_PRINTF_BUG y
-ESP_ROM_HAS_FLASH_COUNT_PAGES_BUG y
-ESP_ROM_HAS_HAL_WDT y
-ESP_ROM_HAS_JPEG_DECODE y
-ESP_ROM_HAS_LAYOUT_TABLE y
-ESP_ROM_HAS_MZ_CRC32 y
-ESP_ROM_HAS_NEWLIB_NANO_FORMAT y
-ESP_ROM_HAS_RETARGETABLE_LOCKING y
-ESP_ROM_HAS_SPI_FLASH y
-ESP_ROM_HAS_SW_FLOAT y
-ESP_ROM_NEEDS_SET_CACHE_MMU_SIZE y
-ESP_ROM_NEEDS_SWSETUP_WORKAROUND y
-ESP_ROM_RAM_APP_NEEDS_MMU_INIT y
-ESP_ROM_UART_CLK_IS_XTAL y
-ESP_ROM_USB_OTG_NUM 3
-ESP_ROM_USB_SERIAL_DEVICE_NUM 4
-ESP_SLEEP_CACHE_SAFE_ASSERTION n
-ESP_SLEEP_DEBUG n
-ESP_SLEEP_DEEP_SLEEP_WAKEUP_DELAY 2000
-ESP_SLEEP_GPIO_ENABLE_INTERNAL_RESISTORS y
-ESP_SLEEP_WAIT_FLASH_READY_EXTRA_DELAY 2000
-ESP_SYSTEM_BBPLL_RECALIB y
-ESP_SYSTEM_BROWNOUT_INTR y
-ESP_SYSTEM_MEMPROT_FEATURE y
-ESP_SYSTEM_MEMPROT_FEATURE_LOCK y
-ESP_SYSTEM_PANIC_REBOOT_DELAY_SECONDS 0
-ESP_TASK_WDT_EN y
-ESP_TASK_WDT_INIT y
-ESP_TIMER_ISR_AFFINITY 0x1
-ESP_TIMER_ISR_AFFINITY_CPU0 y
-ESP_TIMER_SHOW_EXPERIMENTAL n
-ESP_TIMER_TASK_AFFINITY 0x0
-ESP_TIMER_TASK_AFFINITY_CPU0 y
-ESP_WIFI_11KV_SUPPORT n
-ESP_WIFI_11R_SUPPORT n
-ESP_WIFI_AMPDU_RX_ENABLED y
-ESP_WIFI_AMPDU_TX_ENABLED y
-ESP_WIFI_CSI_ENABLED n
-ESP_WIFI_DEBUG_PRINT n
-ESP_WIFI_DPP_SUPPORT n
-ESP_WIFI_DYNAMIC_RX_BUFFER_NUM 32
-ESP_WIFI_DYNAMIC_RX_MGMT_BUF 0
-ESP_WIFI_DYNAMIC_RX_MGMT_BUFFER n
-ESP_WIFI_DYNAMIC_TX_BUFFER y
-ESP_WIFI_DYNAMIC_TX_BUFFER_NUM 32
-ESP_WIFI_ENABLED y
-ESP_WIFI_ENABLE_SAE_PK y
-ESP_WIFI_ENABLE_WPA3_OWE_STA y
-ESP_WIFI_ENABLE_WPA3_SAE y
-ESP_WIFI_ENTERPRISE_SUPPORT y
-ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM 7
-ESP_WIFI_EXTRA_IRAM_OPT n
-ESP_WIFI_IRAM_OPT y
-ESP_WIFI_MBEDTLS_CRYPTO y
-ESP_WIFI_MBEDTLS_TLS_CLIENT y
-ESP_WIFI_MBO_SUPPORT n
-ESP_WIFI_MGMT_SBUF_NUM 32
-ESP_WIFI_NVS_ENABLED y
-ESP_WIFI_RX_BA_WIN 6
-ESP_WIFI_RX_IRAM_OPT y
-ESP_WIFI_RX_MGMT_BUF_NUM_DEF 5
-ESP_WIFI_SOFTAP_BEACON_MAX_LEN 752
-ESP_WIFI_STATIC_RX_BUFFER_NUM 10
-ESP_WIFI_STATIC_RX_MGMT_BUFFER y
-ESP_WIFI_STATIC_TX_BUFFER n
-ESP_WIFI_SUITE_B_192 n
-ESP_WIFI_SW_COEXIST_ENABLE y
-ESP_WIFI_TASK_PINNED_TO_CORE_0 y
-ESP_WIFI_TASK_PINNED_TO_CORE_1 n
-ESP_WIFI_TESTING_OPTIONS n
-ESP_WIFI_TX_BA_WIN 6
-ESP_WIFI_TX_BUFFER_TYPE 1
-ESP_WIFI_WAPI_PSK n
-ESP_WIFI_WPS_PASSPHRASE n
-ESP_WIFI_WPS_STRICT n
-ETH_TRANSMIT_MUTEX n
-FATFS_IMMEDIATE_FSYNC n
-FATFS_SECTOR_4096 y
-FATFS_SECTOR_512 n
-FATFS_VFS_FSTAT_BLKSIZE 0
-FATFS_VOLUME_COUNT 2
-FREERTOS_ENABLE_BACKWARD_COMPATIBILITY n
-FREERTOS_PORT y
-FREERTOS_SMP n
-FREERTOS_TASK_NOTIFICATION_ARRAY_ENTRIES 1
-FREERTOS_TASK_PRE_DELETION_HOOK n
-FREERTOS_TIMER_SERVICE_TASK_NAME "Tmr Svc"
-FREERTOS_TLSP_DELETION_CALLBACKS y
-FREERTOS_USE_IDLE_HOOK n
-FREERTOS_USE_TICK_HOOK n
-GDMA_ENABLE_DEBUG_LOG n
-GOLIOTH_AUTH_METHOD_CERT n
-GOLIOTH_AUTH_METHOD_PSK y
-GOLIOTH_DEBUG_LOG y
-GOLIOTH_FW_UPDATE y
-GOLIOTH_LIBCOAP_EXTRA_FDS_MAX 1
-GOLIOTH_LIGHTDB_STATE y
-GOLIOTH_RPC y
-GOLIOTH_SETTINGS y
-GOLIOTH_STREAM y
-GPIO_CTRL_FUNC_IN_IRAM n
-GPTIMER_CTRL_FUNC_IN_IRAM n
-GPTIMER_ENABLE_DEBUG_LOG n
-GPTIMER_ISR_HANDLER_IN_IRAM y
-GPTIMER_ISR_IRAM_SAFE n
-GPTIMER_SUPPRESS_DEPRECATE_WARN n
-HAL_ASSERTION_SILENT n
-HAL_SPI_MASTER_FUNC_IN_IRAM y
-HAL_SPI_SLAVE_FUNC_IN_IRAM y
-HAL_WDT_USE_ROM_IMPL y
-HEAP_PLACE_FUNCTION_INTO_FLASH n
-HEAP_TASK_TRACKING n
-HEAP_USE_HOOKS n
-HTTPD_QUEUE_WORK_BLOCKING n
-I2C_ENABLE_DEBUG_LOG n
-I2C_ISR_IRAM_SAFE n
-I2S_ENABLE_DEBUG_LOG n
-I2S_ISR_IRAM_SAFE n
-I2S_SUPPRESS_DEPRECATE_WARN n
-IDF_EXPERIMENTAL_FEATURES n
-IDF_INIT_VERSION "5.2.0"
-IDF_TARGET_ARCH "xtensa"
-IDF_TOOLCHAIN "gcc"
-LCD_ENABLE_DEBUG_LOG n
-LCD_RGB_RESTART_IN_VSYNC n
-LEDC_CTRL_FUNC_IN_IRAM n
-LOG_MASTER_LEVEL n
-LWIP_BRIDGEIF_MAX_PORTS 7
-LWIP_CHECK_THREAD_SAFETY n
-LWIP_DHCPS_STATIC_ENTRIES y
-LWIP_DHCP_COARSE_TIMER_SECS 1
-LWIP_ENABLE y
-LWIP_ESP_MLDV6_REPORT y
-LWIP_EXTRA_IRAM_OPTIMIZATION n
-LWIP_FORCE_ROUTER_FORWARDING n
-LWIP_HOOK_IP6_INPUT_CUSTOM n
-LWIP_HOOK_IP6_INPUT_DEFAULT n
-LWIP_HOOK_IP6_INPUT_NONE y
-LWIP_HOOK_IP6_SELECT_SRC_ADDR_CUSTOM n
-LWIP_HOOK_IP6_SELECT_SRC_ADDR_DEFAULT n
-LWIP_HOOK_IP6_SELECT_SRC_ADDR_NONE y
-LWIP_IPV4 y
-LWIP_IP_DEFAULT_TTL 64
-LWIP_IP_REASS_MAX_PBUFS 10
-LWIP_MLDV6_TMR_INTERVAL 40
-LWIP_ND6 y
-LWIP_NUM_NETIF_CLIENT_DATA 0
-LWIP_TCPIP_TASK_PRIO 18
-LWIP_TCP_FIN_WAIT_TIMEOUT 20000
-LWIP_TCP_OOSEQ_MAX_PBUFS 4
-LWIP_TCP_OOSEQ_TIMEOUT 6
-MBEDTLS_AES_INTERRUPT_LEVEL 0
-MBEDTLS_DHM_C n
-MBEDTLS_ECP_FIXED_POINT_OPTIM y
-MBEDTLS_MPI_INTERRUPT_LEVEL 0
-MBEDTLS_MPI_USE_INTERRUPT y
-MBEDTLS_PKCS7_C y
-MBEDTLS_PLATFORM_TIME_ALT n
-MBEDTLS_SSL_PROTO_TLS1_3 n
-MCPWM_CTRL_FUNC_IN_IRAM n
-MCPWM_ENABLE_DEBUG_LOG n
-MCPWM_ISR_IRAM_SAFE n
-MCPWM_SUPPRESS_DEPRECATE_WARN n
-MMU_PAGE_MODE "64KB"
-MMU_PAGE_SIZE 0x10000
-MMU_PAGE_SIZE_64KB y
-MQTT_PROTOCOL_5 n
-NEWLIB_TIME_SYSCALL_USE_HRT n
-NEWLIB_TIME_SYSCALL_USE_NONE n
-NEWLIB_TIME_SYSCALL_USE_RTC n
-NEWLIB_TIME_SYSCALL_USE_RTC_HRT y
-NO_BLOBS n
-NVS_ENCRYPTION n
-NVS_LEGACY_DUP_KEYS_COMPATIBILITY n
-OPENTHREAD_MESH_LOCAL_PREFIX "fd00:db8:a0:0::/64"
-OPENTHREAD_NETWORK_CHANNEL 15
-OPENTHREAD_NETWORK_EXTPANID "dead00beef00cafe"
-OPENTHREAD_NETWORK_MASTERKEY "00112233445566778899aabbccddeeff"
-OPENTHREAD_NETWORK_NAME "OpenThread-ESP"
-OPENTHREAD_NETWORK_PANID 0x1234
-OPENTHREAD_NETWORK_PSKC "104810e2315100afd6bc9215a6bfac53"
-OPENTHREAD_XTAL_ACCURACY 130
-OPTIMIZATION_LEVEL_DEBUG n
-OPTIMIZATION_LEVEL_RELEASE y
-PCNT_CTRL_FUNC_IN_IRAM n
-PCNT_ENABLE_DEBUG_LOG n
-PCNT_ISR_IRAM_SAFE n
-PCNT_SUPPRESS_DEPRECATE_WARN n
-PERIPH_CTRL_FUNC_IN_IRAM y
-PM_RESTORE_CACHE_TAGMEM_AFTER_LIGHT_SLEEP y
-REDUCE_PHY_TX_POWER n
-RMT_ENABLE_DEBUG_LOG n
-RMT_ISR_IRAM_SAFE n
-RMT_RECV_FUNC_IN_IRAM n
-RMT_SUPPRESS_DEPRECATE_WARN n
-RTC_CLK_CAL_CYCLES 1024
-RTC_CLK_SRC_EXT_CRYS n
-RTC_CLK_SRC_EXT_OSC n
-RTC_CLK_SRC_INT_8MD256 n
-RTC_CLK_SRC_INT_RC y
-SDM_CTRL_FUNC_IN_IRAM n
-SDM_ENABLE_DEBUG_LOG n
-SDM_SUPPRESS_DEPRECATE_WARN n
-SECURE_BOOT_V2_PREFERRED y
-SECURE_BOOT_V2_RSA_SUPPORTED y
-SECURE_ROM_DL_MODE_ENABLED y
-SOC_ADC_ARBITER_SUPPORTED y
-SOC_ADC_ATTEN_NUM 4
-SOC_ADC_CALIBRATION_V1_SUPPORTED y
-SOC_ADC_DIGI_CONTROLLER_NUM 2
-SOC_ADC_DIGI_DATA_BYTES_PER_CONV 4
-SOC_ADC_DIGI_IIR_FILTER_NUM 2
-SOC_ADC_DIGI_MAX_BITWIDTH 12
-SOC_ADC_DIGI_MIN_BITWIDTH 12
-SOC_ADC_DIGI_MONITOR_NUM 2
-SOC_ADC_DIGI_RESULT_BYTES 4
-SOC_ADC_DIG_CTRL_SUPPORTED y
-SOC_ADC_DIG_IIR_FILTER_SUPPORTED y
-SOC_ADC_DMA_SUPPORTED y
-SOC_ADC_MAX_CHANNEL_NUM 10
-SOC_ADC_MONITOR_SUPPORTED y
-SOC_ADC_PATT_LEN_MAX 24
-SOC_ADC_PERIPH_NUM 2
-SOC_ADC_RTC_CTRL_SUPPORTED y
-SOC_ADC_RTC_MAX_BITWIDTH 12
-SOC_ADC_RTC_MIN_BITWIDTH 12
-SOC_ADC_SAMPLE_FREQ_THRES_HIGH 83333
-SOC_ADC_SAMPLE_FREQ_THRES_LOW 611
-SOC_ADC_SELF_HW_CALI_SUPPORTED y
-SOC_ADC_SHARED_POWER y
-SOC_ADC_SUPPORTED y
-SOC_AES_GDMA y
-SOC_AES_SUPPORTED y
-SOC_AES_SUPPORT_AES_128 y
-SOC_AES_SUPPORT_AES_256 y
-SOC_AES_SUPPORT_DMA y
-SOC_AHB_GDMA_SUPPORTED y
-SOC_AHB_GDMA_SUPPORT_PSRAM y
-SOC_AHB_GDMA_VERSION 1
-SOC_APB_BACKUP_DMA y
-SOC_APPCPU_HAS_CLOCK_GATING_BUG y
-SOC_ASYNC_MEMCPY_SUPPORTED y
-SOC_BLE_50_SUPPORTED y
-SOC_BLE_DEVICE_PRIVACY_SUPPORTED y
-SOC_BLE_MESH_SUPPORTED y
-SOC_BLE_SUPPORTED y
-SOC_BLUFI_SUPPORTED y
-SOC_BOD_SUPPORTED y
-SOC_BROWNOUT_RESET_SUPPORTED y
-SOC_BT_SUPPORTED y
-SOC_CACHE_FREEZE_SUPPORTED y
-SOC_CACHE_SUPPORT_WRAP y
-SOC_CACHE_WRITEBACK_SUPPORTED y
-SOC_CCOMP_TIMER_SUPPORTED y
-SOC_CLK_RC_FAST_D256_SUPPORTED y
-SOC_CLK_RC_FAST_SUPPORT_CALIBRATION y
-SOC_CLK_TREE_SUPPORTED y
-SOC_CLK_XTAL32K_SUPPORTED y
-SOC_COEX_HW_PTI y
-SOC_CONFIGURABLE_VDDSDIO_SUPPORTED y
-SOC_CPU_BREAKPOINTS_NUM 2
-SOC_CPU_CORES_NUM 2
-SOC_CPU_HAS_FPU y
-SOC_CPU_INTR_NUM 32
-SOC_CPU_WATCHPOINTS_NUM 2
-SOC_CPU_WATCHPOINT_MAX_REGION_SIZE 64
-SOC_DEDICATED_GPIO_SUPPORTED y
-SOC_DEDIC_GPIO_IN_CHANNELS_NUM 8
-SOC_DEDIC_GPIO_OUT_AUTO_ENABLE y
-SOC_DEDIC_GPIO_OUT_CHANNELS_NUM 8
-SOC_DIG_SIGN_SUPPORTED y
-SOC_DS_KEY_CHECK_MAX_WAIT_US 1100
-SOC_DS_KEY_PARAM_MD_IV_LENGTH 16
-SOC_DS_SIGNATURE_MAX_BIT_LEN 4096
-SOC_EFUSE_BLOCK9_KEY_PURPOSE_QUIRK y
-SOC_EFUSE_DIS_DIRECT_BOOT y
-SOC_EFUSE_DIS_DOWNLOAD_DCACHE y
-SOC_EFUSE_DIS_DOWNLOAD_ICACHE y
-SOC_EFUSE_DIS_ICACHE y
-SOC_EFUSE_DIS_USB_JTAG y
-SOC_EFUSE_HARD_DIS_JTAG y
-SOC_EFUSE_KEY_PURPOSE_FIELD y
-SOC_EFUSE_REVOKE_BOOT_KEY_DIGESTS y
-SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS 3
-SOC_EFUSE_SOFT_DIS_JTAG y
-SOC_EFUSE_SUPPORTED y
-SOC_EXTERNAL_COEX_LEADER_TX_LINE y
-SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX 64
-SOC_FLASH_ENCRYPTION_XTS_AES y
-SOC_FLASH_ENCRYPTION_XTS_AES_128 y
-SOC_FLASH_ENCRYPTION_XTS_AES_256 y
-SOC_FLASH_ENCRYPTION_XTS_AES_OPTIONS y
-SOC_FLASH_ENC_SUPPORTED y
-SOC_GDMA_NUM_GROUPS_MAX 1
-SOC_GDMA_PAIRS_PER_GROUP 5
-SOC_GDMA_PAIRS_PER_GROUP_MAX 5
-SOC_GDMA_SUPPORTED y
-SOC_GPIO_CLOCKOUT_BY_IO_MUX y
-SOC_GPIO_FILTER_CLK_SUPPORT_APB y
-SOC_GPIO_IN_RANGE_MAX 48
-SOC_GPIO_OUT_RANGE_MAX 48
-SOC_GPIO_PIN_COUNT 49
-SOC_GPIO_PORT 1
-SOC_GPIO_SUPPORT_FORCE_HOLD y
-SOC_GPIO_SUPPORT_PIN_GLITCH_FILTER y
-SOC_GPIO_SUPPORT_RTC_INDEPENDENT y
-SOC_GPIO_VALID_DIGITAL_IO_PAD_MASK 0x0001FFFFFC000000
-SOC_GPIO_VALID_GPIO_MASK 0x1FFFFFFFFFFFF
-SOC_GPSPI_SUPPORTED y
-SOC_GPTIMER_SUPPORTED y
-SOC_HMAC_SUPPORTED y
-SOC_HP_CPU_HAS_MULTIPLE_CORES y
-SOC_I2C_CMD_REG_NUM 8
-SOC_I2C_FIFO_LEN 32
-SOC_I2C_NUM 2
-SOC_I2C_SLAVE_SUPPORT_BROADCAST y
-SOC_I2C_SLAVE_SUPPORT_I2CRAM_ACCESS y
-SOC_I2C_SUPPORTED y
-SOC_I2C_SUPPORT_10BIT_ADDR y
-SOC_I2C_SUPPORT_HW_CLR_BUS y
-SOC_I2C_SUPPORT_RTC y
-SOC_I2C_SUPPORT_SLAVE y
-SOC_I2C_SUPPORT_XTAL y
-SOC_I2S_HW_VERSION_2 y
-SOC_I2S_NUM 2
-SOC_I2S_PDM_MAX_RX_LINES 4
-SOC_I2S_PDM_MAX_TX_LINES 2
-SOC_I2S_SUPPORTED y
-SOC_I2S_SUPPORTS_PCM y
-SOC_I2S_SUPPORTS_PDM y
-SOC_I2S_SUPPORTS_PDM_RX y
-SOC_I2S_SUPPORTS_PDM_TX y
-SOC_I2S_SUPPORTS_PLL_F160M y
-SOC_I2S_SUPPORTS_TDM y
-SOC_I2S_SUPPORTS_XTAL y
-SOC_LCDCAM_SUPPORTED y
-SOC_LCD_I80_BUSES 1
-SOC_LCD_I80_BUS_WIDTH 16
-SOC_LCD_I80_SUPPORTED y
-SOC_LCD_RGB_DATA_WIDTH 16
-SOC_LCD_RGB_PANELS 1
-SOC_LCD_RGB_SUPPORTED y
-SOC_LCD_SUPPORT_RGB_YUV_CONV y
-SOC_LEDC_CHANNEL_NUM 8
-SOC_LEDC_SUPPORTED y
-SOC_LEDC_SUPPORT_APB_CLOCK y
-SOC_LEDC_SUPPORT_FADE_STOP y
-SOC_LEDC_SUPPORT_XTAL_CLOCK y
-SOC_LEDC_TIMER_BIT_WIDTH 14
-SOC_MAC_BB_PD_MEM_SIZE 192
-SOC_MCPWM_CAPTURE_CHANNELS_PER_TIMER 3
-SOC_MCPWM_CAPTURE_TIMERS_PER_GROUP y
-SOC_MCPWM_COMPARATORS_PER_OPERATOR 2
-SOC_MCPWM_GENERATORS_PER_OPERATOR 2
-SOC_MCPWM_GPIO_FAULTS_PER_GROUP 3
-SOC_MCPWM_GPIO_SYNCHROS_PER_GROUP 3
-SOC_MCPWM_GROUPS 2
-SOC_MCPWM_OPERATORS_PER_GROUP 3
-SOC_MCPWM_SUPPORTED y
-SOC_MCPWM_SWSYNC_CAN_PROPAGATE y
-SOC_MCPWM_TIMERS_PER_GROUP 3
-SOC_MCPWM_TRIGGERS_PER_OPERATOR 2
-SOC_MEMPROT_CPU_PREFETCH_PAD_SIZE 16
-SOC_MEMPROT_MEM_ALIGN_SIZE 256
-SOC_MEMPROT_SUPPORTED y
-SOC_MEMSPI_CORE_CLK_SHARED_WITH_PSRAM y
-SOC_MEMSPI_IS_INDEPENDENT y
-SOC_MEMSPI_SRC_FREQ_120M y
-SOC_MEMSPI_SRC_FREQ_20M_SUPPORTED y
-SOC_MEMSPI_SRC_FREQ_40M_SUPPORTED y
-SOC_MEMSPI_SRC_FREQ_80M_SUPPORTED y
-SOC_MEMSPI_TIMING_TUNING_BY_MSPI_DELAY y
-SOC_MMU_LINEAR_ADDRESS_REGION_NUM 1
-SOC_MMU_PERIPH_NUM 1
-SOC_MPI_MEM_BLOCKS_NUM 4
-SOC_MPI_OPERATIONS_NUM 3
-SOC_MPI_SUPPORTED y
-SOC_MPU_MIN_REGION_SIZE 0x20000000
-SOC_MPU_REGIONS_MAX_NUM 8
-SOC_MPU_SUPPORTED y
-SOC_PCNT_CHANNELS_PER_UNIT 2
-SOC_PCNT_GROUPS 1
-SOC_PCNT_SUPPORTED y
-SOC_PCNT_THRES_POINT_PER_UNIT 2
-SOC_PCNT_UNITS_PER_GROUP 4
-SOC_PHY_COMBO_MODULE y
-SOC_PHY_DIG_REGS_MEM_SIZE 21
-SOC_PM_CPU_RETENTION_BY_RTCCNTL y
-SOC_PM_MODEM_RETENTION_BY_BACKUPDMA y
-SOC_PM_SUPPORT_BT_WAKEUP y
-SOC_PM_SUPPORT_CPU_PD y
-SOC_PM_SUPPORT_DEEPSLEEP_CHECK_STUB_ONLY y
-SOC_PM_SUPPORT_EXT0_WAKEUP y
-SOC_PM_SUPPORT_EXT1_WAKEUP y
-SOC_PM_SUPPORT_EXT_WAKEUP y
-SOC_PM_SUPPORT_MAC_BB_PD y
-SOC_PM_SUPPORT_MODEM_PD y
-SOC_PM_SUPPORT_RC_FAST_PD y
-SOC_PM_SUPPORT_RTC_PERIPH_PD y
-SOC_PM_SUPPORT_TAGMEM_PD y
-SOC_PM_SUPPORT_TOUCH_SENSOR_WAKEUP y
-SOC_PM_SUPPORT_VDDSDIO_PD y
-SOC_PM_SUPPORT_WIFI_WAKEUP y
-SOC_PSRAM_DMA_CAPABLE y
-SOC_RISCV_COPROC_SUPPORTED y
-SOC_RMT_CHANNELS_PER_GROUP 8
-SOC_RMT_GROUPS 1
-SOC_RMT_MEM_WORDS_PER_CHANNEL 48
-SOC_RMT_RX_CANDIDATES_PER_GROUP 4
-SOC_RMT_SUPPORTED y
-SOC_RMT_SUPPORT_APB y
-SOC_RMT_SUPPORT_DMA y
-SOC_RMT_SUPPORT_RC_FAST y
-SOC_RMT_SUPPORT_RX_DEMODULATION y
-SOC_RMT_SUPPORT_RX_PINGPONG y
-SOC_RMT_SUPPORT_TX_ASYNC_STOP y
-SOC_RMT_SUPPORT_TX_CARRIER_DATA_ONLY y
-SOC_RMT_SUPPORT_TX_LOOP_AUTO_STOP y
-SOC_RMT_SUPPORT_TX_LOOP_COUNT y
-SOC_RMT_SUPPORT_TX_SYNCHRO y
-SOC_RMT_SUPPORT_XTAL y
-SOC_RMT_TX_CANDIDATES_PER_GROUP 4
-SOC_RSA_MAX_BIT_LEN 4096
-SOC_RTCIO_HOLD_SUPPORTED y
-SOC_RTCIO_INPUT_OUTPUT_SUPPORTED y
-SOC_RTCIO_PIN_COUNT 22
-SOC_RTCIO_WAKE_SUPPORTED y
-SOC_RTC_CNTL_CPU_PD_DMA_BUS_WIDTH 128
-SOC_RTC_CNTL_CPU_PD_REG_FILE_NUM 549
-SOC_RTC_CNTL_TAGMEM_PD_DMA_BUS_WIDTH 128
-SOC_RTC_FAST_MEM_SUPPORTED y
-SOC_RTC_MEM_SUPPORTED y
-SOC_RTC_SLOW_CLK_SUPPORT_RC_FAST_D256 y
-SOC_RTC_SLOW_MEM_SUPPORTED y
-SOC_SDMMC_DELAY_PHASE_NUM 4
-SOC_SDMMC_HOST_SUPPORTED y
-SOC_SDMMC_NUM_SLOTS 2
-SOC_SDMMC_SUPPORT_XTAL_CLOCK y
-SOC_SDMMC_USE_GPIO_MATRIX y
-SOC_SDM_CHANNELS_PER_GROUP 8
-SOC_SDM_CLK_SUPPORT_APB y
-SOC_SDM_GROUPS y
-SOC_SDM_SUPPORTED y
-SOC_SECURE_BOOT_SUPPORTED y
-SOC_SECURE_BOOT_V2_RSA y
-SOC_SHA_DMA_MAX_BUFFER_SIZE 3968
-SOC_SHA_GDMA y
-SOC_SHA_SUPPORTED y
-SOC_SHA_SUPPORT_DMA y
-SOC_SHA_SUPPORT_RESUME y
-SOC_SHA_SUPPORT_SHA1 y
-SOC_SHA_SUPPORT_SHA224 y
-SOC_SHA_SUPPORT_SHA256 y
-SOC_SHA_SUPPORT_SHA384 y
-SOC_SHA_SUPPORT_SHA512 y
-SOC_SHA_SUPPORT_SHA512_224 y
-SOC_SHA_SUPPORT_SHA512_256 y
-SOC_SHA_SUPPORT_SHA512_T y
-SOC_SPIRAM_SUPPORTED y
-SOC_SPIRAM_XIP_SUPPORTED y
-SOC_SPI_FLASH_SUPPORTED y
-SOC_SPI_MAXIMUM_BUFFER_SIZE 64
-SOC_SPI_MAX_CS_NUM 6
-SOC_SPI_MAX_PRE_DIVIDER 16
-SOC_SPI_MEM_SUPPORT_AUTO_RESUME y
-SOC_SPI_MEM_SUPPORT_AUTO_SUSPEND y
-SOC_SPI_MEM_SUPPORT_AUTO_WAIT_IDLE y
-SOC_SPI_MEM_SUPPORT_CONFIG_GPIO_BY_EFUSE y
-SOC_SPI_MEM_SUPPORT_OPI_MODE y
-SOC_SPI_MEM_SUPPORT_SW_SUSPEND y
-SOC_SPI_MEM_SUPPORT_TIMING_TUNING y
-SOC_SPI_MEM_SUPPORT_WRAP y
-SOC_SPI_PERIPH_NUM 3
-SOC_SPI_PERIPH_SUPPORT_CONTROL_DUMMY_OUT y
-SOC_SPI_SLAVE_SUPPORT_SEG_TRANS y
-SOC_SPI_SUPPORT_CD_SIG y
-SOC_SPI_SUPPORT_CLK_APB y
-SOC_SPI_SUPPORT_CLK_XTAL y
-SOC_SPI_SUPPORT_CONTINUOUS_TRANS y
-SOC_SPI_SUPPORT_DDRCLK y
-SOC_SPI_SUPPORT_OCT y
-SOC_SPI_SUPPORT_SLAVE_HD_VER2 y
-SOC_SUPPORTS_SECURE_DL_MODE y
-SOC_SUPPORT_COEXISTENCE y
-SOC_SUPPORT_SECURE_BOOT_REVOKE_KEY y
-SOC_SYSTIMER_ALARM_MISS_COMPENSATE y
-SOC_SYSTIMER_ALARM_NUM 3
-SOC_SYSTIMER_BIT_WIDTH_HI 20
-SOC_SYSTIMER_BIT_WIDTH_LO 32
-SOC_SYSTIMER_COUNTER_NUM 2
-SOC_SYSTIMER_FIXED_DIVIDER y
-SOC_SYSTIMER_INT_LEVEL y
-SOC_SYSTIMER_SUPPORTED y
-SOC_TEMPERATURE_SENSOR_SUPPORT_FAST_RC y
-SOC_TEMP_SENSOR_SUPPORTED y
-SOC_TIMER_GROUPS 2
-SOC_TIMER_GROUP_COUNTER_BIT_WIDTH 54
-SOC_TIMER_GROUP_SUPPORT_APB y
-SOC_TIMER_GROUP_SUPPORT_XTAL y
-SOC_TIMER_GROUP_TIMERS_PER_GROUP 2
-SOC_TIMER_GROUP_TOTAL_TIMERS 4
-SOC_TOUCH_PAD_MEASURE_WAIT_MAX 0xFF
-SOC_TOUCH_PAD_THRESHOLD_MAX 0x1FFFFF
-SOC_TOUCH_PROXIMITY_CHANNEL_NUM 3
-SOC_TOUCH_PROXIMITY_MEAS_DONE_SUPPORTED y
-SOC_TOUCH_SENSOR_NUM 15
-SOC_TOUCH_SENSOR_SUPPORTED y
-SOC_TOUCH_VERSION_2 y
-SOC_TWAI_BRP_MAX 16384
-SOC_TWAI_BRP_MIN 2
-SOC_TWAI_CLK_SUPPORT_APB y
-SOC_TWAI_CONTROLLER_NUM 1
-SOC_TWAI_SUPPORTED y
-SOC_TWAI_SUPPORTS_RX_STATUS y
-SOC_UART_BITRATE_MAX 5000000
-SOC_UART_FIFO_LEN 128
-SOC_UART_HP_NUM 3
-SOC_UART_NUM 3
-SOC_UART_SUPPORTED y
-SOC_UART_SUPPORT_APB_CLK y
-SOC_UART_SUPPORT_FSM_TX_WAIT_SEND y
-SOC_UART_SUPPORT_RTC_CLK y
-SOC_UART_SUPPORT_WAKEUP_INT y
-SOC_UART_SUPPORT_XTAL_CLK y
-SOC_ULP_FSM_SUPPORTED y
-SOC_ULP_HAS_ADC y
-SOC_ULP_SUPPORTED y
-SOC_USB_OTG_PERIPH_NUM 1
-SOC_USB_OTG_SUPPORTED y
-SOC_USB_SERIAL_JTAG_SUPPORTED y
-SOC_WDT_SUPPORTED y
-SOC_WIFI_CSI_SUPPORT y
-SOC_WIFI_FTM_SUPPORT y
-SOC_WIFI_GCMP_SUPPORT y
-SOC_WIFI_HW_TSF y
-SOC_WIFI_LIGHT_SLEEP_CLK_WIDTH 12
-SOC_WIFI_MESH_SUPPORT y
-SOC_WIFI_SUPPORTED y
-SOC_WIFI_SUPPORT_VARIABLE_BEACON_WINDOW y
-SOC_WIFI_WAPI_SUPPORT y
-SOC_XTAL_SUPPORT_40M y
-SOC_XT_WDT_SUPPORTED y
-SPIRAM n
-SPI_FLASH_AUTO_SUSPEND n
-SPI_FLASH_BROWNOUT_RESET y
-SPI_FLASH_BROWNOUT_RESET_XMC y
-SPI_FLASH_HPM_AUTO y
-SPI_FLASH_HPM_DC_AUTO y
-SPI_FLASH_HPM_DC_DISABLE n
-SPI_FLASH_HPM_DIS n
-SPI_FLASH_HPM_ENA n
-SPI_FLASH_HPM_ON y
-SPI_FLASH_SUSPEND_QVL_SUPPORTED y
-SPI_FLASH_VENDOR_BOYA_SUPPORTED y
-SPI_FLASH_VENDOR_GD_SUPPORTED y
-SPI_FLASH_VENDOR_ISSI_SUPPORTED y
-SPI_FLASH_VENDOR_MXIC_SUPPORTED y
-SPI_FLASH_VENDOR_TH_SUPPORTED y
-SPI_FLASH_VENDOR_WINBOND_SUPPORTED y
-SPI_FLASH_VENDOR_XMC_SUPPORTED y
-TEMP_SENSOR_ENABLE_DEBUG_LOG n
-TEMP_SENSOR_SUPPRESS_DEPRECATE_WARN n
-TWAI_ERRATA_FIX_LISTEN_ONLY_DOM y
-ULP_COPROC_ENABLED n
-USB_HOST_DEBOUNCE_DELAY_MS 250
-USB_HOST_RESET_HOLD_MS 30
-USB_HOST_RESET_RECOVERY_MS 30
-USB_HOST_SET_ADDR_RECOVERY_MS 10
-VFS_MAX_COUNT 8
-VFS_SELECT_IN_RAM n
-WIFI_PROV_STA_ALL_CHANNEL_SCAN y
-WIFI_PROV_STA_FAST_SCAN n
-WPA_11R_SUPPORT n
-WPA_MBEDTLS_TLS_CLIENT y
-WS_DYNAMIC_BUFFER n
-XTAL_FREQ 40
-XTAL_FREQ_40 y
 APP_RETRIEVE_LEN_ELF_SHA 9 -> 16
 BT_CTRL_BLE_MAX_ACT 6 -> 10
 BT_CTRL_BLE_MAX_ACT_EFF 6 -> 10
 BT_CTRL_DFT_TX_POWER_LEVEL_EFF 11 -> 9
 BT_CTRL_DFT_TX_POWER_LEVEL_P3 n -> y
 BT_CTRL_DFT_TX_POWER_LEVEL_P9 y -> n
 BT_NIMBLE_ACL_BUF_COUNT 24 -> 20
 BT_NIMBLE_NVS_PERSIST n -> y
 ESP_HTTP_CLIENT_ENABLE_DIGEST_AUTH n -> y
 ESP_IPC_TASK_STACK_SIZE 1280 -> 1536
 ESP_WIFI_STA_DISCONNECTED_PM_ENABLE y -> n
 FREERTOS_PLACE_SNAPSHOT_FUNS_INTO_FLASH y -> n
 GOLIOTH_AUTO_LOG_TO_CLOUD y -> 1
 GOLIOTH_OTA_MAX_NUM_COMPONENTS 1 -> 4
 GOLIOTH_OTA_MAX_PACKAGE_NAME_LEN 16 -> 64
 GOLIOTH_OTA_MAX_VERSION_LEN 16 -> 64
 IPC_TASK_STACK_SIZE 1280 -> 1536
 LWIP_TCP_SND_BUF_DEFAULT 5760 -> 5744
 LWIP_TCP_WND_DEFAULT 5760 -> 5744
 NIMBLE_NVS_PERSIST n -> y
 TCP_SND_BUF_DEFAULT 5760 -> 5744
 TCP_WND_DEFAULT 5760 -> 5744
 WIFI_PROV_BLE_BONDING n -> y
 WIFI_PROV_BLE_FORCE_ENCRYPTION n -> y
+ADC2_DISABLE_DAC y
+ADC_DISABLE_DAC y
+ADC_FORCE_XPD_FSM n
+ASIO_SSL_SUPPORT n
+BT_CTRL_HW_CCA n
+BT_NIMBLE_HOST_BASED_PRIVACY n
+BT_SOC_SUPPORT_5_0 y
+BUTTON_AUTOREPEAT_INTERVAL 250
+BUTTON_AUTOREPEAT_TIMEOUT 500
+BUTTON_LONG_PRESS_TIMEOUT 1000
+BUTTON_MAX 5
+BUTTON_POLL_TIMEOUT 10
+COMPILER_DISABLE_GCC8_WARNINGS n
+DISABLE_GCC8_WARNINGS n
+DPS310_PROTOCOL_USING_I2C y
+ESP32C3_LIGHTSLEEP_GPIO_RESET_WORKAROUND y
+ESP32S2_ALLOW_RTC_FAST_MEM_AS_HEAP y
+ESP32S2_PANIC_GDBSTUB n
+ESP32S2_PANIC_PRINT_HALT n
+ESP32S2_PANIC_PRINT_REBOOT y
+ESP32S2_PANIC_SILENT_REBOOT n
+ESP32S3_DATA_CACHE_WRAP n
+ESP32S3_INSTRUCTION_CACHE_WRAP n
+ESP32S3_ULP_COPROC_ENABLED n
+ESP32S3_ULP_COPROC_RESERVE_MEM 0
+ESPTOOLPY_BAUD_OTHER_VAL 115200
+ESPTOOLPY_FLASHSIZE_DETECT y
+ESPTOOLPY_MONITOR_BAUD_115200B y
+ESPTOOLPY_MONITOR_BAUD_230400B n
+ESPTOOLPY_MONITOR_BAUD_2MB n
+ESPTOOLPY_MONITOR_BAUD_57600B n
+ESPTOOLPY_MONITOR_BAUD_921600B n
+ESPTOOLPY_MONITOR_BAUD_9600B n
+ESPTOOLPY_MONITOR_BAUD_CONSOLE n
+ESPTOOLPY_MONITOR_BAUD_OTHER n
+ESPTOOLPY_MONITOR_BAUD_OTHER_VAL 115200
+ESP_CONSOLE_MULTIPLE_UART y
+ESP_HTTPS_SERVER_ENABLE n
+ESP_NETIF_TCPIP_ADAPTER_COMPATIBLE_LAYER y
+ESP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES n
+ESP_TLS_SERVER n
+EXAMPLE_NUMBER 1
+EXAMPLE_USING_BAR n
+EXAMPLE_USING_FOO y
+FMB_COMM_MODE_ASCII_EN y
+FMB_COMM_MODE_RTU_EN y
+FMB_COMM_MODE_TCP_EN y
+FMB_CONTROLLER_NOTIFY_QUEUE_SIZE 20
+FMB_CONTROLLER_NOTIFY_TIMEOUT 20
+FMB_CONTROLLER_SLAVE_ID 0x00112233
+FMB_CONTROLLER_SLAVE_ID_SUPPORT y
+FMB_CONTROLLER_STACK_SIZE 4096
+FMB_EVENT_QUEUE_TIMEOUT 20
+FMB_MASTER_DELAY_MS_CONVERT 200
+FMB_MASTER_TIMEOUT_MS_RESPOND 150
+FMB_MASTER_TIMER_GROUP 0
+FMB_MASTER_TIMER_INDEX 0
+FMB_PORT_TASK_AFFINITY 0x0
+FMB_PORT_TASK_AFFINITY_CPU0 y
+FMB_PORT_TASK_AFFINITY_CPU1 n
+FMB_PORT_TASK_AFFINITY_NO_AFFINITY n
+FMB_PORT_TASK_PRIO 10
+FMB_PORT_TASK_STACK_SIZE 4096
+FMB_QUEUE_LENGTH 20
+FMB_SERIAL_ASCII_BITS_PER_SYMB 8
+FMB_SERIAL_ASCII_TIMEOUT_RESPOND_MS 1000
+FMB_SERIAL_BUF_SIZE 256
+FMB_TCP_CONNECTION_TOUT_SEC 20
+FMB_TCP_PORT_DEFAULT 502
+FMB_TCP_PORT_MAX_CONN 5
+FMB_TIMER_GROUP 0
+FMB_TIMER_INDEX 0
+FMB_TIMER_ISR_IN_IRAM n
+FMB_TIMER_PORT_ENABLED n
+FREERTOS_ASSERT_DISABLE n
+FREERTOS_ASSERT_FAIL_ABORT y
+FREERTOS_ASSERT_FAIL_PRINT_CONTINUE n
+FREERTOS_ASSERT_ON_UNTESTED_FUNCTION y
+FREERTOS_LEGACY_HOOKS n
+GOLIOTH_ALLOCATION_TRACKING 0
+GOLIOTH_BLE_SERVICE_ENABLED y
+GOLIOTH_DEBUG_LOG_ENABLE 1
+GOLIOTH_REMOTE_SHELL_BUF_SIZE 8192
+GOLIOTH_REMOTE_SHELL_ENABLE n
+GOLIOTH_REMOTE_SHELL_THREAD_DELAY_MS 500
+GOLIOTH_REMOTE_SHELL_THREAD_STACK_SIZE 4096
+GOLIOTH_RPC_ENABLE 1
+GOLIOTH_SETTINGS_ENABLE 1
+HMC5883L_MEAS_TIMEOUT 6000
+I2CDEV_NOLOCK n
+I2CDEV_TIMEOUT 1000
+JSMN_PARENT_LINKS n
+JSMN_STRICT n
+LED_STRIP_FLUSH_TIMEOUT 1000
+LED_STRIP_PAUSE_LENGTH 50
+LED_STRIP_SPI_MUTEX_TIMEOUT_MS 1
+LED_STRIP_SPI_USING_SK9822 y
+LEGACY_INCLUDE_COMMON_HEADERS n
+LWIP_ETHARP_TRUST_IP_MAC n
+LWIP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES n
+MBEDTLS_KEY_EXCHANGE_DHE_PSK y
+MBEDTLS_KEY_EXCHANGE_DHE_RSA y
+MBEDTLS_RC4_DISABLED y
+MBEDTLS_RC4_ENABLED n
+MBEDTLS_RC4_ENABLED_NO_DEFAULT n
+MBEDTLS_SECURITY_RISKS n
+MBEDTLS_SSL_PROTO_SSL3 n
+MBEDTLS_SSL_PROTO_TLS1 y
+MBEDTLS_SSL_PROTO_TLS1_1 y
+MBEDTLS_X509_CHECK_EXTENDED_KEY_USAGE y
+MBEDTLS_X509_CHECK_KEY_USAGE y
+MB_CONTROLLER_NOTIFY_QUEUE_SIZE 20
+MB_CONTROLLER_NOTIFY_TIMEOUT 20
+MB_CONTROLLER_SLAVE_ID 0x00112233
+MB_CONTROLLER_SLAVE_ID_SUPPORT y
+MB_CONTROLLER_STACK_SIZE 4096
+MB_EVENT_QUEUE_TIMEOUT 20
+MB_MASTER_DELAY_MS_CONVERT 200
+MB_MASTER_TIMEOUT_MS_RESPOND 150
+MB_QUEUE_LENGTH 20
+MB_SERIAL_BUF_SIZE 256
+MB_SERIAL_TASK_PRIO 10
+MB_SERIAL_TASK_STACK_SIZE 4096
+MB_TIMER_GROUP 0
+MB_TIMER_INDEX 0
+MB_TIMER_PORT_ENABLED n
+MCP23X17_IFACE_I2C y
+MCP23X17_IFACE_SPI n
+MDNS_MAX_SERVICES 10
+MDNS_MULTIPLE_INSTANCE y
+MDNS_NETWORKING_SOCKET n
+MDNS_SERVICE_ADD_TIMEOUT_MS 2000
+MDNS_STRICT_MODE n
+MDNS_TASK_AFFINITY 0x0
+MDNS_TASK_AFFINITY_CPU0 y
+MDNS_TASK_AFFINITY_CPU1 n
+MDNS_TASK_AFFINITY_NO_AFFINITY n
+MDNS_TASK_PRIORITY 1
+MDNS_TASK_STACK_SIZE 4096
+MDNS_TIMER_PERIOD_MS 100
+MONITOR_BAUD_115200B y
+MONITOR_BAUD_230400B n
+MONITOR_BAUD_2MB n
+MONITOR_BAUD_57600B n
+MONITOR_BAUD_921600B n
+MONITOR_BAUD_9600B n
+MONITOR_BAUD_OTHER n
+MONITOR_BAUD_OTHER_VAL 115200
+NIMBLE_ACL_BUF_COUNT 20
+NIMBLE_ACL_BUF_SIZE 255
+NIMBLE_HCI_EVT_BUF_SIZE 70
+NIMBLE_HCI_EVT_HI_BUF_COUNT 30
+NIMBLE_HCI_EVT_LO_BUF_COUNT 8
+NIMBLE_MSYS1_BLOCK_COUNT 12
+ONEWIRE_CRC8_TABLE y
+OPENSSL_ASSERT_DO_NOTHING n
+OPENSSL_ASSERT_EXIT y
+OPENSSL_DEBUG n
+OPENSSL_ERROR_STACK y
+RE_BTN_DEAD_TIME_US 10000
+RE_BTN_LONG_PRESS_TIME_US 500000
+RE_BTN_PRESSED_LEVEL_0 y
+RE_BTN_PRESSED_LEVEL_1 n
+RE_INTERVAL_US 1000
+RE_MAX 1
+RINGBUF_PLACE_ISR_FUNCTIONS_INTO_FLASH n
+RTC_CLOCK_BBPLL_POWER_ON_WITH_USB y
+SDK_TOOLCHAIN_SUPPORTS_TIME_WIDE_64_BITS n
+SDK_TOOLPREFIX "xtensa-esp32s3-elf-"
+SECURE_BOOT_SUPPORTS_RSA y
+SECURE_TARGET_HAS_SECURE_ROM_DL_MODE y
+SPI_FLASH_SHARE_SPI1_BUS n
+SPI_FLASH_USE_LEGACY_IMPL n
+TINYUSB n
+TOOLPREFIX "xtensa-esp32s3-elf-"
+USB_ENABLED n
+USE_ONLY_LWIP_SELECT n

@hasheddan Have you had a chance to take a look at this?

@sethkazarians apologies for the delay here. @marko and I took a look at the kconfig-diff you shared and nothing stands out to us as a change that would cause this behavior. We are working on reproducing your scenario on a device and will make sure to follow up. Have you tested on your device and network with the stock golioth_basics in the SDK?

@hasheddan
Here’s the Golioth Basics example downloading the firmware. The loop timer is set to 30s, so there’s 10 chunks being downloaded every minute (or so).

I’m going to try another Devkit to make sure it’s not HW related.

I (666879) golioth_fw_update: Received OTA manifest
I (666879) golioth_fw_update: Current version = 1.2.5, Target version = 1.2.6
I (666879) golioth_fw_update: State = Downloading
I (667259) golioth_fw_update: Image size = 974624
I (667269) fw_block_processor: Downloading block index 0 (1/952)
W (667569) golioth_coap_client_libcoap: 4.00 (req type: 2, path: .u/c/[email protected]), len 68
I (667569) fw_update_esp_idf: Writing to partition subtype 17 at offset 0x1a0000
I (667579) fw_update_esp_idf: Erasing flash
I (673109) fw_block_processor: Downloading block index 1 (2/952)
W (673399) golioth_coap_client_libcoap: 4.00 (req type: 2, path: .u/c/[email protected]), len 68
I (673409) fw_update_esp_idf: Writing to partition subtype 17 at offset 0x1a0000
I (673419) fw_update_esp_idf: Erasing flash
I (675639) golioth_basics: Sending hello! 23
I (678939) fw_block_processor: Downloading block index 2 (3/952)
W (679149) golioth_coap_client_libcoap: 4.00 (req type: 2, path: .u/c/[email protected]), len 68
I (679149) fw_update_esp_idf: Writing to partition subtype 17 at offset 0x1a0000
I (679159) fw_update_esp_idf: Erasing flash
I (684699) fw_block_processor: Downloading block index 3 (4/952)
W (684899) golioth_coap_client_libcoap: 4.00 (req type: 2, path: .u/c/[email protected]), len 68
I (684909) fw_update_esp_idf: Writing to partition subtype 17 at offset 0x1a0000
I (684919) fw_update_esp_idf: Erasing flash
I (690439) fw_block_processor: Downloading block index 4 (5/952)
W (691119) golioth_coap_client_libcoap: 4.00 (req type: 2, path: .u/c/[email protected]), len 68
I (691129) fw_update_esp_idf: Writing to partition subtype 17 at offset 0x1a0000
I (691139) fw_update_esp_idf: Erasing flash
I (696719) fw_block_processor: Downloading block index 5 (6/952)
W (696849) golioth_coap_client_libcoap: 4.00 (req type: 2, path: .u/c/[email protected]), len 68
I (696859) fw_update_esp_idf: Writing to partition subtype 17 at offset 0x1a0000
I (696869) fw_update_esp_idf: Erasing flash
I (702389) fw_block_processor: Downloading block index 6 (7/952)
W (702689) golioth_coap_client_libcoap: 4.00 (req type: 2, path: .u/c/[email protected]), len 68
I (702699) fw_update_esp_idf: Writing to partition subtype 17 at offset 0x1a0000
I (702709) fw_update_esp_idf: Erasing flash
I (705809) golioth_basics: Sending hello! 24

OK, with new HW:

It’s a I tried new HW, and it’s improved. Golioth_basics downloads ~62 chunks per minute

I programmed our code over it and then ran the update. It slowed down to the ~50 chunks/minute.

However, going back and forth between the HW is the main slowdown it seems. Hopefully we don’t see this again in the future.

Old HW is DevkitC v1.0 with a M0N8 variant
New HW is DevkitC v1.1 with a MCN8 variant

1 Like

@sethkazarians thank you for the update! Glad to hear performance on the new hardware is improved, but we’ll keep investigating here to see if we can track down why this is the case.

Hey @sethkazarians, yesterday I received an order of 2x ESP32-S3-DevKitC-1U v1.0 (M0N8 variant), and 2x ESP32-S3-DevKitM-1 v1.0 (M0N8 variant) and did OTA download tests with all 4 boards. I’ve used the golioth_basics example, with an image size of ~1.1M (1056 blocks/chunks).

Test results:

ESP32S3 DevKitM-1 v1.0 (with onboard antenna)

  • minimum download time: 384 sec (~6.4 minutes), ~165 blocks/minute
  • average download time: 400 sec (~6.6 minutes) , ~158 blocks/minute

ESP32S3 DevKitC-1U v1.0 (with an external antenna)

  • minimum download time: 423 sec (~7 min), ~150 blocks/minute
  • average download time: 438 sec (~7.3 min), ~145 blocks/minute

From the tests, we can see a faster download speed (3x) than in your last post (150 compared to 50 blocks/min). The interesting bit for me is that the download speed with DevKitC-1U with an external antenna was, on average, slower than with DevKitM-1 with an onboard antenna.

Are you also using an external antenna? If so, can you test the download speed with various antennas to check if that’s the bottleneck?