Every embedded systems and IoT developer has crossed paths with Espressif Systems’ legendary ESP32 family. Since the debut of the original dual-core Xtensa LX6 chip in 2016, the ecosystem has undergone a massive evolution. In 2026, Espressif’s portfolio features 14 distinct ESP32 chips, with 11 in active mass production: the classic ESP32, S2, S3, C2, C3, C5, C6, C61, H2, P4, and the high-speed ESP32-S31.
While this diversity provides exceptional architectural freedom, it also complicates the decision: “Which ESP32 should I choose for my project?” While camera vision and edge AI point directly toward the ESP32-S3 or ESP32-P4, smart home devices utilizing Matter over Thread or Zigbee 3.0 are best served by the ESP32-C6 or ESP32-H2. If you are preparing your development environment, start with our ESP32 Setup Guide, then use the engineering comparison tables below to match the ideal SoC to your hardware requirements.
Core Architecture: Xtensa vs. Open-Source RISC-V
Espressif’s major strategic shift over recent years has been migrating from licensed Xtensa cores (LX6/LX7) to open-source RISC-V architectures. The C-series (C2, C3, C5, C6, C61), H-series (H2, H4), multimedia P4, and high-performance S31 are all built on 32-bit RISC-V cores. Additionally, modern variants incorporate independent Low-Power (LP) RISC-V co-processors to maintain microamp-level sleep currents in battery-operated nodes.
| SoC Model | CPU Architecture | Max Clock | LP Co-processor | SRAM | Flash Memory | PSRAM Support |
|---|---|---|---|---|---|---|
| ESP32 (Classic) | 2× Xtensa LX6 | 240 MHz | ULP FSM | 520 KB | 4 MB (Up to 16 MB ext) | 2 MB in-package (8 MB ext) |
| ESP32-S2 | 1× Xtensa LX7 | 240 MHz | ULP FSM + RISC-V | 320 KB | Typically 4 MB | Up to 2 MB in-package |
| ESP32-S3 | 2× Xtensa LX7 | 240 MHz | ULP RISC-V + FSM | 512 KB | 4/8 MB (Octal support) | 2/8/16 MB in-package (Octal) |
| ESP32-S31 (New) | 2× RISC-V (HP) | 320 MHz | LP RISC-V | 512 KB | Module dependent | Up to 16 MB supported |
| ESP32-C2 | 1× RISC-V | 120 MHz | None | 272 KB | 1–4 MB in-package | None |
| ESP32-C3 | 1× RISC-V | 160 MHz | None | 400 KB | 4/8 MB (16 MB ext) | None |
| ESP32-C5 | 1× RISC-V + LP | 240 MHz | LP RISC-V (40 MHz) | 384 KB | In-package / External | In-package PSRAM options |
| ESP32-C6 | 1× RISC-V + LP | 160 MHz | LP RISC-V (20 MHz) | 512 KB | 4/8 MB (16 MB ext) | None |
| ESP32-C61 | 1× RISC-V | 160 MHz | None | 320 KB | In-package / External | External PSRAM support |
| ESP32-H2 | 1× RISC-V | 96 MHz | None | 320 KB | In-package | None |
| ESP32-P4 | 2× RISC-V + LP | 400 MHz | LP RISC-V; SIMD/DSP | 768 KB | External (No wireless) | 16/32 MB in-package |
Wireless Protocols: Wi-Fi 6, BLE, Zigbee, Thread, and Matter
Wireless protocol requirements drive most chip selection decisions. Early models support 2.4 GHz Wi-Fi 4 (802.11b/g/n), while newer C5, C6, C61, and S31 chips support Wi-Fi 6 (802.11ax) with Target Wake Time (TWT) for dense IoT networks. The ESP32-C5 is unique in delivering dual-band 2.4 GHz and 5 GHz Wi-Fi 6.
For home automation, chips featuring IEEE 802.15.4 radios (ESP32-C6, C5, H2, S31) can communicate natively over Zigbee 3.0, Thread, and Matter-over-Thread as end devices or Border Routers. Learn how these mesh protocols integrate into home servers in our Home Assistant Architecture Guide.
Framework Compatibility: ESP-IDF, Arduino, and ESPHome
While Espressif’s official ESP-IDF framework supports every silicon variant on launch day, community frameworks vary in maturity:
- Arduino Core: The classic ESP32, S2, S3, C3, C6, H2, and P4 are supported in Arduino IDE 2.x. ESP32-C2 and C61 require compilation as ESP-IDF components.
- ESPHome Rule: In ESPHome,
framework: type: arduinoonly functions on classic ESP32, S2, S3, and C3. If you configure an ESP32-C6, H2, or C5, you must declareframework: type: esp-idfin your YAML.
Application-Driven Decision Matrix
| Project Requirement / Use Case | Recommended SoC | Engineering Rationale |
|---|---|---|
| Balanced General-Purpose IoT | ESP32-S3 | Dual-core 240 MHz, 45 GPIOs, 16 MB Octal PSRAM, native USB OTG, most mature libraries. |
| Lowest-Cost Wi-Fi + BLE Sensor Node | ESP32-C3 | Ultra-compact SuperMini modules, direct USB-C, 5 µA deep sleep, full Arduino/ESPHome support. |
| Wi-Fi 6 + Matter + Zigbee / Thread Node | ESP32-C6 | Single-chip integration of Wi-Fi 6 (TWT), BLE 5.3, and IEEE 802.15.4 mesh radios. |
| Camera, Edge AI, or Voice Assistant | ESP32-S3 | High-speed parallel camera bus, Xtensa SIMD vector instructions, wide Octal PSRAM. |
| High-Resolution Display & Multimedia (HMI) | ESP32-P4 + C6 | P4 provides 400 MHz dual-core, MIPI-DSI/CSI, and hardware H.264; C6 supplies wireless via SDIO. |
| Battery-Powered Zigbee/Thread Only (No Wi-Fi) | ESP32-H2 | Dedicated BLE + 802.15.4 radio for low-cost, ultra-low-power coin-cell smart home sensors. |
| 5 GHz Wi-Fi 6 IoT Device | ESP32-C5 | The only mainstream Espressif microcontroller supporting dual-band 2.4 GHz and 5 GHz Wi-Fi 6. |
| Gigabit Ethernet + Wi-Fi 6 + 320 MHz RISC-V | ESP32-S31 | Enterprise-grade SoC with integrated Gigabit Ethernet MAC and high-speed USB (60 GPIOs). |











