Skip to content

chore: Update components to support ESP-IDF v6.0#611

Open
finger563 wants to merge 3 commits intomainfrom
feat/esp-idf-6-update
Open

chore: Update components to support ESP-IDF v6.0#611
finger563 wants to merge 3 commits intomainfrom
feat/esp-idf-6-update

Conversation

@finger563
Copy link
Copy Markdown
Contributor

@finger563 finger563 commented Apr 8, 2026

Description

Update code (backwards compatible to release/v1) to compile in ESP-IDF v6.0.

Motivation and Context

Closese #610

Note: this doesn't make the upgrades to I2C (or other subsystems) necessary to remove the deprecation / EOL warnings. That will likely be breaking changes and will be targeted towards espp v2.x release in the very near future.

How has this been tested?

  • Build all examples using esp-idf v6.0
  • Build all examples using esp-idf v5.5 (CI)

Screenshots (if appropriate, e.g. schematic, board, console logs, lab pictures):

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation Update
  • Hardware (schematic, board, system design) change
  • Software change

Checklist:

  • My change requires a change to the documentation.
  • I have added / updated the documentation related to this change via either README or WIKI

Software

  • I have added tests to cover my changes.
  • I have updated the .github/workflows/build.yml file to add my new test to the automated cloud build github action.
  • All new and existing tests passed.
  • My code follows the code style of this project.

Copilot AI review requested due to automatic review settings April 8, 2026 03:00
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 8, 2026

✅Static analysis result - no issues found! ✅

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates several ESPP components and examples to build against ESP-IDF v6.0 by adjusting component dependencies and adding small compatibility shims for renamed/changed ESP-IDF APIs.

Changes:

  • Update multiple component REQUIRES lists to include the new ESP-IDF v6 split driver components (e.g., esp_driver_gpio, esp_driver_spi, esp_driver_rmt, etc.).
  • Add ESP-IDF version-conditional code for API/constant changes (e.g., heap capability rename, LCD DPI config field changes, CLI console component selection).
  • Minor code tweaks for toolchain/libc/API differences (e.g., modff, SPI transaction init, ADC attenuation constant).

Reviewed changes

Copilot reviewed 25 out of 25 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
components/ws-s3-touch/example/main/ws_s3_touch_example.cpp Expands std::tm initialization used for RTC set-time in the example.
components/thermistor/example/main/thermistor_example.cpp Updates ADC attenuation constant in the example.
components/t-deck/CMakeLists.txt Adds ESP-IDF v6 driver component dependencies (I2S/SPI).
components/state_machine/example/main/Complex_generated_states.cpp Removes dead/unreachable statements in generated switch blocks.
components/socket/src/socket.cpp Uses modff for float fractional splitting.
components/rmt/CMakeLists.txt Adds esp_driver_rmt dependency.
components/remote_debug/CMakeLists.txt Adds esp_driver_gpio dependency.
components/neopixel/CMakeLists.txt Adds esp_driver_gpio dependency.
components/mt6701/example/CMakeLists.txt Adds esp_driver_spi to example component list.
components/motorgo-mini/src/motorgo-mini.cpp Changes SPI transaction initialization to zero-init + field assignment.
components/motorgo-mini/CMakeLists.txt Adds esp_driver_spi dependency.
components/monitor/src/heap_monitor.cpp Adds IDF-version mapping for MALLOC_CAP_TCMMALLOC_CAP_SPM in v6.
components/m5stack-tab5/src/video.cpp Adds IDF-version conditionals for LCD DPI config and adjusts DSI bus config init.
components/m5stack-tab5/CMakeLists.txt Adds ESP-IDF v6 driver component dependencies (I2S/SDMMC/SPI).
components/led/CMakeLists.txt Adds esp_driver_ledc dependency.
components/interrupt/CMakeLists.txt Adds esp_driver_gpio dependency.
components/esp32-timer-cam/CMakeLists.txt Adds ESP-IDF v6 driver component dependencies (I2S/SPI).
components/esp-box/CMakeLists.txt Adds esp_driver_i2s dependency.
components/encoder/CMakeLists.txt Adds esp_driver_pcnt dependency.
components/cli/include/cli.hpp Adds IDF-version conditional include for esp_vfs_usb_serial_jtag.h.
components/cli/CMakeLists.txt Selects console-related component dependencies based on IDF major version.
components/bldc_driver/include/bldc_driver.hpp Adds IDF/soc capability guards for MCPWM-related fields that differ across versions.
components/bldc_driver/CMakeLists.txt Adds esp_driver_gpio and esp_driver_mcpwm dependencies.
components/adc/include/adc_types.hpp Updates documentation comment for attenuation example value.

@finger563 finger563 self-assigned this Apr 8, 2026
@finger563 finger563 linked an issue Apr 8, 2026 that may be closed by this pull request
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Doesn't compile in esp-idf 6.0

2 participants