SuperAPI AI Directory

esp32-variants

Coding & development

View repository

Updated 10-15 21:48

About this skill

ESP32 Family Selection (esp32-variants)

This Skill only performs chip capability comparison and selection decisions.High-frequency error points (clear baseline): P4 has no on-chip RF, H2 has no Wi-Fi, S2 has no Bluetooth. Each chip's "minimum IDF version" is UNVERIFIED—this Skill refuses to hardcode it, and only provides the official verification method.

Determine Task Type

  1. Selection from scratch — Requirements (wireless/compute power/core count/cost) → chip → follow the Workflow.
  2. Chip replacement evaluation — Migrating an existing project to another ESP32 chip → first rule out hard blockers (RF/core count) using the matrix, then hand over to esp32-idf to evaluate project migration.
  3. Identify the chip in hand — The user describes the board/module, help confirm the target → cross-check with the physical silkscreen, do not guess based on the description.
  4. Chip already decided → hand over directly to esp32-idf(project) or the corresponding specialized Skill.

Preflight (verify at runtime first)

idf.py --version                              # 本机 IDF 版本
grep -m1 "CONFIG_IDF_TARGET" sdkconfig 2>/dev/null   # 已有工程的 target
  • Clarify the three key requirements:What wireless capability is needed (Wi-Fi/BLE/802.15.4/none), compute power and core count, cost and package constraints。
  • Whether the candidate chip can be supported by the local/target IDF: confirm using the official verification method in selection-tree ,do not rely on memory。

Offline Baseline

  • Chip capability facts are based on the dated baseline (official product pages and each chip's get-started page); walk through 2026-09-02, do not auto-update.
  • New chips (such as ESP32-C5, ESP32-S31) are mentioned in the v6.1 release notes (medium confidence), capability details are UNVERIFIED—only mention their existence, do not describe details, defer to the official selection page.

Contracts

  • Requirements must be confirmed with the user, do not decide wireless capability on the user's behalf based on "common scenarios" (for example, defaulting to BLE).
  • RF capability is a hard boundary: what the matrix says it lacks (P4 RF, H2 Wi-Fi, S2 Bluetooth) is simply lacking; "external/companion chip" solutions must be explicitly stated (P4 uses C/S series as a companion chip via ESP-Hosted/ESP-AT).
  • Before the selection conclusion is finalized, the chip's package/peripherals/supply must be confirmed by the user according to the official selection page and module datasheets—this Skill does not lock in the model on the user's behalf.

Capability Matrix (baseline high confidence, see chip-matrix for details)

Chip Architecture Wireless
ESP32 Dual-core Xtensa LX6 240 MHz Wi-Fi 2.4G + Bluetooth(Classic+BLE)
ESP32-S2 Single-core Xtensa LX7 240 MHz Wi-Fi only,no Bluetooth
ESP32-S3 Dual-core Xtensa LX7 240 MHz Wi-Fi 2.4G + BLE only
ESP32-C3 Single-core RISC-V 160 MHz Wi-Fi 2.4G + BLE only
ESP32-C6 Single-core RISC-V 160 MHz (+LP core) Wi-Fi 6 (802.11ax) + BLE 5 + 802.15.4(Thread/Zigbee)
ESP32-H2 Single-core RISC-V 96 MHz No Wi-Fi; BLE 5 + 802.15.4 (Thread 1.3 / Zigbee certified)
ESP32-P4 Dual-core RISC-V 400 MHz (+LP core) No on-chip RF; via ESP-Hosted/ESP-AT with a companion chip

Capability Boundaries + Hand-off

User Intent Skill
Create a project/migrate the build after selecting the chip esp32-idf
Low-power battery life design (after selecting for battery devices) esp32-lowpower
Thread/Zigbee protocol stack implementation details Official ESP-IDF documentation (explain when beyond the scope of this package)
Secure boot/provisioning/peripherals/concurrency esp32-secureboot / esp32-wifi-provision / esp32-peripherals / esp32-freertos
Rust no_std(esp-hal) Out of package rust-skills/rust-embedded(refuse and hand over)

Workflow: Four steps for selection

  1. List requirements: wireless (including protocol version), compute power, core count, power consumption, cost; confirm each item.
  2. Hard filtering: eliminate RF dealbreakers per the matrix (e.g., need Thread/Zigbee → only C6/H2 remain; need Wi-Fi + Bluetooth Classic → only classic ESP32).
  3. Decision tree convergence(see selection-tree.md): single-core low cost → C3; AI vector instructions → S3; Thread/Zigbee → C6/H2; dual-core high performance → S3/P4.
  4. Runtime verification: perform official support verification for candidate chips (the method in selection-tree.md), confirm the local IDF version is usable, then hand over to esp32-idf to create the project.

Validation Gates

  • The selection conclusion must be traceable to a specific row of the matrix + a specific path of the decision tree, with all three requirement elements matched item by item.
  • "This chip requires a minimum of IDF vX.Y"-type conclusionsmust not appear—only the verification method and verification result may be output.
  • For claims involving "can actually run": when there is no hardware evidence, mark Pending HIL。

Pitfalls

  1. Do nothard-code the minimum IDF version number for each chip—the baseline is explicitly UNVERIFIED, there is no official merged comparison table, only provide the verification method.
  2. Do notsay "P4 can connect to Wi-Fi by itself"—P4 has no on-chip RF and must be paired with a companion chip (ESP-Hosted/ESP-AT).
  3. Do nottreat H2 as a Wi-Fi chip or S2 as a Bluetooth chip—baseline high-frequency error points.
  4. Do notgroup by "similar-sounding names" (C3 and C6 differ greatly in capabilities: 802.11ax and 802.15.4 are only available on C6).
  5. Do notuse medium-confidence entries (C5/S31) to give conclusions—only indicate "newer chips exist; details are subject to official information".

Official Sources

Privacy

This Skill only performs local requirements analysis and static comparison; it does not collect or send user data externally; accessing official links complies with the user's environment network policy.