diff --git a/.devcontainer/All/Dockerfile.All b/.devcontainer/All/Dockerfile.All index c3b191c340..7cc4a3b273 100644 --- a/.devcontainer/All/Dockerfile.All +++ b/.devcontainer/All/Dockerfile.All @@ -1 +1 @@ -FROM ghcr.io/nanoframework/dev-container-all:v2.69 +FROM ghcr.io/nanoframework/dev-container-all:v2.70 diff --git a/.devcontainer/All/Dockerfile.All.SRC b/.devcontainer/All/Dockerfile.All.SRC index 9845e400e7..f98c5235cb 100644 --- a/.devcontainer/All/Dockerfile.All.SRC +++ b/.devcontainer/All/Dockerfile.All.SRC @@ -2,7 +2,7 @@ # IDF MIGRATION CHECKLIST # When upgrading ESP-IDF to a new version, review and update the following: # -# 1. ESP-IDF version: search for the git clone --branch tag below (currently v5.5.4) +# 1. ESP-IDF version: search for the git clone --branch tag below (currently v5.5.5) # 2. ESP_PATCH_VER: the GCC toolchain patch version installed by IDF. # After running install.sh in the new IDF, check the toolchain version at: # ~/.espressif/tools/xtensa-esp-elf/ and ~/.espressif/tools/riscv32-esp-elf/ @@ -124,7 +124,7 @@ RUN git clone --branch STABLE-2_1_3_RELEASE https://github.com/lwip-tcpip/lwip.g # Clone ESP-IDF # >>> IDF MIGRATION: update the branch tag to the new IDF version <<< -RUN git clone --branch v5.5.4 https://github.com/espressif/esp-idf --depth 1 --recursive ./sources/esp-idf +RUN git clone --branch v5.5.5 https://github.com/espressif/esp-idf --depth 1 --recursive ./sources/esp-idf # Clone what is needed for TI RUN git clone --branch 4.10.00.07 https://github.com/nanoframework/SimpleLink_CC32xx_SDK.git --depth 1 ./sources/SimpleLinkCC32 \ diff --git a/.devcontainer/ESP32/Dockerfile.ESP32 b/.devcontainer/ESP32/Dockerfile.ESP32 index 38a908e459..c199f2ce98 100644 --- a/.devcontainer/ESP32/Dockerfile.ESP32 +++ b/.devcontainer/ESP32/Dockerfile.ESP32 @@ -1 +1 @@ -FROM ghcr.io/nanoframework/dev-container-esp32:v2.42 +FROM ghcr.io/nanoframework/dev-container-esp32:v2.43 diff --git a/.devcontainer/ESP32/Dockerfile.ESP32.SRC b/.devcontainer/ESP32/Dockerfile.ESP32.SRC index da74114c68..24b614668b 100644 --- a/.devcontainer/ESP32/Dockerfile.ESP32.SRC +++ b/.devcontainer/ESP32/Dockerfile.ESP32.SRC @@ -2,7 +2,7 @@ # IDF MIGRATION CHECKLIST # When upgrading ESP-IDF to a new version, review and update the following: # -# 1. ESP-IDF version: search for the git clone --branch tag below (currently v5.5.4) +# 1. ESP-IDF version: search for the git clone --branch tag below (currently v5.5.5) # 2. ESP_PATCH_VER: the GCC toolchain patch version installed by IDF. # After running install.sh in the new IDF, check the toolchain version at: # ~/.espressif/tools/xtensa-esp-elf/ and ~/.espressif/tools/riscv32-esp-elf/ @@ -71,7 +71,7 @@ RUN git clone --branch R0.16 https://github.com/abbrev/fatfs.git --depth 1 ./sou # Clone ESP-IDF # >>> IDF MIGRATION: update the branch tag to the new IDF version <<< -RUN git clone --branch v5.5.4 https://github.com/espressif/esp-idf --depth 1 --recursive ./sources/esp-idf +RUN git clone --branch v5.5.5 https://github.com/espressif/esp-idf --depth 1 --recursive ./sources/esp-idf # Installing python dependencies for the container RUN pip3 install --no-cache-dir pyserial "kconfiglib>=14.1.0" diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 4e43dc6c5b..77da6d3091 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -56,7 +56,7 @@ Kconfig* # Kconfig configuration system (feature flags, APIs, RTOS, - **CMake 3.31+** and **Ninja** build system. - Cross-compilation toolchains (ARM GCC, Xtensa GCC, RISC-V GCC) depending on target. -- Platform SDKs (ESP-IDF v5.5.4, ChibiOS, ThreadX, etc.). +- Platform SDKs (ESP-IDF v5.5.5, ChibiOS, ThreadX, etc.). - Python 3 with `kconfiglib>=14.1.0` (from `requirements.txt`). - **Dev containers** are the recommended way to build. Pre-built images: - `ghcr.io/nanoframework/dev-container-all` (all platforms) @@ -205,4 +205,4 @@ Follow the PR template at `.github/PULL_REQUEST_TEMPLATE.md`: 4. **Kconfig Python dependency**: The Kconfig system requires `kconfiglib` (`pip install kconfiglib`). This is needed for `cmake --preset` to work. 5. **Submodules**: The repo has a submodule for community targets (`targets-community`). Clone with `--recurse-submodules` or run `git submodule update --init`. 6. **File encoding**: Most files use UTF-8 with BOM and CRLF line endings (see `.editorconfig`). Kconfig files must NOT have BOM. -7. **ESP32 targets**: ESP-IDF v5.5.4 is the pinned SDK version. The ESP32 build integrates with the IDF build system (idf.py/CMake). +7. **ESP32 targets**: ESP-IDF v5.5.5 is the pinned SDK version. The ESP32 build integrates with the IDF build system (idf.py/CMake). diff --git a/CMake/Modules/FindnanoFramework.Device.Bluetooth.cmake b/CMake/Modules/FindnanoFramework.Device.Bluetooth.cmake index 121695acda..86969b45c4 100644 --- a/CMake/Modules/FindnanoFramework.Device.Bluetooth.cmake +++ b/CMake/Modules/FindnanoFramework.Device.Bluetooth.cmake @@ -25,6 +25,7 @@ list(APPEND nanoFramework.Device.Bluetooth_INCLUDE_DIRS "${NIMBLE_COMPONENT_PATH list(APPEND nanoFramework.Device.Bluetooth_INCLUDE_DIRS "${NIMBLE_COMPONENT_PATH}/nimble/nimble/host/services/gap/include") list(APPEND nanoFramework.Device.Bluetooth_INCLUDE_DIRS "${NIMBLE_COMPONENT_PATH}/nimble/nimble/host/services/gatt/include") list(APPEND nanoFramework.Device.Bluetooth_INCLUDE_DIRS "${NIMBLE_COMPONENT_PATH}/nimble/nimble/transport/include") +list(APPEND nanoFramework.Device.Bluetooth_INCLUDE_DIRS "${NIMBLE_COMPONENT_PATH}/../../porting/include") # source files set(nanoFramework.Device.Bluetooth_SRCS diff --git a/CMake/binutils.ESP32.cmake b/CMake/binutils.ESP32.cmake index b5c125a7ce..7ed151eace 100644 --- a/CMake/binutils.ESP32.cmake +++ b/CMake/binutils.ESP32.cmake @@ -563,9 +563,11 @@ macro(nf_add_idf_as_library) nf_install_idf_component_from_registry(littlefs 97bf51ce-1daa-4369-81ec-eacbd8102815) if(${TARGET_SERIES_SHORT} STREQUAL "esp32p4") - nf_install_idf_component_from_registry(esp_wifi_remote c90c182f-b7fc-4a59-a445-96f712e36bb2) - nf_install_idf_component_from_registry(esp_hosted 2c2bb417-ac4a-415a-8bd8-d2437701bb5e) - endif() + # v1.6.3 + nf_install_idf_component_from_registry(esp_wifi_remote 3c98b2c9-11fb-4477-b80a-1aaa3536b46d) + # v2.12.11 + nf_install_idf_component_from_registry(esp_hosted 310ee40e-29c8-42de-9454-a52718131a30) + endif() # Set PYTHON to the ESP-IDF virtual environment # CMake falls back to the system Python which lacks the required ESP-IDF packages. diff --git a/CMake/riscv-esp32p4.json b/CMake/riscv-esp32p4.json index 47b662c6bc..076621d252 100644 --- a/CMake/riscv-esp32p4.json +++ b/CMake/riscv-esp32p4.json @@ -17,7 +17,7 @@ "NF_INTEROP_ASSEMBLIES": null }, "environment": { - "ESP_IDF_VERSION": "5.4" + "ESP_IDF_VERSION": "5.5.5" } } ] diff --git a/azure-pipelines-nightly.yml b/azure-pipelines-nightly.yml index 2ee4389006..610349cc1f 100644 --- a/azure-pipelines-nightly.yml +++ b/azure-pipelines-nightly.yml @@ -18,7 +18,7 @@ resources: type: github name: espressif/esp-idf endpoint: nanoframework - ref: refs/tags/v5.5.4 + ref: refs/tags/v5.5.5 # scheduled build # the schedule is defined at the AZDO web interface because of inconsistencies with time zones @@ -603,7 +603,7 @@ jobs: IDF_PATH: "$(Agent.BuildDirectory)/s/esp-idf" PIP_CACHE_DIR: $(Pipeline.Workspace)/.pip TargetPlatform: "esp32" - IDF_TAG: "v5.5.4" + IDF_TAG: "v5.5.5" steps: - checkout: self diff --git a/azure-pipelines.yml b/azure-pipelines.yml index ae1ab4fbc7..e7dc8457f1 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -46,7 +46,7 @@ resources: type: github name: espressif/esp-idf endpoint: nanoframework - ref: refs/tags/v5.5.4 + ref: refs/tags/v5.5.5 - repository: mscorlib type: github name: nanoframework/CoreLibrary @@ -431,7 +431,7 @@ jobs: variables: DOTNET_NOLOGO: true # creates a counter and assigns it to the revision variable - REVISION: $[counter('STM32_1_17_0_versioncounter', 0)] + REVISION: $[counter('STM32_1_18_0_versioncounter', 0)] HelperPackageVersion: $[counter('HelperPackageVersioncounter', 0)] TargetPlatform: "stm32" @@ -505,7 +505,7 @@ jobs: variables: DOTNET_NOLOGO: true # creates a counter and assigns it to the revision variable - REVISION: $[counter('RP_1_17_0_versioncounter', 0)] + REVISION: $[counter('RP_1_18_0_versioncounter', 0)] HelperPackageVersion: $[counter('HelperPackageVersioncounter', 0)] TargetPlatform: "rp" @@ -646,11 +646,11 @@ jobs: variables: DOTNET_NOLOGO: true # creates a counter and assigns it to the revision variable - REVISION: $[counter('ESP32_1_17_0_versioncounter', 0)] + REVISION: $[counter('ESP32_1_18_0_versioncounter', 0)] IDF_PATH: "$(Agent.BuildDirectory)/s/esp-idf" PIP_CACHE_DIR: $(Pipeline.Workspace)/.pip TargetPlatform: "esp32" - IDF_TAG: "v5.5.4" + IDF_TAG: "v5.5.5" steps: - checkout: self @@ -731,7 +731,7 @@ jobs: variables: DOTNET_NOLOGO: true # creates a counter and assigns it to the revision variable - REVISION: $[counter('NXP_1_17_0_versioncounter', 0)] + REVISION: $[counter('NXP_1_18_0_versioncounter', 0)] GIT_LFS_SKIP_SMUDGE: 1 TargetPlatform: "freertos" @@ -812,7 +812,7 @@ jobs: variables: DOTNET_NOLOGO: true # creates a counter and assigns it to the revision variable - REVISION: $[counter('TI_1_17_0_versioncounter', 0)] + REVISION: $[counter('TI_1_18_0_versioncounter', 0)] HelperPackageVersion: $[counter('HelperPackageVersioncounter', 0)] TargetPlatform: "ti_simplelink" @@ -886,7 +886,7 @@ jobs: variables: # creates a counter and assigns it to the revision variable - REVISION: $[counter('THREADX_1_17_0_versioncounter', 0)] + REVISION: $[counter('THREADX_1_18_0_versioncounter', 0)] HelperPackageVersion: $[counter('HelperPackageVersioncounter', 0)] TargetPlatform: "efm32" @@ -940,7 +940,7 @@ jobs: value: true # creates a counter and assigns it to the revision variable - name: REVISION - value: $[counter('WIN32_1_17_0_versioncounter', 0)] + value: $[counter('WIN32_1_18_0_versioncounter', 0)] - name: LITTLEFS_PATH value: "D:/a/1/s/littlefs" @@ -1180,7 +1180,7 @@ jobs: variables: - group: sign-client-credentials - name: REVISION - value: $[counter('POSIX_1_17_0_versioncounter', 0)] + value: $[counter('POSIX_1_18_0_versioncounter', 0)] steps: - checkout: self diff --git a/targets/ESP32/CMakeLists.txt b/targets/ESP32/CMakeLists.txt index 9954827ac9..ab08f44a2c 100644 --- a/targets/ESP32/CMakeLists.txt +++ b/targets/ESP32/CMakeLists.txt @@ -47,7 +47,7 @@ endif() # 3. cache tag in build and download AZDO yaml templates # ################################################################################# ################################################################################# -set(ESP32_IDF_TAG "5.5.4" CACHE INTERNAL "ESP32 IDF tag") +set(ESP32_IDF_TAG "5.5.5" CACHE INTERNAL "ESP32 IDF tag" FORCE) ################################################################################# ################################################################################# diff --git a/version.json b/version.json index 2871c4fdb5..2a58f64be1 100644 --- a/version.json +++ b/version.json @@ -1,6 +1,6 @@ { "$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json", - "version": "1.17.0", + "version": "1.18.0", "assemblyVersion": { "precision": "revision" },