XIAO ESP32-C3 vs ESP32-S3: Which Board, and When C6?
Share
Quick answer
Choose the XIAO ESP32-C3 for a compact Wi-Fi or Bluetooth Low Energy (BLE) sensor or controller. Choose the standard ESP32-S3 when your application needs more processing headroom and 8 MB PSRAM. Choose ESP32-C6 when your planned firmware needs Zigbee or Thread, or specifically benefits from 2.4 GHz Wi-Fi 6.
The standard S3 is not the camera-equipped Sense, and a C6 does not become a finished smart-home device merely because its radio supports the right protocol.
The useful differences at a glance
| Board | Processing and memory | Connections and included hardware |
|---|---|---|
| Seeed XIAO ESP32C3 | Single-core 32-bit RISC-V, up to 160 MHz. 400 KB SRAM; 4 MB Flash. |
2.4 GHz Wi-Fi 802.11b/g/n; Bluetooth LE. 11 digital I/O, with shared UART, I²C and SPI functions. External antenna connection; Seeed documents an included antenna. Camera/microphone/microSD expansion: No Sense expansion. |
| Seeed XIAO ESP32S3 | Dual-core 32-bit Xtensa LX7, up to 240 MHz. 8 MB PSRAM; 8 MB Flash. |
2.4 GHz Wi-Fi 802.11b/g/n; Bluetooth LE. 11 digital I/O, with shared UART, I²C and SPI functions. External U.FL antenna connection; Seeed instructs fitting the supplied antenna. Camera/microphone/microSD expansion: No: those features belong to S3 Sense, not this standard listing. |
| Seeed Studio XIAO ESP32C6 | High-performance RISC-V core up to 160 MHz, plus low-power RISC-V core up to 20 MHz. 512 KB SRAM; 4 MB Flash. |
2.4 GHz Wi-Fi 6; Bluetooth LE; IEEE 802.15.4 for Thread/Zigbee development. 11 digital I/O, with shared UART, I²C and SPI functions. Onboard ceramic antenna, plus selectable external antenna connection. Camera/microphone/microSD expansion: No Sense expansion. |
The C6’s low-power core is not a second equivalent application core like the S3’s. Nor does Wi-Fi 6 mean 5 GHz Wi-Fi: all three boards here use 2.4 GHz. Match the feature to the actual requirement before paying for a more elaborate solution.
Choose C3 when the job is connecting a small device
A sensor that takes a reading and sends it over Wi-Fi, or a BLE control interface, is a sensible starting point for the C3. Its value is giving a small application wireless connectivity without automatically moving to the S3’s larger memory provision.

Do not turn that recommendation into a battery-life promise. Your firmware, sensor, reporting interval and radio use determine whether a battery-powered design is sensible. Manufacturer sleep-current figures are not the consumption of a complete working sensor.
For a first wireless check, start with Seeed’s documented scan example below. Get the radio and upload path working before adding sensors, a broker and the rest of your application. Debugging everything at once is a hobby in its own right.
Choose standard S3 for processing and working memory
The S3’s dual-core processor and 8 MB PSRAM make it the stronger candidate when an application needs larger data buffers, display work or a supported embedded machine-learning workload. Flash stores firmware and other persistent data; PSRAM provides additional working memory. The two 8 MB figures are not interchangeable.

Memory headroom is a reason to shortlist the S3, not a benchmark result. Check that your chosen framework, library and configuration can use PSRAM, and that the application fits the complete memory layout.
Standard S3 is not S3 Sense
The standard product linked here does not include the Sense camera, digital microphone or microSD expansion. If the project starts with image capture or recording from the Sense microphone, buy and verify the exact Sense hardware rather than following its tutorial on a bare standard board.
Seeed’s current S3 documentation covers standard, Sense and Plus models on one page. Read the relevant column and pin map, not just the page title. In particular, do not import the Plus model’s memory specification or extra pin count into the standard board.
When C6 earns its place
Choose C6 when the software route you intend to follow uses its IEEE 802.15.4 radio for Zigbee or Thread, or when 2.4 GHz Wi-Fi 6 is a requirement. For an ordinary Wi-Fi sensor, it is not automatically a better choice than C3; for a memory-heavy workload, it does not replace the S3’s 8 MB PSRAM.
Zigbee and Thread are different networking routes, not extra names for Wi-Fi or BLE. Seeed documents an exact-board Zigbee/Home Assistant example below: it uses Arduino firmware and Home Assistant’s Zigbee Home Automation (ZHA) integration with a separate coordinator. It is not an ESPHome-over-Wi-Fi build and is not a Matter-over-Thread demonstration.
Do not buy C6 expecting a ready-paired Home Assistant appliance. Select the protocol, firmware example, network infrastructure and integration together. If your goal is Matter over Thread, verify that separate build and commissioning route before ordering; this comparison does not establish one.
Pin access, antennas and firmware: check before swapping
All three share the familiar 21 × 17.8 mm footprint, but identical size does not make firmware or chip GPIO numbers interchangeable. GPIO means general-purpose input/output. I²C (Inter-Integrated Circuit), SPI (Serial Peripheral Interface) and UART (Universal Asynchronous Receiver/Transmitter) are peripheral communication interfaces. Their functions share the same finite pool of GPIO pins: the table’s interfaces are not extra connectors you can allocate twice.
The C3 has particular boot-related restrictions. Seeed’s pin guide warns that D9 is tied to the BOOT button, D8 must be high when entering download boot, and D6 produces UART output during startup. Those details matter more than a headline GPIO total when attaching a peripheral.
The C6 documentation also lists ADC-capable JTAG pads separately from the ordinary edge rows. Do not assume every analogue channel in a specification table is a spare breadboard pin. Use the exact manufacturer maps: C3 pin multiplexing, standard S3 hardware overview and pin map, and C6 hardware overview and pin map.
Fit the C3/S3 antenna according to the relevant instructions before assessing wireless behaviour. C6 starts with its onboard antenna selected; using its external connection also requires configuring the RF switch, not merely snapping on a cable. For replacement antenna selection, use our existing XIAO antenna comparison rather than choosing by gain alone.
Seeed provides Arduino setup routes for all three. Select the exact board and follow the example’s framework requirements. The Zigbee guide specifies Arduino-ESP32 3.0.6 or later; that is a documented prerequisite, not a claim that every later release has been tested with every example. For ordinary C3 setup, use Seeed’s C3 getting-started guide. A tutorial compiled for one chip is not a firmware image for the others.
Two documented examples worth opening before you buy
These are original creators’ examples, not UMT builds or test results. They illustrate different jobs for these boards; they are not a performance comparison.
C3: Seeed’s Wi-Fi network scanner
Seeed Studio’s C3 Wi-Fi usage guide shows a XIAO ESP32C3 scanning nearby access points and reporting results through the serial monitor. It is a useful first radio check without a sensor or a cloud service. The guide’s last-update credit is Spencer, 26 July 2024.
The documented hardware is the exact C3 board, its external antenna, a USB-C connection and a computer. Software is Arduino IDE with the ESP32 package and WiFi library; exact IDE and package versions for the scan are not recorded. Seeed provides the sketch and upload/monitor procedure, but no version-pinned scan test report. Treat it as a manufacturer example rather than a measured range or reliability test.
UMT lists the exact C3 board above. A suitable USB data cable and computer are still needed; the board listing is not a complete development kit. Follow the original for code and instructions. Its separate hotspot section carries a heat warning, so do not assume a scanning example endorses unattended access-point operation.
C6: Seeed’s Home Assistant-controlled onboard LED
Seeed Studio’s Zigbee/Home Assistant guide, last updated by Citric on 21 January 2025, documents a XIAO ESP32C6 paired through ZHA so Home Assistant can toggle its onboard LED. The parts named are XIAO ESP32C6, Home Assistant Green, Connect ZBT-1 coordinator, a USB extension lead and a USB-C programming connection. This is an indicator-LED demonstration, not a mains-light controller.
The route is Arduino IDE, the XIAO_ESP32C6 board target and Zigbee_On_Off_Light example, adapted for the board’s monochrome LED. The guide specifies Zigbee end-device mode and the “Zigbee 4MB with spiffs” partition scheme. Its companion Arduino Zigbee quick start specifies ESP32 package 3.0.6 or later. Exact versions used for the Home Assistant demonstration, including Home Assistant and coordinator firmware, are not recorded.
Seeed shows discovery/dashboard steps and reports that the LED can be controlled from Home Assistant. That is creator-reported behaviour, not an independent endurance or compatibility test. UMT’s linked listing is for the C6 board, not the whole Home Assistant system. Keep the separately required coordinator, host and cables in your shopping list.
Both examples are linked for their original instructions and code. No project photographs, diagrams or code are reproduced here, and no permission to republish those materials is assumed.
If none of those jobs fits, return to our XIAO family overview before choosing a chip family. Product pages are the place to check current availability and supplied contents; this article makes no stock or delivery promise.
Ready to set up your board?
Use our XIAO ESP32-C3 Arduino setup and pinout or standard XIAO ESP32-S3 setup and pinout for the board-specific installation, pin map and upload recovery steps.
FAQ
Does S3 replace C3?
No. S3 offers more processing and memory headroom; C3 remains a sensible candidate for a smaller Wi-Fi/BLE application. Check the application requirements rather than treating S3 as a mandatory upgrade.
Can C3 or S3 run Zigbee using their built-in radios?
They do not provide the C6’s IEEE 802.15.4 radio. Wi-Fi and BLE support do not supply that missing hardware.
Is C6 a ready-made Home Assistant device?
No. The example above requires flashed firmware, a Zigbee coordinator, ZHA setup and pairing. A radio specification is not a completed installation.