From 3ed167d0858d76200f75b71231e4c8cd9de755c8 Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Tue, 18 Nov 2025 16:41:39 +0100 Subject: [PATCH 1/7] Add esp32u chip variant configuration --- configs/builds.json | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/configs/builds.json b/configs/builds.json index 6d1e28475..34a1e050b 100644 --- a/configs/builds.json +++ b/configs/builds.json @@ -143,6 +143,21 @@ ["dio","80m"] ] }, + { + "chip_variant": "esp32u", + "target": "esp32", + "features":[], + "idf_libs":["dio","40m"], + "bootloaders":[ + ["qio","80m"], + ["dio","80m"], + ["qio","40m"], + ["dio","40m"] + ], + "mem_variants":[ + ["qio","80m"] + ] + }, { "target": "esp32s2", "features":["qio_ram"], From d4da3ea6303e1adf6bb555a57b080b07a47bee2d Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Tue, 18 Nov 2025 16:48:02 +0100 Subject: [PATCH 2/7] Add default ESP32U configuration for Bluetooth --- configs/defconfig.esp32u | 43 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 configs/defconfig.esp32u diff --git a/configs/defconfig.esp32u b/configs/defconfig.esp32u new file mode 100644 index 000000000..9efa57712 --- /dev/null +++ b/configs/defconfig.esp32u @@ -0,0 +1,43 @@ +# +# Bluetooth +# +CONFIG_BT_ENABLED=y +CONFIG_BT_STACK_NO_LOG=y +# CONFIG_BT_BLE_42_FEATURES_SUPPORTED is not set +# CONFIG_BLE_MESH is not set +CONFIG_BT_NIMBLE_ENABLED=y +CONFIG_BT_NIMBLE_LOG_LEVEL_NONE=y +CONFIG_BT_NIMBLE_MAX_CONNECTIONS=2 +# CONFIG_BT_NIMBLE_NVS_PERSIST is not set +# CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS is not set +# CONFIG_BT_NIMBLE_LL_CFG_FEAT_LE_2M_PHY is not set +# CONFIG_BT_NIMBLE_LL_CFG_FEAT_LE_CODED_PHY is not set +# CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is not set +# CONFIG_BTDM_CTRL_MODE_BTDM is not set +# CONFIG_BT_BTC_TASK_STACK_SIZE is not set +# CONFIG_BT_BTU_TASK_STACK_SIZE is not set +CONFIG_BT_STACK_NO_LOG=y +CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=y + +CONFIG_ESP_MAC_IGNORE_MAC_CRC_ERROR=y + +# CONFIG_ETH_ENABLED is not set + +# CONFIG_SPIRAM is not set + +# CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1 is not set + +# CONFIG_UNITY_ENABLE_FLOAT is not set +# CONFIG_UNITY_ENABLE_DOUBLE is not set +# CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER is not set +# CONFIG_USE_WAKENET is not set +# CONFIG_USE_MULTINET is not set +# CONFIG_VFS_SUPPORT_SELECT is not set +# CONFIG_VFS_SUPPRESS_SELECT_DEBUG_OUTPUT is not set +# CONFIG_VFS_SUPPORT_TERMIOS is not set +# CONFIG_TWAI_ERRATA_FIX_BUS_OFF_REC is not set +# CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST is not set +# CONFIG_TWAI_ERRATA_FIX_RX_FRAME_INVALID is not set +# CONFIG_TWAI_ERRATA_FIX_RX_FIFO_CORRUPT is not set + +CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK=y From c3504daa5ceb3280dcbe8ce44af53118654476f1 Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Tue, 18 Nov 2025 16:49:40 +0100 Subject: [PATCH 3/7] Update ESP32U defconfig for FreeRTOS and bootloader --- configs/defconfig.esp32u | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/configs/defconfig.esp32u b/configs/defconfig.esp32u index 9efa57712..03976c0b4 100644 --- a/configs/defconfig.esp32u +++ b/configs/defconfig.esp32u @@ -1,3 +1,7 @@ +CONFIG_FREERTOS_UNICORE=y +# CONFIG_BOOTLOADER_SPI_CUSTOM_WP_PIN is not set +CONFIG_BOOTLOADER_SPI_WP_PIN=7 + # # Bluetooth # From 44056f4a639e0a077879e98779590e4e98f668f0 Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Tue, 18 Nov 2025 16:52:21 +0100 Subject: [PATCH 4/7] Update target matrix in parallel build workflow --- .github/workflows/parallel_build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/parallel_build.yaml b/.github/workflows/parallel_build.yaml index b0f480646..86922aa35 100644 --- a/.github/workflows/parallel_build.yaml +++ b/.github/workflows/parallel_build.yaml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - target: [esp32, esp32s2, esp32s3, esp32c2, esp32c3, esp32c6, esp32h2, esp32p4, esp32p4_es] + target: [esp32, esp32u, esp32s2, esp32s3, esp32c2, esp32c3, esp32c6, esp32h2, esp32p4, esp32p4_es] fail-fast: true steps: - uses: actions/checkout@v4 From f9d4c38aa87d33a73f7f8ba82ab9ddda441ddca5 Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Tue, 18 Nov 2025 18:06:04 +0100 Subject: [PATCH 5/7] Enable Ethernet configuration in defconfig --- configs/defconfig.esp32u | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/configs/defconfig.esp32u b/configs/defconfig.esp32u index 03976c0b4..ec205d208 100644 --- a/configs/defconfig.esp32u +++ b/configs/defconfig.esp32u @@ -25,7 +25,10 @@ CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=y CONFIG_ESP_MAC_IGNORE_MAC_CRC_ERROR=y -# CONFIG_ETH_ENABLED is not set +CONFIG_ETH_ENABLED=y +CONFIG_ETH_USE_ESP32_EMAC=y +CONFIG_ETH_PHY_INTERFACE_RMII=y +CONFIG_ETH_USE_SPI_ETHERNET=y # CONFIG_SPIRAM is not set From 3086cd62af596161d96ea3f1127f79bb9d224337 Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Tue, 18 Nov 2025 18:10:41 +0100 Subject: [PATCH 6/7] Add esp32p4_es to MCU targets list --- .github/workflows/parallel_build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/parallel_build.yaml b/.github/workflows/parallel_build.yaml index 86922aa35..7f7bb1eb5 100644 --- a/.github/workflows/parallel_build.yaml +++ b/.github/workflows/parallel_build.yaml @@ -89,7 +89,7 @@ jobs: echo "Found firmware version: $FIRMWARE_VERSION" # Array of MCU targets that need sdkconfig updates - mcu_targets=("esp32" "esp32s2" "esp32s3" "esp32c2" "esp32c3" "esp32c6" "esp32h2" "esp32p4") + mcu_targets=("esp32" "esp32u" "esp32s2" "esp32s3" "esp32c2" "esp32c3" "esp32c6" "esp32h2" "esp32p4" "esp32p4_es") for mcu in "${mcu_targets[@]}"; do sdkconfig_path="framework-arduinoespressif32/tools/esp32-arduino-libs/$mcu/sdkconfig" From 80122b4dcd217b4b04eeeb94ac4ae3c09b0c18d8 Mon Sep 17 00:00:00 2001 From: Jason2866 <24528715+Jason2866@users.noreply.github.com> Date: Wed, 19 Nov 2025 21:57:51 +0100 Subject: [PATCH 7/7] Enable external memory allocation for NimBLE --- configs/defconfig.esp32 | 1 + 1 file changed, 1 insertion(+) diff --git a/configs/defconfig.esp32 b/configs/defconfig.esp32 index ccd403ef6..e8aaea5ab 100644 --- a/configs/defconfig.esp32 +++ b/configs/defconfig.esp32 @@ -18,6 +18,7 @@ CONFIG_BT_NIMBLE_MAX_CONNECTIONS=2 # CONFIG_BT_BTU_TASK_STACK_SIZE is not set CONFIG_BT_STACK_NO_LOG=y CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=y +CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_EXTERNAL=y # Enable ULP CONFIG_ULP_COPROC_ENABLED=y