ESP32-S2-SOLO-2

SOLO module · based on ESP32-S2 · Active

  • Xtensa LX7
  • 1× @ 240 MHz
  • Wi-Fi 4
  • 4 / 8 / 16 MB flash
  • 2 MB PSRAM
  • 36 GPIO
  • PCB antenna
Check price on AliExpress →

As an affiliate we may earn from qualifying purchases. Prices and availability are set by AliExpress.

Every figure here is checked against Espressif’s official datasheets. We’ve taken every care to keep it accurate — but datasheets are dense and mistakes happen, so if something looks off, please report it.

The ESP32-S2-SOLO-2 is a cost-optimised single-core Espressif module built on the ESP32-S2 single-core Xtensa LX7 SoC clocked up to 240 MHz. It pairs 2.4 GHz Wi-Fi 4 with up to 16 MB flash and up to 2 MB PSRAM, routes the radio to a PCB antenna, and breaks out 36 GPIO; the module measures 18 × 25.5 × 3.1 mm.

The extra PSRAM gives headroom for framebuffers, audio buffers and richer touch GUIs. Secure boot and flash encryption are available for production security. Espressif lists target uses including Smart Home, Smart Agriculture, Industrial Automation, POS Machines and Health Care.

Colour-coded by function · safe · ! use with care · reserved (flash/USB). Generated from the datasheet — not an official Espressif figure.
ESP32-S2-SOLO-2 pinout diagram — pins colour-coded by function with safe and use-with-care badges
#NameTypeFunctions
1GNDP Ground
23V3P Power supply
3ENI Chip enable
4IO4I/O/T RTC_GPIO4, GPIO4, TOUCH4, ADC1_CH3
5IO5I/O/T RTC_GPIO5, GPIO5, TOUCH5, ADC1_CH4
6IO6I/O/T RTC_GPIO6, GPIO6, TOUCH6, ADC1_CH5
7IO7I/O/T RTC_GPIO7, GPIO7, TOUCH7, ADC1_CH6
8IO15I/O/T RTC_GPIO15, GPIO15, U0RTS, ADC2_CH4, XTAL_32K_P
9IO16I/O/T RTC_GPIO16, GPIO16, U0CTS, ADC2_CH5, XTAL_32K_N
10IO17I/O/T RTC_GPIO17, GPIO17, U1TXD, ADC2_CH6, DAC_1
11IO18I/O/T RTC_GPIO18, GPIO18, U1RXD, ADC2_CH7, DAC_2, CLK_OUT3
12IO8I/O/T RTC_GPIO8, GPIO8, TOUCH8, ADC1_CH7
13IO19I/O/T RTC_GPIO19, GPIO19, U1RTS, ADC2_CH8, CLK_OUT2, USB_D-
14IO20I/O/T RTC_GPIO20, GPIO20, U1CTS, ADC2_CH9, CLK_OUT1, USB_D+
15IO3I/O/T RTC_GPIO3, GPIO3, TOUCH3, ADC1_CH2
16IO46I GPIO46
17IO9I/O/T RTC_GPIO9, GPIO9, TOUCH9, ADC1_CH8, FSPIHD
18IO10I/O/T RTC_GPIO10, GPIO10, TOUCH10, ADC1_CH9, FSPICS0, FSPIIO4
19IO11I/O/T RTC_GPIO11, GPIO11, TOUCH11, ADC2_CH0, FSPID, FSPIIO5
20IO12I/O/T RTC_GPIO12, GPIO12, TOUCH12, ADC2_CH1, FSPICLK, FSPIIO6
21IO13I/O/T RTC_GPIO13, GPIO13, TOUCH13, ADC2_CH2, FSPIQ, FSPIIO7
22IO14I/O/T RTC_GPIO14, GPIO14, TOUCH14, ADC2_CH3, FSPIWP, FSPIDQS
23IO21I/O/T RTC_GPIO21, GPIO21
24IO33I/O/T SPIIO4, GPIO33, FSPIHD
25IO34I/O/T SPIIO5, GPIO34, FSPICS0
26IO45I/O/T GPIO45
27IO0I/O/T RTC_GPIO0, GPIO0
28IO35I/O/T SPIIO6, GPIO35, FSPID
29IO36I/O/T SPIIO7, GPIO36, FSPICLK
30IO37I/O/T SPIDQS, GPIO37, FSPIQ
31IO38I/O/T GPIO38, FSPIWP
32IO39I/O/T MTCK, GPIO39, CLK_OUT3
33IO40I/O/T MTDO, GPIO40, CLK_OUT2
34IO41I/O/T MTDI, GPIO41, CLK_OUT1
35IO42I/O/T MTMS, GPIO42
36RXD0I/O/T U0RXD, GPIO44, CLK_OUT2
37TXD0I/O/T U0TXD, GPIO43, CLK_OUT1
38IO2I/O/T RTC_GPIO2, GPIO2, TOUCH2, ADC1_CH1
39IO1I/O/T RTC_GPIO1, GPIO1, TOUCH1, ADC1_CH0
40GNDP Ground
41EPADP Ground
Official datasheet pin-layout figure
ESP32-S2-SOLO-2 datasheet pin layout (top view)

Find a pin by function

Pick a capability to see which GPIOs provide it on the ESP32-S2.

Freely usable, no special role.

GPIO1general-purpose
GPIO2general-purpose
GPIO3general-purpose
GPIO4general-purpose
GPIO5general-purpose
GPIO6general-purpose
GPIO7general-purpose
GPIO8general-purpose
GPIO9general-purpose
GPIO10general-purpose
GPIO11general-purpose! ADC2 — unusable while Wi-Fi is on
GPIO12general-purpose! ADC2 — unusable while Wi-Fi is on
GPIO13general-purpose! ADC2 — unusable while Wi-Fi is on
GPIO14general-purpose! ADC2 — unusable while Wi-Fi is on
GPIO15general-purpose! ADC2 — unusable while Wi-Fi is on
GPIO16general-purpose! ADC2 — unusable while Wi-Fi is on
GPIO17general-purpose! ADC2 — unusable while Wi-Fi is on
GPIO18general-purpose! ADC2 — unusable while Wi-Fi is on
GPIO21general-purpose
GPIO33general-purpose
GPIO34general-purpose
GPIO35general-purpose
GPIO36general-purpose
GPIO37general-purpose
GPIO38general-purpose

! Usable for general IO, but one function has a condition (e.g. ADC2 can’t be read while Wi-Fi is on) — see the note.

UART, I²C, SPI (master), I²S, PWM/LEDC and most digital peripherals route through the GPIO matrix — assign them to any pin from “Safe GPIO”. The categories above are the pins tied to a fixed function (analog, USB, crystal…) or that need care.

Strapping pins

⚑ flag an error

GPIOs sampled at reset — avoid driving these at power-up.

PinDefaultBitFunction
GPIO0pull-up1boot_mode
GPIO45pull-down0flash_voltage
GPIO46pull-down0boot

GPIO pin warnings

⚑ flag an error

On the ESP32-S2, almost any peripheral can be routed to almost any GPIO through the IO MUX, so most pins are free to use. These are the exceptions — pins with a fixed role or a boot-time behaviour to design around.

PinWhy it needs care
GPIO0strapping pin (affects boot)
GPIO19native USB D±
GPIO20native USB D±
GPIO39JTAG
GPIO40JTAG
GPIO41JTAG
GPIO42JTAG
GPIO43UART0 console (boot log)
GPIO44UART0 console (boot log)
GPIO45strapping pin (affects boot)
GPIO46strapping pin (affects boot); input-only (no output/pull-up)
  • The ADC2 channels share hardware with the Wi-Fi radio, so ADC2 readings are unavailable while Wi-Fi is active — but those GPIOs are still free for any digital function. Use the ADC1 channels for analog input alongside Wi-Fi.

Compute & memory

⚑ flag an error
CPUXtensa LX7, 1-core
Max clock240 MHz
SRAM320 KB
ROM128 KB
Flash options4 / 8 / 16 MB
PSRAM2 MB (quad)
Co-processorULP-RISC-V
Wi-FiWi-Fi 4
Wi-Fi bands2.4GHz
Bluetooth
802.15.4 (Thread/Zigbee)No
AntennaPCB

Peripherals & I/O

⚑ flag an error
Usable GPIO36
ADC20× 12-bit
USBUSB-OTG
UART / SPI / I²C / I²S2 / 2 / 2 / 1
TWAI (CAN)Yes
SD/MMCNo
Ethernet MACNo
Touch14
Operating voltage3.0-3.6 V
Deep sleep— µA
Dimensions18 × 25.5 × 3.1 mm
Pin count41
Temp range-40 to 85 °C
MountingSMD castellated
LifecycleActive
Secure bootYes
Flash encryptionYes
CryptoAES, SHA, RSA, HMAC, RNG
Digital signatureYes
TRNGYes

Ordering codes

⚑ flag an error

The orderable part numbers and what each ships with — decoded from the suffix. Confirm against the latest datasheet before ordering.

Part numberFlashPSRAMTemp
ESP32-S2-SOLO-2-N4 4 MB −40 to 85 °C
ESP32-S2-SOLO-2-H4 4 MB −40 to 105 °C
ESP32-S2-SOLO-2-N4R2 4 MB 2 MB (quad) −40 to 85 °C
ESP32-S2-SOLO-2-N8 8 MB −40 to 85 °C
ESP32-S2-SOLO-2-N16 16 MB −40 to 85 °C

Schematics

ESP32-S2-SOLO-2 module reference-design schematic
Module reference design
ESP32-S2-SOLO-2 peripheral / application schematic showing how to wire the module
Peripheral / application circuit — how to wire it up

Mechanical & CAD

ESP32-S2-SOLO-2 physical dimensions drawing
Physical dimensions
ESP32-S2-SOLO-2 recommended PCB land pattern
Recommended PCB land pattern

Getting started

Frameworks: Arduino-ESP32 core — fully supported · ESP-IDF 4.2+ (Espressif's official SDK) · MicroPython · Matter.

ESP-IDF target: idf.py set-target esp32s2.

The SoC has native USB-OTG, so it can flash over USB and act as a USB device or host.

Open-source projects using this module

Public GitHub projects whose KiCad design files reference the ESP32-S2-SOLO-2.

+ Add your project

Frequently asked questions

Does the ESP32-S2-SOLO-2 have Wi-Fi and Bluetooth?

It provides 2.4 GHz Wi-Fi 4.

How much memory does the ESP32-S2-SOLO-2 have?

It comes with 4, 8, 16 MB flash options, up to 2 MB of PSRAM, and the ESP32-S2 has 320 KB of on-chip SRAM.

How many GPIO pins does the ESP32-S2-SOLO-2 have?

The module breaks out 36 GPIO, with up to 20 12-bit ADC channels. See the full pinout above.

Can I use the ESP32-S2-SOLO-2 with the Arduino IDE?

Yes — install the Arduino-ESP32 core and pick an ESP32-S2-based board. You can also use ESP-IDF 4.2 or MicroPython.

How do I flash the ESP32-S2-SOLO-2?

The SoC has native USB-OTG, so it can flash over USB and act as a USB device or host.

Is the ESP32-S2-SOLO-2 5 V tolerant?

No. It runs at 3.0-3.6 V and its GPIO are not 5 V tolerant — level-shift any 5 V signals.

Can I use an external antenna with the ESP32-S2-SOLO-2?

Most Espressif modules are also offered in a "-U" / "-1U" variant that swaps the on-board PCB antenna for a U.FL/IPEX connector for an external antenna — otherwise identical. Check this part's datasheet for the exact variant name.

Further reading