diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index cfca956f8..048e5dfdd 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -1,4 +1,4 @@ -name: Arduino IDF 4.4.4 +name: Arduino IDF 4.4.5 on: workflow_dispatch: # Manually start a workflow diff --git a/README.md b/README.md index fc6179237..faf4ed87e 100644 --- a/README.md +++ b/README.md @@ -14,10 +14,10 @@ cd esp32-arduino-lib-builder Look in release and download a version. There is the Info of the used commits of IDF / Arduino. ### Stable Platformio Platform release including ESP32solo1 -based on Arduino Core 2.0.7 and can be used with Platformio for the ESP32/ESP32solo1, ESP32C3, ESP32S2 and ESP32S3 +based on Arduino Core 2.0.9 and can be used with Platformio for the ESP32/ESP32solo1, ESP32C3, ESP32S2 and ESP32S3 ``` [platformio] -platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.02.00/platform-espressif32.zip +platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.05.01/platform-espressif32.zip framework = arduino, espidf ``` to use the ESP32 Solo1 Arduino framework add in your env diff --git a/components/arduino_tinyusb/CMakeLists.txt b/components/arduino_tinyusb/CMakeLists.txt index 041eeec0f..02f9187f1 100755 --- a/components/arduino_tinyusb/CMakeLists.txt +++ b/components/arduino_tinyusb/CMakeLists.txt @@ -43,6 +43,7 @@ if(CONFIG_TINYUSB_ENABLED) "${COMPONENT_DIR}/tinyusb/src/class/msc/msc_device.c" "${COMPONENT_DIR}/tinyusb/src/class/video/video_device.c" "${COMPONENT_DIR}/tinyusb/src/class/dfu/dfu_rt_device.c" + "${COMPONENT_DIR}/tinyusb/src/class/dfu/dfu_device.c" "${COMPONENT_DIR}/tinyusb/src/class/vendor/vendor_device.c" "${COMPONENT_DIR}/tinyusb/src/common/tusb_fifo.c" "${COMPONENT_DIR}/tinyusb/src/device/usbd_control.c" diff --git a/components/arduino_tinyusb/Kconfig.projbuild b/components/arduino_tinyusb/Kconfig.projbuild index a6abd4d8a..80983657f 100755 --- a/components/arduino_tinyusb/Kconfig.projbuild +++ b/components/arduino_tinyusb/Kconfig.projbuild @@ -175,6 +175,31 @@ menu "Arduino TinyUSB" endmenu + menu "DFU driver" + depends on TINYUSB_ENABLED + + config TINYUSB_DFU_ENABLED + bool "Enable USB DFU TinyUSB driver" + default y + help + Enable USB DFU TinyUSB driver. + + config TINYUSB_DESC_DFU_STRING + string "DFU Device String" + default "Espressif DFU Device" + depends on TINYUSB_DFU_ENABLED + help + Specify name of the DFU device + + config TINYUSB_DFU_BUFSIZE + int "DFU buffer size" + default 4096 + depends on TINYUSB_DFU_ENABLED + help + DFU buffer size + + endmenu + menu "VENDOR driver" depends on TINYUSB_ENABLED diff --git a/components/arduino_tinyusb/include/tusb_config.h b/components/arduino_tinyusb/include/tusb_config.h index a5a0afd32..ee1e5d270 100755 --- a/components/arduino_tinyusb/include/tusb_config.h +++ b/components/arduino_tinyusb/include/tusb_config.h @@ -64,6 +64,10 @@ extern "C" { # define CONFIG_TINYUSB_DFU_RT_ENABLED 0 #endif +#ifndef CONFIG_TINYUSB_DFU_ENABLED +# define CONFIG_TINYUSB_DFU_ENABLED 0 +#endif + #ifndef CONFIG_TINYUSB_VENDOR_ENABLED # define CONFIG_TINYUSB_VENDOR_ENABLED 0 #endif @@ -106,6 +110,7 @@ extern "C" { #define CFG_TUD_VIDEO CONFIG_TINYUSB_VIDEO_ENABLED #define CFG_TUD_CUSTOM_CLASS CONFIG_TINYUSB_CUSTOM_CLASS_ENABLED #define CFG_TUD_DFU_RUNTIME CONFIG_TINYUSB_DFU_RT_ENABLED +#define CFG_TUD_DFU CONFIG_TINYUSB_DFU_ENABLED #define CFG_TUD_VENDOR CONFIG_TINYUSB_VENDOR_ENABLED // CDC FIFO size of TX and RX @@ -126,6 +131,9 @@ extern "C" { #define CFG_TUD_VIDEO_STREAMING CONFIG_TINYUSB_VIDEO_STREAMING_IFS #define CFG_TUD_VIDEO_STREAMING_EP_BUFSIZE CONFIG_TINYUSB_VIDEO_STREAMING_BUFSIZE +// DFU buffer size +#define CFG_TUD_DFU_XFER_BUFSIZE CONFIG_TINYUSB_DFU_BUFSIZE + // VENDOR FIFO size of TX and RX #define CFG_TUD_VENDOR_RX_BUFSIZE CONFIG_TINYUSB_VENDOR_RX_BUFSIZE #define CFG_TUD_VENDOR_TX_BUFSIZE CONFIG_TINYUSB_VENDOR_TX_BUFSIZE diff --git a/configs/defconfig.esp32 b/configs/defconfig.esp32 index ddbb04d21..c15bdbffb 100644 --- a/configs/defconfig.esp32 +++ b/configs/defconfig.esp32 @@ -13,13 +13,30 @@ CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE=y # CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR is not set CONFIG_COMPILER_STACK_CHECK_MODE_NORM=y CONFIG_COMPILER_WARN_WRITE_STRINGS=y -CONFIG_BT_ENABLED=y -CONFIG_BTDM_CTRL_MODE_BTDM=y -CONFIG_BTDM_SCAN_DUPL_CACHE_SIZE=20 -CONFIG_BT_BTC_TASK_STACK_SIZE=8192 + +# +# Bluedroid Options +# +CONFIG_BT_BTC_TASK_STACK_SIZE=1024 +CONFIG_BT_BLUEDROID_PINNED_TO_CORE_0=y +# CONFIG_BT_BLUEDROID_PINNED_TO_CORE_1 is not set +CONFIG_BT_BLUEDROID_PINNED_TO_CORE=0 +CONFIG_BT_BTU_TASK_STACK_SIZE=4096 +# CONFIG_BT_BLUEDROID_MEM_DEBUG is not set +# CONFIG_BT_CLASSIC_ENABLED is not set +# CONFIG_BT_BLE_ENABLED is not set CONFIG_BT_STACK_NO_LOG=y -CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST=y -CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=y +CONFIG_BT_ACL_CONNECTIONS=4 +# CONFIG_BT_MULTI_CONNECTION_ENBALE is not set +# CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST is not set +# CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY is not set +# CONFIG_BT_BLE_HOST_QUEUE_CONG_CHECK is not set +CONFIG_BT_BLE_ESTAB_LINK_CONN_TOUT=30 +CONFIG_BT_MAX_DEVICE_NAME_LEN=32 +# CONFIG_BT_BLE_RPA_SUPPORTED is not set +# end of Bluedroid Options +# end of Bluetooth + CONFIG_RINGBUF_PLACE_FUNCTIONS_INTO_FLASH=y CONFIG_ESP_SYSTEM_ESP32_SRAM1_REGION_AS_IRAM=y CONFIG_ESP32_SPIRAM_SUPPORT=y @@ -28,19 +45,21 @@ CONFIG_ESP32_ULP_COPROC_ENABLED=y CONFIG_ESP32_ULP_COPROC_RESERVE_MEM=1024 CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=4096 CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=0 +# CONFIG_SPIRAM_BANKSWITCH_ENABLE is not set CONFIG_ESP32_XTAL_FREQ_AUTO=y CONFIG_ETH_SPI_ETHERNET_DM9051=y # CONFIG_ETH_SPI_ETHERNET_W5500 is not set +# CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS is not set CONFIG_HTTPD_WS_SUPPORT=y CONFIG_HTTPD_MAX_REQ_HDR_LEN=1024 -CONFIG_ESP_IPC_TASK_STACK_SIZE=1024 -CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=2048 +CONFIG_ESP_IPC_TASK_STACK_SIZE=1536 +CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=3072 CONFIG_ESP_MAIN_TASK_STACK_SIZE=4096 CONFIG_ESP_INT_WDT_TIMEOUT_MS=1000 CONFIG_ESP_TASK_WDT_PANIC=y CONFIG_ESP_TASK_WDT_TIMEOUT_S=10 # CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1 is not set -CONFIG_ESP_TIMER_TASK_STACK_SIZE=4096 +CONFIG_ESP_TIMER_TASK_STACK_SIZE=5120 CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=8 CONFIG_ESP32_WIFI_STATIC_TX_BUFFER_NUM=8 CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM=16 @@ -51,10 +70,12 @@ CONFIG_FMB_TIMER_PORT_ENABLED=y CONFIG_FREERTOS_HZ=1000 # CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION is not set CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK=y -CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=1024 +CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=2048 # CONFIG_FREERTOS_FPU_IN_ISR is not set +# CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT is not set CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH=y CONFIG_FREERTOS_PLACE_SNAPSHOT_FUNS_INTO_FLASH=y +CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=n CONFIG_HAL_ASSERTION_DISABLE=y CONFIG_HEAP_POISONING_LIGHT=y CONFIG_LOG_DEFAULT_LEVEL_NONE=y @@ -71,9 +92,11 @@ CONFIG_LWIP_DHCP_OPTIONS_LEN=128 CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000 CONFIG_LWIP_TCP_SYNMAXRTX=6 CONFIG_LWIP_TCP_MSS=1436 +CONFIG_LWIP_TCP_RECVMBOX_SIZE=16 CONFIG_LWIP_TCP_RTO_TIME=3000 -CONFIG_LWIP_TCPIP_TASK_STACK_SIZE=2560 +CONFIG_LWIP_TCPIP_TASK_STACK_SIZE=3072 CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0=y +CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=48 CONFIG_LWIP_UDP_RECVMBOX_SIZE=64 CONFIG_LWIP_IPV6_AUTOCONFIG=y CONFIG_LWIP_IPV6_RDNSS_MAX_DNS_SERVERS=2 @@ -83,7 +106,7 @@ CONFIG_MBEDTLS_KEY_EXCHANGE_PSK=y CONFIG_NEWLIB_NANO_FORMAT=y # CONFIG_OPENSSL_ERROR_STACK is not set CONFIG_OPENSSL_ASSERT_DO_NOTHING=y -CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT=2048 +CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072 CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED=y CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS=10 CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=2 @@ -100,3 +123,240 @@ CONFIG_TWAI_ERRATA_FIX_BUS_OFF_REC=y CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST=y CONFIG_TWAI_ERRATA_FIX_RX_FRAME_INVALID=y CONFIG_TWAI_ERRATA_FIX_RX_FIFO_CORRUPT=y +# +# Disable Cameras not used +# +# CONFIG_OV7670_SUPPORT is not set +# CONFIG_OV7725_SUPPORT is not set +# CONFIG_NT99141_SUPPORT is not set +# CONFIG_OV3660_SUPPORT is not set +# CONFIG_OV5640_SUPPORT is not set +# CONFIG_GC2145_SUPPORT is not set +# CONFIG_GC032A_SUPPORT is not set +# CONFIG_GC0308_SUPPORT is not set +# CONFIG_BF3005_SUPPORT is not set +# CONFIG_BF20A6_SUPPORT is not set +# CONFIG_SC030IOT_SUPPORT is not set + +CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH=3096 + +# CONFIG_ESP_INSIGHTS_ENABLED is not set +# CONFIG_ESP_INSIGHTS_COREDUMP_ENABLE is not set +# CONFIG_ESP_INSIGHTS_TRANSPORT_HTTPS is not set +# CONFIG_DIAG_LOG_DROP_WIFI_LOGS is not set +# CONFIG_DIAG_ENABLE_METRICS is not set +# CONFIG_DIAG_ENABLE_HEAP_METRICS is not set +# CONFIG_DIAG_ENABLE_WIFI_METRICS is not set +# CONFIG_DIAG_ENABLE_VARIABLES is not set +# CONFIG_DIAG_ENABLE_NETWORK_VARIABLES is not set +CONFIG_ESP_COREDUMP_ENABLE=y +CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH=y +CONFIG_ESP_COREDUMP_DATA_FORMAT_ELF=y +CONFIG_ESP_COREDUMP_CHECKSUM_CRC32=y +CONFIG_ESP_COREDUMP_MAX_TASKS_NUM=64 +CONFIG_ESP_COREDUMP_STACK_SIZE=1024 +CONFIG_MBEDTLS_DYNAMIC_BUFFER=y +CONFIG_MBEDTLS_DYNAMIC_FREE_PEER_CERT=y +CONFIG_MBEDTLS_DYNAMIC_FREE_CONFIG_DATA=y +CONFIG_FREERTOS_USE_TRACE_FACILITY=y +CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y +CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID=y +# CONFIG_ESP_COREDUMP_ENABLE_TO_NONE is not set +# CONFIG_ESP_COREDUMP_ENABLE_TO_UART is not set +CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH=y + +# CONFIG_NVS_ENCRYPTION is not set + +# +# 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_SINGLE_APP_ENCRYPTED_NVS is not set +# CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE_ENC_NVS is not set +CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" +CONFIG_PARTITION_TABLE_FILENAME="partitions.csv" +CONFIG_PARTITION_TABLE_OFFSET=0x8000 +CONFIG_PARTITION_TABLE_MD5=y +# end of Partition Table + +CONFIG_LIB_BUILDER_FLASHMODE="dio" +CONFIG_LIB_BUILDER_FLASHFREQ="80m" +CONFIG_LIB_BUILDER_COMPILE=y + +CONFIG_APP_COMPILE_TIME_DATE=y +# CONFIG_APP_EXCLUDE_PROJECT_VER_VAR is not set +# CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR is not set + +CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE=y +# CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK is not set +# CONFIG_BOOTLOADER_SKIP_VALIDATE_ON_POWER_ON is not set +# CONFIG_BOOTLOADER_SKIP_VALIDATE_ALWAYS is not set + +# CONFIG_DISABLE_HAL_LOCKS is not set + +# +# Debug Log Configuration +# +# CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL_NONE is not set +CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL_ERROR=y +# CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL_WARN is not set +# CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL_INFO is not set +# CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL_DEBUG is not set +# CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL_VERBOSE is not set +CONFIG_ARDUHAL_LOG_DEFAULT_LEVEL=1 +# CONFIG_ARDUHAL_LOG_COLORS is not set +CONFIG_ARDUHAL_ESP_LOG=y +# end of Debug Log Configuration + +CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE=y +# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT is not set +# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE is not set +CONFIG_COMPILER_OPTIMIZATION_ASSERTION_LEVEL=2 +# CONFIG_COMPILER_OPTIMIZATION_CHECKS_SILENT is not set +CONFIG_COMPILER_HIDE_PATHS_MACROS=y +CONFIG_COMPILER_CXX_EXCEPTIONS=y + +# +# SPI configuration +# +# CONFIG_SPI_MASTER_IN_IRAM is not set +# CONFIG_SPI_MASTER_ISR_IN_IRAM is not set +# CONFIG_SPI_SLAVE_IN_IRAM is not set +# CONFIG_SPI_SLAVE_ISR_IN_IRAM is not set +# end of SPI configuration + +CONFIG_ESP_TLS_SERVER=y +# CONFIG_ESP_TLS_SERVER_SESSION_TICKETS is not set +# CONFIG_ESP_TLS_SERVER_MIN_AUTH_MODE_OPTIONAL is not set + +# CONFIG_ESP32_SPIRAM_SUPPORT is not set + +# +# ESP HTTP client +# +CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y +CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH=y +CONFIG_ESP_HTTP_CLIENT_ENABLE_DIGEST_AUTH=y +# end of ESP HTTP client + +# +# LittleFS +# +CONFIG_LITTLEFS_MAX_PARTITIONS=3 +CONFIG_LITTLEFS_PAGE_SIZE=256 +CONFIG_LITTLEFS_OBJ_NAME_LEN=64 +CONFIG_LITTLEFS_READ_SIZE=128 +CONFIG_LITTLEFS_WRITE_SIZE=128 +CONFIG_LITTLEFS_LOOKAHEAD_SIZE=128 +CONFIG_LITTLEFS_CACHE_SIZE=512 +CONFIG_LITTLEFS_BLOCK_CYCLES=512 +CONFIG_LITTLEFS_USE_MTIME=y +# CONFIG_LITTLEFS_USE_ONLY_HASH is not set +# CONFIG_LITTLEFS_HUMAN_READABLE is not set +CONFIG_LITTLEFS_MTIME_USE_SECONDS=y +# CONFIG_LITTLEFS_MTIME_USE_NONCE is not set +# CONFIG_LITTLEFS_SPIFFS_COMPAT is not set +# CONFIG_LITTLEFS_FLUSH_FILE_EVERY_WRITE is not set +# end of LittleFS + +CONFIG_ESP_PHY_REDUCE_TX_POWER=y + +# CONFIG_RINGBUF_PLACE_FUNCTIONS_INTO_FLASH is not set + +CONFIG_FREERTOS_ASSERT_FAIL_ABORT=y +# CONFIG_FREERTOS_ASSERT_FAIL_PRINT_CONTINUE is not set +# CONFIG_FREERTOS_ASSERT_DISABLE is not set + +# +# 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_ASSERTION_ENABLE is not set +CONFIG_HAL_DEFAULT_ASSERTION_LEVEL=2 +# end of Hardware Abstraction Layer (HAL) and Low Level (LL) + +# +# Log output +# +# CONFIG_LOG_DEFAULT_LEVEL_NONE is not set +CONFIG_LOG_DEFAULT_LEVEL_ERROR=y +# CONFIG_LOG_DEFAULT_LEVEL_WARN is not set +# CONFIG_LOG_DEFAULT_LEVEL_INFO is not set +# CONFIG_LOG_DEFAULT_LEVEL_DEBUG is not set +# CONFIG_LOG_DEFAULT_LEVEL_VERBOSE is not set +CONFIG_LOG_DEFAULT_LEVEL=1 +CONFIG_LOG_MAXIMUM_EQUALS_DEFAULT=y +# CONFIG_LOG_MAXIMUM_LEVEL_WARN is not set +# CONFIG_LOG_MAXIMUM_LEVEL_INFO is not set +# CONFIG_LOG_MAXIMUM_LEVEL_DEBUG is not set +# CONFIG_LOG_MAXIMUM_LEVEL_VERBOSE is not set +CONFIG_LOG_MAXIMUM_LEVEL=1 +# CONFIG_LOG_COLORS is not set +CONFIG_LOG_TIMESTAMP_SOURCE_RTOS=y +# CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM is not set +# end of Log output + +CONFIG_LWIP_LOCAL_HOSTNAME="ibepower" + +# +# SNTP +# +CONFIG_LWIP_SNTP_MAX_SERVERS=3 +CONFIG_LWIP_DHCP_GET_NTP_SRV=y +CONFIG_LWIP_DHCP_MAX_NTP_SERVERS=1 +CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000 +# end of SNTP + +CONFIG_LWIP_ESP_LWIP_ASSERT=y + +CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384 +# CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN is not set + +# +# mDNS +# +CONFIG_MDNS_MAX_INTERFACES=3 +CONFIG_MDNS_MAX_SERVICES=10 +CONFIG_MDNS_TASK_PRIORITY=1 +CONFIG_MDNS_TASK_STACK_SIZE=4096 +# CONFIG_MDNS_TASK_AFFINITY_NO_AFFINITY is not set +CONFIG_MDNS_TASK_AFFINITY_CPU0=y +# CONFIG_MDNS_TASK_AFFINITY_CPU1 is not set +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 + +# +# MDNS Predefined interfaces +# +CONFIG_MDNS_PREDEF_NETIF_STA=y +CONFIG_MDNS_PREDEF_NETIF_AP=y +CONFIG_MDNS_PREDEF_NETIF_ETH=y +# end of MDNS Predefined interfaces +# end of mDNS + +# CONFIG_NEWLIB_NANO_FORMAT is not set + +CONFIG_OPENSSL_ERROR_STACK=y + +# +# 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 +# CONFIG_UNITY_ENABLE_BACKTRACE_ON_FAIL is not set +# end of Unity unit testing library + +CONFIG_ESP_HTTPS_SERVER_ENABLE=y \ No newline at end of file diff --git a/configs/defconfig.esp32c3 b/configs/defconfig.esp32c3 index 3aba6600a..57b191e9c 100644 --- a/configs/defconfig.esp32c3 +++ b/configs/defconfig.esp32c3 @@ -39,11 +39,11 @@ CONFIG_BT_LOG_BTIF_TRACE_LEVEL_NONE=y CONFIG_BT_LOG_BTC_TRACE_LEVEL_NONE=y CONFIG_BT_LOG_OSI_TRACE_LEVEL_NONE=y CONFIG_BT_LOG_BLUFI_TRACE_LEVEL_NONE=y -CONFIG_ESP32C3_REV_MIN_0=y CONFIG_ESP32C3_RTC_CLK_CAL_CYCLES=576 CONFIG_HTTPD_WS_SUPPORT=y CONFIG_HTTPD_MAX_REQ_HDR_LEN=1024 -CONFIG_ESP_HTTPS_SERVER_ENABLE=y +# CONFIG_ESP_HTTPS_SERVER_ENABLE is not set +# CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS is not set CONFIG_RINGBUF_PLACE_FUNCTIONS_INTO_FLASH=y CONFIG_ESP_SYSTEM_ESP32_SRAM1_REGION_AS_IRAM=y CONFIG_ESP_IPC_TASK_STACK_SIZE=1024 @@ -72,6 +72,8 @@ CONFIG_LWIP_IP_FORWARD=y CONFIG_LWIP_IPV4_NAPT=y CONFIG_LWIP_DHCP_OPTIONS_LEN=128 CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000 +CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=48 +CONFIG_LWIP_TCP_RECVMBOX_SIZE=16 CONFIG_LWIP_UDP_RECVMBOX_SIZE=64 CONFIG_LWIP_IPV6_AUTOCONFIG=y CONFIG_LWIP_IPV6_RDNSS_MAX_DNS_SERVERS=2 @@ -85,3 +87,17 @@ CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED=y # CONFIG_VFS_SUPPORT_SELECT is not set # CONFIG_VFS_SUPPRESS_SELECT_DEBUG_OUTPUT is not set # CONFIG_VFS_SUPPORT_TERMIOS is not set +# +# Disable Cameras not used 107 +# +# CONFIG_OV7670_SUPPORT is not set +# CONFIG_OV7725_SUPPORT is not set +# CONFIG_NT99141_SUPPORT is not set +# CONFIG_OV3660_SUPPORT is not set +# CONFIG_OV5640_SUPPORT is not set +# CONFIG_GC2145_SUPPORT is not set +# CONFIG_GC032A_SUPPORT is not set +# CONFIG_GC0308_SUPPORT is not set +# CONFIG_BF3005_SUPPORT is not set +# CONFIG_BF20A6_SUPPORT is not set +# CONFIG_SC030IOT_SUPPORT is not set diff --git a/configs/defconfig.esp32s2 b/configs/defconfig.esp32s2 index b28cd33dc..65d584874 100644 --- a/configs/defconfig.esp32s2 +++ b/configs/defconfig.esp32s2 @@ -25,12 +25,14 @@ CONFIG_ESP32S2_ULP_COPROC_RESERVE_MEM=4096 CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=4096 CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=0 +# CONFIG_SPIRAM_BANKSWITCH_ENABLE is not set CONFIG_LWIP_IPV6_AUTOCONFIG=y CONFIG_ESP32S2_KEEP_USB_ALIVE=y CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH=y CONFIG_HTTPD_WS_SUPPORT=y CONFIG_HTTPD_MAX_REQ_HDR_LEN=1024 -CONFIG_ESP_HTTPS_SERVER_ENABLE=y +# CONFIG_ESP_HTTPS_SERVER_ENABLE is not set +# CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS is not set CONFIG_ESP_IPC_TASK_STACK_SIZE=1024 CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=2048 CONFIG_ESP_MAIN_TASK_STACK_SIZE=4096 @@ -56,6 +58,8 @@ CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=1024 # CONFIG_FREERTOS_FPU_IN_ISR is not set CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH=y CONFIG_FREERTOS_PLACE_SNAPSHOT_FUNS_INTO_FLASH=y +# CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT is not set +CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=n CONFIG_HAL_ASSERTION_DISABLE=y CONFIG_HEAP_POISONING_LIGHT=y CONFIG_LOG_DEFAULT_LEVEL_NONE=y @@ -72,10 +76,12 @@ CONFIG_LWIP_DHCP_OPTIONS_LEN=128 CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000 CONFIG_LWIP_TCP_SYNMAXRTX=6 CONFIG_LWIP_TCP_MSS=1436 +CONFIG_LWIP_TCP_RECVMBOX_SIZE=16 CONFIG_LWIP_TCP_RTO_TIME=3000 CONFIG_LWIP_TCPIP_TASK_STACK_SIZE=2560 CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0=y CONFIG_LWIP_UDP_RECVMBOX_SIZE=64 +CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=48 CONFIG_LWIP_IPV6_AUTOCONFIG=y CONFIG_LWIP_IPV6_RDNSS_MAX_DNS_SERVERS=2 # CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN is not set @@ -97,3 +103,17 @@ CONFIG_SPI_FLASH_WRITE_CHUNK_SIZE=4096 # CONFIG_VFS_SUPPORT_SELECT is not set # CONFIG_VFS_SUPPRESS_SELECT_DEBUG_OUTPUT is not set # CONFIG_VFS_SUPPORT_TERMIOS is not set +# +# Disable Cameras not used +# +# CONFIG_OV7670_SUPPORT is not set +# CONFIG_OV7725_SUPPORT is not set +# CONFIG_NT99141_SUPPORT is not set +# CONFIG_OV3660_SUPPORT is not set +# CONFIG_OV5640_SUPPORT is not set +# CONFIG_GC2145_SUPPORT is not set +# CONFIG_GC032A_SUPPORT is not set +# CONFIG_GC0308_SUPPORT is not set +# CONFIG_BF3005_SUPPORT is not set +# CONFIG_BF20A6_SUPPORT is not set +# CONFIG_SC030IOT_SUPPORT is not set diff --git a/configs/defconfig.esp32s3 b/configs/defconfig.esp32s3 index af519b444..2dd97c9f7 100644 --- a/configs/defconfig.esp32s3 +++ b/configs/defconfig.esp32s3 @@ -49,11 +49,13 @@ CONFIG_ESP32S3_ULP_COPROC_RESERVE_MEM=4096 CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=4096 CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=0 +# CONFIG_SPIRAM_BANKSWITCH_ENABLE is not set CONFIG_ESP32S3_RTC_CLK_CAL_CYCLES=576 CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH=y CONFIG_HTTPD_WS_SUPPORT=y CONFIG_HTTPD_MAX_REQ_HDR_LEN=1024 -CONFIG_ESP_HTTPS_SERVER_ENABLE=y +# CONFIG_ESP_HTTPS_SERVER_ENABLE is not set +# CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS is not set CONFIG_ESP32S3_UNIVERSAL_MAC_ADDRESSES_TWO=y # CONFIG_ESP_SLEEP_GPIO_RESET_WORKAROUND is not set CONFIG_ESP_IPC_TASK_STACK_SIZE=1024 @@ -82,6 +84,8 @@ CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=1024 # CONFIG_FREERTOS_FPU_IN_ISR is not set CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH=y CONFIG_FREERTOS_PLACE_SNAPSHOT_FUNS_INTO_FLASH=y +# CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT is not set +CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=n CONFIG_HAL_ASSERTION_DISABLE=y CONFIG_HEAP_POISONING_LIGHT=y CONFIG_LOG_DEFAULT_LEVEL_NONE=y @@ -98,9 +102,11 @@ CONFIG_LWIP_DHCP_OPTIONS_LEN=128 CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000 CONFIG_LWIP_TCP_SYNMAXRTX=6 CONFIG_LWIP_TCP_MSS=1436 +CONFIG_LWIP_TCP_RECVMBOX_SIZE=16 CONFIG_LWIP_TCP_RTO_TIME=3000 CONFIG_LWIP_TCPIP_TASK_STACK_SIZE=2560 CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0=y +CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=48 CONFIG_LWIP_UDP_RECVMBOX_SIZE=64 CONFIG_LWIP_IPV6_AUTOCONFIG=y CONFIG_LWIP_IPV6_RDNSS_MAX_DNS_SERVERS=2 @@ -120,3 +126,17 @@ CONFIG_SPI_FLASH_WRITE_CHUNK_SIZE=4096 # CONFIG_VFS_SUPPORT_SELECT is not set # CONFIG_VFS_SUPPRESS_SELECT_DEBUG_OUTPUT is not set # CONFIG_VFS_SUPPORT_TERMIOS is not set +# +# Disable Cameras not used +# +# CONFIG_OV7670_SUPPORT is not set +# CONFIG_OV7725_SUPPORT is not set +# CONFIG_NT99141_SUPPORT is not set +# CONFIG_OV3660_SUPPORT is not set +# CONFIG_OV5640_SUPPORT is not set +# CONFIG_GC2145_SUPPORT is not set +# CONFIG_GC032A_SUPPORT is not set +# CONFIG_GC0308_SUPPORT is not set +# CONFIG_BF3005_SUPPORT is not set +# CONFIG_BF20A6_SUPPORT is not set +# CONFIG_SC030IOT_SUPPORT is not set diff --git a/core_version.h b/core_version.h index d3f4ab425..07bc267ca 100644 --- a/core_version.h +++ b/core_version.h @@ -1,4 +1,4 @@ #define ARDUINO_ESP32_GIT_VER 0xcbaeab4e -#define ARDUINO_ESP32_GIT_DESC 2.0.8 -#define ARDUINO_ESP32_RELEASE_2_0_8 -#define ARDUINO_ESP32_RELEASE "2_0_8" +#define ARDUINO_ESP32_GIT_DESC 2.0.10 +#define ARDUINO_ESP32_RELEASE_2_0_10 +#define ARDUINO_ESP32_RELEASE "2_0_10" diff --git a/package.json b/package.json index e6db8f061..b797c3513 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "framework-arduinoespressif32", - "version": "2.0.8", + "version": "2.0.10", "description": "Tasmota Arduino Framework for the Espressif ESP32, ESP32-S and ESP32-C series of SoCs", "keywords": [ "tasmota", diff --git a/partitions.csv b/partitions.csv index 3cf7a7587..a7f1ad313 100644 --- a/partitions.csv +++ b/partitions.csv @@ -1,8 +1,12 @@ -# Name, Type, SubType, Offset, Size, Flags -nvs, data, nvs, 0x9000, 0x5000, -otadata, data, ota, 0xe000, 0x2000, -app0, app, ota_0, 0x10000, 0x300000, -app1, app, ota_1, 0x310000, 0x300000, -spiffs, data, spiffs, 0x610000, 0x5E0000, -model, data, spiffs, 0xBF0000, 0x400000, -coredump, data, coredump,0xFF0000, 0x10000, +# Name, Type, SubType, Offset, Size, Flags +nvs, data, nvs, 0x9000, 0x5000, +otadata, data, ota, 0xe000, 0x2000, +app0, app, ota_0, 0x10000, 0x1E0000, +app1, app, ota_1, 0x1F0000, 0x1E0000, +coredump, data, coredump, 0x3F0000, 0x10000, + + +#nvs, data, nvs, 0x9000, 0x5000, +#otadata, data, ota, 0xe000, 0x2000, +#app0, app, ota_0, 0x10000, 0x1F0000, +#app1, app, ota_1, 0x200000, 0x1F0000, \ No newline at end of file diff --git a/release-info.txt b/release-info.txt new file mode 100644 index 000000000..72ad838d3 --- /dev/null +++ b/release-info.txt @@ -0,0 +1 @@ +Framework built from Tasmota IDF branch release/v4.4 commit 8b94183c9c and espressif/arduino-esp32 branch release/v2.x commit ac814eed diff --git a/tools/archive-build.sh b/tools/archive-build.sh index 7bdd662d7..93d9b3847 100755 --- a/tools/archive-build.sh +++ b/tools/archive-build.sh @@ -20,7 +20,10 @@ rm -rf arduino-esp32/libraries/RainMaker rm -rf arduino-esp32/libraries/Insights rm -rf arduino-esp32/package rm -rf arduino-esp32/tools/sdk +rm -rf arduino-esp32/tools/get.py +rm -rf arduino-esp32/tools/get.exe rm -rf arduino-esp32/tools/esptool.py +rm -rf arduino-esp32/tools/ide-debug rm -rf arduino-esp32/tools/gen_esp32part.py rm -rf arduino-esp32/tools/gen_insights_package.py rm -rf arduino-esp32/tools/gen_insights_package.exe diff --git a/tools/config.sh b/tools/config.sh index b0e50b2dd..19f64e987 100755 --- a/tools/config.sh +++ b/tools/config.sh @@ -6,11 +6,11 @@ if [ -z $IDF_PATH ]; then fi # The ESP32 IDF repository -IDF_REPO_URL="https://github.com/tasmota/esp-idf.git" +IDF_REPO_URL="https://github.com/espressif/esp-idf.git" # The IDF branch to use if [ -z $IDF_BRANCH ]; then - IDF_BRANCH="lwip_timeout" + IDF_BRANCH="release/v4.4" fi if [ -z $AR_PR_TARGET_BRANCH ]; then @@ -32,7 +32,7 @@ if [ -z $IDF_TARGET ]; then fi # Owner of the target ESP32 Arduino repository -AR_USER="tasmota" +AR_USER="espressif" # The full name of the repository AR_REPO="$AR_USER/arduino-esp32" @@ -40,11 +40,14 @@ AR_REPO="$AR_USER/arduino-esp32" # Arduino branch to use AR_BRANCH="release/v2.x" +# Arduino commit to use +#$AR_COMMIT = + AR_REPO_URL="https://github.com/$AR_REPO.git" -IDF_LIBS_REPO_URL="https://github.com/tasmota/esp32-arduino-libs.git" +IDF_LIBS_REPO_URL="https://github.com/espressif/esp32-arduino-libs.git" if [ -n $GITHUB_TOKEN ]; then AR_REPO_URL="https://$GITHUB_TOKEN@github.com/$AR_REPO.git" - IDF_LIBS_REPO_URL="https://$GITHUB_TOKEN@github.com/tasmota/esp32-arduino-libs.git" + IDF_LIBS_REPO_URL="https://$GITHUB_TOKEN@github.com/espressif/esp32-arduino-libs.git" fi AR_ROOT="$PWD" @@ -64,7 +67,11 @@ else IDF_COMMIT=$(git -C "$IDF_PATH" rev-parse --short HEAD || echo "") fi -AR_COMMIT=$(git -C "$AR_COMPS/arduino" rev-parse --short HEAD || echo "") +if [ "$AR_COMMIT" ]; then + echo "Using commit $AR_COMMIT for Arduino" +else + AR_COMMIT=$(git -C "$AR_COMPS/arduino" rev-parse --short HEAD || echo "") +fi rm -rf release-info.txt echo "Framework built from Tasmota IDF branch $IDF_BRANCH commit $IDF_COMMIT and $AR_REPO branch $AR_BRANCH commit $AR_COMMIT" >> release-info.txt diff --git a/tools/copy-libs.sh b/tools/copy-libs.sh index a5fbb3d04..dbeb7aaeb 100755 --- a/tools/copy-libs.sh +++ b/tools/copy-libs.sh @@ -404,7 +404,7 @@ for item; do done fi done -echo " join($PIO_SDK, env.BoardConfig().get(\"build.arduino.memory_type\", (env.BoardConfig().get(\"build.flash_mode\", \"dio\") + \"_$OCT_PSRAM\")), \"include\")," >> "$AR_PLATFORMIO_PY" +echo " join($PIO_SDK, env.BoardConfig().get(\"build.arduino.memory_type\", (env.BoardConfig().get(\"build.flash_mode\", \"dio\") + \"_qspi\")), \"include\")," >> "$AR_PLATFORMIO_PY" echo " join(FRAMEWORK_DIR, \"cores\", env.BoardConfig().get(\"build.core\"))" >> "$AR_PLATFORMIO_PY" echo " ]," >> "$AR_PLATFORMIO_PY" echo "" >> "$AR_PLATFORMIO_PY" @@ -429,7 +429,7 @@ done echo " LIBPATH=[" >> "$AR_PLATFORMIO_PY" echo " join($PIO_SDK, \"lib\")," >> "$AR_PLATFORMIO_PY" echo " join($PIO_SDK, \"ld\")," >> "$AR_PLATFORMIO_PY" -echo " join($PIO_SDK, env.BoardConfig().get(\"build.arduino.memory_type\", (env.BoardConfig().get(\"build.flash_mode\", \"dio\") + \"_$OCT_PSRAM\")))" >> "$AR_PLATFORMIO_PY" +echo " join($PIO_SDK, env.BoardConfig().get(\"build.arduino.memory_type\", (env.BoardConfig().get(\"build.flash_mode\", \"dio\") + \"_qspi\")))" >> "$AR_PLATFORMIO_PY" echo " ]," >> "$AR_PLATFORMIO_PY" echo "" >> "$AR_PLATFORMIO_PY" diff --git a/tools/install-esp-idf.sh b/tools/install-esp-idf.sh index f651350ee..cadfb8336 100755 --- a/tools/install-esp-idf.sh +++ b/tools/install-esp-idf.sh @@ -21,6 +21,7 @@ if [ "$IDF_TAG" ]; then git -C "$IDF_PATH" checkout "tags/$IDF_TAG" idf_was_installed="1" elif [ "$IDF_COMMIT" ]; then + echo " path $IDF_PATH commit $IDF_COMMIT" git -C "$IDF_PATH" checkout "$IDF_COMMIT" commit_predefined="1" fi diff --git a/version.txt b/version.txt new file mode 100644 index 000000000..402669160 --- /dev/null +++ b/version.txt @@ -0,0 +1,2 @@ +esp-idf: 8b94183c9c +arduino: release/v2.x ac814eed