platform-espressif32 icon indicating copy to clipboard operation
platform-espressif32 copied to clipboard

Feature Request: Add support for ESP32-P4 series to espressif32 platform

Open LShang001 opened this issue 6 months ago • 1 comments

Feature Description

The ESP32-P4 is Espressif's latest high-performance RISC-V SoC, featuring advanced processing power, AI acceleration, and a rich set of peripherals (e.g., MIPI CSI/DSI, USB 3.0 OTG, Ethernet). As this chip becomes available and gains traction among developers for next-generation applications, integrating native support into the PlatformIO ecosystem would provide significant value.

This feature request seeks to add full support for the ESP32-P4 series SoCs and related development boards (e.g., the official ESP32-P4-DevKitC-1.0) to the espressif32 platform in PlatformIO.

Motivation

Currently, developers targeting the ESP32-P4 must use the native ESP-IDF build system outside of PlatformIO, which lacks the streamlined experience PlatformIO offers. Adding ESP32-P4 support would enable developers to:

  1. Leverage the PlatformIO workflow: Benefit from PlatformIO's intuitive project management, library management, build system, and IDE integration (e.g., VSCode).
  2. Simplify development: Eliminate the need to manually configure toolchains and build environments, saving time and effort.
  3. Utilize PlatformIO features: Take advantage of tools like Unit Testing, Static Code Analysis, Firmware Inspection, and simplified debugging setups.
  4. Maintain consistency: Ensure a uniform development experience across Espressif's chip lineup (ESP32, ESP32-S2/S3/C3, and now P4).

Proposed Solution Components

To implement ESP32-P4 support, the following components are suggested:

  1. Toolchain Integration: Incorporate the RISC-V GCC toolchain required for ESP32-P4 development.
  2. Framework Support:
    • ESP-IDF: Support ESP-IDF versions that include ESP32-P4 compatibility (e.g., ESP-IDF v5.3 or later).
    • Arduino Core: Integrate the Arduino core for ESP32-P4 once it is released and stable.
  3. Board Definitions: Add definitions for official boards like ESP32-P4-DevKitC-1.0 and potentially popular third-party boards, including memory layouts, pin mappings, and default upload/monitor settings.
  4. Debugging Support: Enable compatibility with debugging probes (e.g., JTAG via ESP-Prog or J-Link) using OpenOCD or other debug servers.
  5. Documentation: Update PlatformIO documentation with ESP32-P4-specific guidance, including examples and configuration details.

Relevant Information

Current Status/Workaround

At present, the ESP32-P4 is not supported within the espressif32 platform in PlatformIO. Developers must resort to using the ESP-IDF build system directly as a workaround.

Conclusion

Incorporating ESP32-P4 support into PlatformIO would be a impactful enhancement, aligning the platform with Espressif's latest hardware innovations. This addition would empower developers to create cutting-edge embedded applications within their preferred development environment.

Thank you for considering this feature request!

LShang001 avatar Apr 15 '25 17:04 LShang001