docs

a slatepencil documentail site

View on GitHub

ESP-WROOM-32

Pin Layout

ESP32-S3-DevkitC-2 Pin Layout

ESP32-S3-DevkitC-2

ESP32-DevkitC V4 Pin Layout

ESP32-DevkitC-V4

ESP32-DevkitC V1 Pin Layout

ESP32-DevkitC-V1

Comparision

order module chip Flash PSRAM SPI Voltage GPIO
ESP32-S3-DevKitC-1-N32R8V ESP32-S3-WROOM-2-N32R8V ESP32-S3 32 MB OT 8 MB OT 1.8 V 33
ESP32-DevKitC-V4 ESP32-WROOM-32D ESP32-D0WD-V3        
ESP32-DevKitC ESP32-WROOM-32U-N4 ESP32-D0WDQ6-V1 4 MB 0MB   26
ESP32-DevKit-V1 ESP32-WROOM-32 ESP32-D0WD-V1 4 MB 0MB   26

CP2104

Function block diagram

Esp32 function block diagram

Peripheral Table

Type Functions
ADC Dedicated GPIOs
DAC Dedicated GPIOs
Touch Sensor Dedicated GPIOs
JTAG Dedicated GPIOs
SD/SDIO/MMC HostController Dedicated GPIOs
Motor PWM Any GPIO
SDIO/SPI SlaveController Dedicated GPIOs
UART Any GPIO1
I2C Any GPIO
I2S Any GPIO
LED PWM Any GPIO
RMT Any GPIO
GPIO Any GPIO
Parallel QSPI Dedicated GPIOs
EMAC Dedicated GPIOs
Pulse Counter Any GPIO
TWAI Any GPIO
USB Dedicated GPIOs
int sda = 16;
int scl = 17;

void setup()
{
    Wire.setPins(int sda, int scl); // sda & scl GPIO can change if this line present
    // default sda 21, scl 22
    Wire.begin(); // join i2c bus (address optional for master)
}

Partition Table

Library Builder

Arduino Experiments

ESP-IDF Experiments

git clone git@github.com:espressif/esp-idf.git
cp -r $IDF_PATH/examples/get-started/hello_world .
idf.py –-list-targets
idf.py set-target esp32
idf.py menuconfig
idf.py build
idf.py -p PORT flash monitor
# press ctrl + ] to exit monitor
  1. except for the download/programming mode decided by the bootloader.