Libraries

Here is where the Libraries API’s descriptions are located:

Supported Peripherals

Currently, the Arduino ESP32 supports the following peripherals with Arduino APIs.

Peripheral

ESP32

ESP32-S2

ESP32-C3

ESP32-S3

Comments

ADC

Yes

Yes

Yes

Yes

Bluetooth

Yes

Not Supported

Not Supported

Not Supported

Bluetooth Classic

BLE

Yes

Not Supported

Yes

Yes

DAC

Yes

Yes

Not Supported

Not Supported

Ethernet

Yes

Not Supported

Not Supported

Not Supported

(*)

GPIO

Yes

Yes

Yes

Yes

Hall Sensor

Yes

Not Supported

Not Supported

Not Supported

I2C

Yes

Yes

Yes

Yes

I2S

Yes

Yes

Yes

Yes

LEDC

Yes

Yes

Yes

Yes

Motor PWM

No

Not Supported

Not Supported

Not Supported

Pulse Counter

No

No

No

No

RMT

Yes

Yes

Yes

Yes

SDIO

No

No

No

No

SDMMC

Yes

Not Supported

Not Supported

Yes

Timer

Yes

Yes

Yes

Yes

Temp. Sensor

Not Supported

Yes

Yes

Yes

Touch

Yes

Yes

Not Supported

Yes

TWAI

No

No

No

No

UART

Yes

Yes

Yes

Yes

USB

Not Supported

Yes

Yes

Yes

ESP32-C3 only CDC/JTAG

Wi-Fi

Yes

Yes

Yes

Yes

Notes

(*) SPI Ethernet is supported by all ESP32 families and RMII only for ESP32.

Note

Some peripherals are not available for all ESP32 families. To see more details about it, see the corresponding SoC at Product Selector page.

Datasheet