Esp32 Datasheet en
Esp32 Datasheet en
Esp32 Datasheet en
Espressif Systems
August 10, 2017
About This Guide
This document provides the specifications for ESP32 hardware. The document structure is as follows:
Release Notes
Certificates
Download certificates for Espressif products from here.
Disclaimer and Copyright Notice
Information in this document, including URL references, is subject to change without notice. THIS DOCUMENT IS
PROVIDED AS IS WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABIL-
ITY, NON-INFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE
ARISING OUT OF ANY PROPOSAL, SPECIFICATION OR SAMPLE.
All liability, including liability for infringement of any proprietary rights, relating to use of information in this docu-
ment is disclaimed. No licenses express or implied, by estoppel or otherwise, to any intellectual property rights
are granted herein. The Wi-Fi Alliance Member logo is a trademark of the Wi-Fi Alliance. The Bluetooth logo is a
registered trademark of Bluetooth SIG.
All trade names, trademarks and registered trademarks mentioned in this document are property of their respective
owners, and are hereby acknowledged.
Copyright © 2017 Espressif Inc. All rights reserved.
Contents
1 Overview 1
1.1 Featured Solutions 1
1.1.1 Ultra-Low-Power Solution 1
1.1.2 Complete Integration Solution 1
1.2 Basic Protocols 1
1.2.1 Wi-Fi 1
1.2.2 Bluetooth 2
1.3 MCU and Advanced Features 3
1.3.1 CPU and Memory 3
1.3.2 Clocks and Timers 3
1.3.3 Advanced Peripheral Interfaces 3
1.3.4 Security 4
1.3.5 Development Support 4
1.4 Applications 4
1.5 Block Diagram 5
2 Pin Definitions 6
2.1 Pin Layout 6
2.2 Pin Description 7
2.3 Power Scheme 9
2.4 Strapping Pins 10
3 Functional Description 12
3.1 CPU and Memory 12
3.1.1 CPU 12
3.1.2 Internal Memory 12
3.1.3 External Flash and SRAM 13
3.1.4 Memory Map 13
3.2 Timers and Watchdogs 15
3.2.1 64-bit Timers 15
3.2.2 Watchdog Timers 15
3.3 System Clocks 16
3.3.1 CPU Clock 16
3.3.2 RTC Clock 16
3.3.3 Audio PLL Clock 16
3.4 Radio 16
3.4.1 2.4 GHz Receiver 17
3.4.2 2.4 GHz Transmitter 17
3.4.3 Clock Generator 17
3.5 Wi-Fi 17
3.5.1 Wi-Fi Radio and Baseband 18
3.5.2 Wi-Fi MAC 18
3.5.3 Wi-Fi Firmware 18
3.5.4 Packet Traffic Arbitration (PTA) 19
3.6 Bluetooth 19
3.6.1 Bluetooth Radio and Baseband 19
3.6.2 Bluetooth Interface 19
3.6.3 Bluetooth Stack 19
3.6.4 Bluetooth Link Controller 19
3.7 RTC and Low-Power Management 20
5 Electrical Characteristics 28
5.1 Absolute Maximum Ratings 28
5.2 RF Power Consumption Specifications 28
5.3 Wi-Fi Radio 29
5.4 Bluetooth Radio 29
5.4.1 Receiver–Basic Data Rate 29
5.4.2 Transmitter – Basic Data Rate 30
5.4.3 Receiver–Enhanced Data Rate 30
5.4.4 Transmitter–Enhanced Data Rate 31
5.5 Bluetooth LE Radio 32
5.5.1 Receiver 32
5.5.2 Transmitter 32
6 Package Information 33
8 Learning Resources 35
8.1 Must-Read Documents 35
8.2 Must-Have Resources 35
1. Overview
ESP32 is a single 2.4 GHz Wi-Fi and Bluetooth combo chip designed with TSMC ultra-low-power 40 nm technol-
ogy. It is designed to achieve the best power and RF performance, robustness, versatility, and reliability in a wide
variety of applications and different power profiles.
The ESP32 series of chips include ESP32-D0WDQ6, ESP32-D0WD, ESP32-D2WD, and ESP32-S0WD. For details
of part number and ordering information, please refer to Part Number and Ordering Information.
Note:
For more information, refer to Section 3.7 RTC and Low-Power Management.
ESP32 uses CMOS for single-chip fully-integrated radio and baseband, and also integrates advanced calibration
circuitries that allow the solution to dynamically adjust itself to remove external circuit imperfections or adjust to
changes in external conditions. As such, the mass production of ESP32 solutions does not require expensive and
specialized Wi-Fi test equipment.
• WMM-PS, UAPSD
• Block ACK
• Wi-Fi Direct (P2P), P2P Discovery, P2P Group Owner mode and P2P Power Management
Note:
For more information, please refer to Section 3.5 Wi-Fi.
1.2.2 Bluetooth
• Compliant with Bluetooth v4.2 BR/EDR and BLE specification
• ATT/GATT
• HID
• BLE Beacon
• 448 KB ROM
• 520 KB SRAM
• 16 KB SRAM in RTC
• QSPI flash/SRAM, up to 4 x 16 MB
• External 2 MHz to 60 MHz crystal oscillator (40 MHz only for Wi-Fi/BT functionality)
• Two timer groups, including 2 x 64-bit timers and 1 x main watchdog in each group
• RTC watchdog
• 10 × touch sensors
• Temperature sensor
• 4 × SPI
• 2 × I2S
• 2 × I2C
• 3 × UART
• 1 host (SD/eMMC/SDIO)
• 1 slave (SDIO/SPI)
• Ethernet MAC interface with dedicated DMA and IEEE 1588 support
• CAN 2.0
• IR (TX/RX)
• Motor PWM
• Hall sensor
1.3.4 Security
• IEEE 802.11 standard security features all supported, including WFA, WPA/WPA2 and WAPI
• Secure boot
• Flash encryption
– AES
– RSA
– ECC
Note:
For more information, please refer to Learning Resources.
1.4 Applications
• Generic low power IoT sensor hub
• Music players
– Loggers
• Audio headsets
• Home automation
• Mesh network
• Baby monitors
• Wearable electronics
• Security ID tags
• Healthcare
Switch
Balun
Clock
I2C generator
Wi-Fi
I2S Wi-Fi MAC RF
baseband
transmit
SDIO
UART Core and memory
Cryptographic hardware
CAN 2 or 1 x Xtensa® 32- acceleration
bit LX6 Microprocessors
ETH SHA RSA
IR ROM SRAM
AES RNG
PWM
Temperature
sensor RTC
Touch sensor
ULP Recovery
PMU
DAC coprocesser memory
ADC
Note:
Products in the ESP32 series differ from each other in terms of their support for embedded flash and the number of CPUs
they have. For details, please refer to Part Number and Ordering Information.
2. Pin Definitions
VDD3P3_CPU
XTAL_N
GPIO22
XTAL_P
U0RXD
U0TXD
GPIO19
GPIO21
VDDA
VDDA
CAP2
CAP1
40
48
44
38
46
43
42
39
45
47
37
41
VDDA 1 36 GPIO23
LNA_IN 2 35 GPIO18
VDD3P3 3 34 GPIO5
VDD3P3 4 33 SD_DATA_1
SENSOR_VP 5 32 SD_DATA_0
SENSOR_CAPP 6 31 SD_CLK
ESP32
SENSOR_CAPN 7 49 GND 30 SD_CMD
SENSOR_VN 8 29 SD_DATA_3
CHIP_PU 9 28 SD_DATA_2
VDET_1 10 27 GPIO17
VDET_2 11 26 VDD_SDIO
32K_XP 12 25 GPIO16
13
14
15
16
17
18
19
20
21
22
23
24
32K_XN
GPIO25
GPIO26
GPIO27
MTMS
MTDI
VDD3P3_RTC
MTCK
MTDO
GPIO2
GPIO0
GPIO4
XTAL_N
GPIO22
XTAL_P
U0RXD
U0TXD
GPIO21
VDDA
VDDA
CAP2
CAP1
40
48
44
46
43
42
39
45
47
41
VDDA 1 38 GPIO19
LNA_IN 2 37 VDD3P3_CPU
VDD3P3 3 36 GPIO23
VDD3P3 4 35 GPIO18
SENSOR_VP 5 34 GPIO5
SENSOR_CAPP 6 33 SD_DATA_1
SENSOR_CAPN 7 32 SD_DATA_0
ESP32
SENSOR_VN 8 31 SD_CLK
49 GND
CHIP_PU 9 30 SD_CMD
VDET_1 10 29 SD_DATA_3
VDET_2 11 28 SD_DATA_2
32K_XP 12 27 GPIO17
32K_XN 13 26 VDD_SDIO
GPIO25 14 25 GPIO16
15
16
17
18
19
20
21
22
23
24
GPIO26
GPIO27
MTMS
MTDI
VDD3P3_RTC
MTCK
MTDO
GPIO2
GPIO0
GPIO4
Note:
For details on ESP32’s part number and the corresponding packaging, please refer to Part Number and Ordering Infor-
mation.
Note:
• ESP32-D2WD’s pins GPIO16, GPIO17, SD_CMD, SD_CLK, SD_DATA_0 and SD_DATA_1 are used for connecting
the embedded flash, and are not recommended for other uses.
• For a quick reference guide of the IO_MUX, Ethernet MAC, and GIPO Matrix pins of ESP32, please refer to Appendix
ESP32 Pin Lists.
• In most cases, the data port connection between the ESP32 and external flash is as follows: SD_DATA0/SPIQ =
IO1/DO, SD_DATA1/SPID = IO0/DI, SD_DATA2/SPIHD = IO3/HOLD, SD_DATA3/SPIWP = IO2/WP.
• VDD3P3_RTC
• VDD3P3_CPU
• VDD_SDIO
VDD3P3_RTC is also the input power supply for RTC and CPU.
VDD_SDIO connects to the output of an internal LDO, whose input is VDD3P3_RTC. When VDD_SDIO is con-
nected to the same PCB net together with VDD3P3_RTC; the internal LDO is disabled automatically.
The internal LDO can be configured as 1.8V, or the same voltage as VDD3P3_RTC. It can be powered off via
software to minimize the current of flash/SRAM during the Deep-sleep mode.
Note:
• CHIP_PU must be activated after the 3.3V rails have been brought up. The recommended delay time (T) is given
by the parameter of the RC circuit. For reference design, please refer to Figure ESP-WROOM-32 Peripheral
Schematics in the ESP-WROOM-32 Datasheet.
• CHIP_PU is used to reset the chip. The input level to reset the chip should be below 0.6V and stays for at least
200 µs.
• The operating voltage for ESP32 ranges from 2.3V to 3.6V. When using a single power supply, the recommended
voltage of the power supply is 3.3V, and its recommended output current is 500 mA or more.
• MTDI
• GPIO0
• GPIO2
• MTDO
• GPIO5
Software can read the value of these five bits from the register ”GPIO_STRAPPING”.
During the chip power-on reset, the latches of the strapping pins sample the voltage level as strapping bits of ”0”
or ”1”, and hold these bits until the chip is powered down or shut down. The strapping bits configure the device
boot mode, the operating voltage of VDD_SDIO and other system initial settings.
Each strapping pin is connected with its internal pull-up/pull-down during the chip reset. Consequently, if a strap-
ping pin is unconnected or the connected external circuit is high-impendence, the internal weak pull-up/pull-down
will determine the default input level of the strapping pins.
To change the strapping bit values, users can apply the external pull-down/pull-up resistances, or apply the host
MCU’s GPIOs to control the voltage level of these pins when powering on ESP32.
After reset, the strapping pins work as the normal functions pins.
Note:
• Firmware can configure register bits to change the setting of ”Voltage of Internal LDO (VDD_SDIO)” and ”Timing of
SDIO Slave” after booting.
• The embedded flash operates at 1.8V. For the ESP32 series of chips that contain embedded flash, the MTDI should
be pulled high.
3. Functional Description
This chapter describes the functions integrated in ESP32.
• 7-stage pipeline to support the clock frequency of up to 240 MHz (160 MHz for ESP32-S0WD)
• Support DSP instructions, such as 32-bit multiplier, 32-bit divider, and 40-bit MAC
• 8 KB SRAM in RTC, which is called RTC SLOW Memory and can be used for co-processor accessing during
the Deep-sleep mode
• 8 KB SRAM in RTC, which is called RTC FAST Memory and can be used for data storage and the main CPU
during RTC Boot from the Deep-sleep mode
• 1 kbit of eFuse, of which 256 bits are used for the system (MAC address and chip configuration) and the
remaining 768 bits are reserved for customer applications, including Flash-Encryption and Chip-ID
• Embedded flash
Note:
• Products in the ESP32 series differ from each other in terms of their support for embedded flash and the size of
the embedded flash. For details, please refer to Part Number and Ordering Information.
• From the ESP32 series of chips specified in this document, ESP32-D2WD has 16 Mbits of embedded flash, con-
nected via pins GPIO16, GPIO17, SD_CMD, SD_CLK, SD_DATA_0 and SD_DATA_1. The other chips in the ESP32
series have no embedded flash.
ESP32 can access the external QSPI flash and SRAM through high-speed caches.
• Up to 16 MB of external flash are memory-mapped onto the CPU code space, supporting 8-bit, 16-bit and
32-bit access. Code execution is supported.
• Up to 8 MB of external flash/SRAM memory are mapped onto the CPU data space, supporting 8-bit, 16-bit
and 32-bit access. Data-read is supported on the flash and SRAM. Data-write is supported on the SRAM.
Note:
ESP32 chips with embedded flash do not support the address mapping between external flash and peripherals.
• Auto-reload at alarming
During flash boot the RWDT and the first MWDT start automatically in order to detect and recover from booting
problems.
• One of three or four possible actions (interrupt, CPU reset, core reset, and system reset) upon the expiry of
each stage
• Write protection, to prevent the RWDT and MWDT configuration from being inadvertently altered
In addition, ESP32 has an internal 8 MHz oscillator. The accuracy of the oscillator is guaranteed by design and is
stable within the operating temperatures (with a margin error of 1%). Hence, the application can then select the
clock source from the external crystal clock source, the PLL clock or the internal 8 MHz oscillator. The selected
clock source drives the CPU clock, directly or after division, depending on the application.
• internal 31.25 kHz clock (derived from the internal 8 MHz oscillator divided by 256)
When the chip is in the normal power mode and needs faster CPU accessing, the application can choose the
external high-speed crystal clock divided by 4 or the internal 8 MHz oscillator. When the chip operates in the low
power mode, the application chooses the external low-speed (32 kHz) crystal clock, the internal RC clock or the
internal 31.25 kHz clock.
3.4 Radio
The ESP32 radio consists of the following blocks:
• clock generator
• Carrier leakage
• Baseband nonlinearities
• RF nonlinearities
• Antenna matching
These built-in calibration routines reduce the amount of time required for product test and render test equipment
unnecessary.
3.5 Wi-Fi
ESP32 implements TCP/IP, full 802.11 b/g/n/e/i WLAN MAC protocol, and Wi-Fi Direct specification. It supports
Basic Service Set (BSS) STA and SoftAP operations under the Distributed Control Function (DCF) and P2P group
operation compliant with the latest Wi-Fi P2P protocol.
Passive or active scanning, as well as the P2P discovery procedure are performed autonomously when initiated
by appropriate commands. Power management is handled with minimum host interaction to minimize active duty
period.
• 802.11n MCS32
• WMM, U-APSD
• CCMP (CBC-MAC, counter mode), TKIP (MIC, RC4), WAPI (SMS4), WEP (RC4) and CRC
• P2P Discovery, P2P Group Owner, P2P Group Client and P2P Power Management
• Open interface for various upper layer authentication schemes over EAP such as TLS, PEAP, LEAP, SIM,
AKA or customer specific
• Clock/power gating combined with 802.11-compliant power management dynamically adapted to current
connection condition providing minimal power consumption
• Adaptive rate fallback algorithm sets the optimal transmission rate and transmits power based on actual
Signal Noise Ratio (SNR) and packet loss information
• Automatic retransmission and response on MAC to avoid packet discarding on slow host environment
3.6 Bluetooth
ESP32 integrates Bluetooth link controller and Bluetooth baseband, which carry out the baseband protocols and
other low-level link routines, such as modulation/demodulation, packets processing, bit stream processing, fre-
quency hopping, etc.
• Class-1, class-2 and class-3 transmit output powers and up to 24 dB dynamic control range
• Internal SRAM allows full speed data transfer, mixed voice and data, and full piconet operation
• Logic for forward error correction, header error control, access code correlation, CRC, demodulation, en-
cryption bit stream generation, whitening and transmit pulse shaping
• Classic Bluetooth
– Multi connections
– Master/Slave Switch
– Broadcast encryption
– Sniff mode
– Ping
– Advertising
– Scanning
– Multiple connections
– LE Ping
• Power mode
– Active mode: The chip radio is powered on. The chip can receive, transmit, or listen.
– Modem-sleep mode: The CPU is operational and the clock is configurable. The Wi-Fi/Bluetooth base-
band and radio are disabled.
– Light-sleep mode: The CPU is paused. The RTC memory and RTC peripherals, as well as the ULP-
coprocessor are running. Any wake-up events (MAC, host, RTC timer, or external interrupts) will wake
up the chip.
– Deep-sleep mode: Only RTC memory and RTC peripherals are powered on. Wi-Fi and Bluetooth con-
nection data are stored in RTC memory. The ULP-coprocessor can work.
– Hibernation mode: The internal 8-MHz oscillator and ULP-coprocessor are disabled. The RTC recovery
memory is powered down. Only one RTC timer on the slow clock and some RTC GPIOs are active. The
RTC timer or the RTC GPIOs can wake up the chip from the Hibernation mode.
• Sleep Pattern
– Association sleep pattern: The power mode switches between the Active mode, Modem- and Light-
sleep mode during this sleep pattern. The CPU, Wi-Fi, Bluetooth, and radio are woken up at predeter-
mined intervals to keep Wi-Fi/BT connections alive.
– ULP sensor-monitored pattern: The main CPU is in the Deep-sleep mode. The ULP co-processor does
sensor measurements and wakes up the main system, based on the measured data from sensors.
The power consumption varies with different power modes/sleep patterns, and work status, of functional modules.
Please see Table 6 for details.
Note:
• During Deep-sleep, when ULP co-processor is powered on, peripherals such as GPIO and I2C are able to work.
• When the system works in the ULP sensor-monitored pattern, the ULP co-processor works with the ULP sensor
periodically; ADC works with a duty cycle of 1%, so the power consumption is 100 µA.
Most of the digital enabled GPIOs can be configured to internal pull-up or pull-down, or set to high impedance.
When configured as an input, the input value can be read through the register. The input can also be set to edge-
trigger or level-trigger to generate CPU interrupts. Most of the digital IO pins are bi-directional, non-inverting and
tristate, including input and output buffer with tristate control. These pins can be multiplexed with other functions,
such as the SDIO interface, UART, SPI, etc. (More details can be found in the Appendix, Table IO_MUX.) For low
power operations, the GPIOs can be set to hold their states.
With the appropriate setting, the ADCs and the amplifier can be configured to measure voltages for a maximum of
18 pins.
The temperature sensor has a range of -40°C to 125°C. As the offset of the temperature sensor varies from
chip to chip due to process variation, together with the heat generated by the Wi-Fi circuitry itself (which affects
measurements), the internal temperature sensor is only suitable for applications that detect temperature changes
instead of absolute temperatures and for calibration purposes as well.
However, if the user calibrates the temperature sensor and uses the device in a minimally powered-on application,
the results could be accurate enough.
etc.). The PHY is connected to ESP32 through 17 signals of MII or nine signals of RMII. With the Ethernet MAC
(EMAC) interface, the following features are supported:
• Dedicated DMA controller allowing high-speed transfer between the dedicated SRAM and Ethernet MAC
• Several address filtering modes for physical and multicast address (multicast and group addresses)
• Internal FIFOs to buffer transmit and receive frames. The transmit FIFO and the receive FIFO are both 512
words (32-bit)
• Hardware PTP (precision time protocol) in accordance with IEEE 1588 2008 (PTP V2)
• Secure Digital memory (SD mem Version 3.0 and Version 3.01)
• Multimedia Cards (MMC Version 4.41, eMMC Version 4.5 and Version 4.51)
The controller allows clock output at up to 80 MHz and in three different data-bus modes: 1-bit, 4-bit and 8-bit. It
supports two SD/SDIO/MMC4.41 cards in 4-bit data-bus mode. It also supports one SD card operating at 1.8 V
level.
• SPI, 1-bit SDIO, and 4-bit SDIO transfer modes over the full clock range of 0 to 50 MHz
• Automatic loading of SDIO bus data and automatic discarding of padding data
• Interrupt vectors between the host and the slave to allow both to interrupt each other
Users can program command registers to control I2C interfaces to have more flexibility.
Both of the I2S interfaces have dedicated DMA controllers. PDM and BT PCM interfaces are supported.
The 16 channels of digital waveforms operate at 80 MHz APB clock, among which 8 channels have the option of
using the 8 MHz oscillator clock. Each channel can select a 20-bit timer with configurable counting range and its
accuracy of duty can be up to 16 bits with the 1 ms period.
The software can change the duty immediately. Moreover, each channel supports step-by-step duty increasing or
decreasing automatically. It is useful for the LED RGB color gradient generator.
• 4 timing modes of the SPI format transfer that depend on the polarity (POL) and the phase (PHA)
• up to 64-byte FIFO
All SPIs can also be used to connect to the external flash/SRAM and LCD. Each SPI can be served by DMA
controllers.
4.20 Accelerator
ESP32 is equipped with hardware accelerators of general algorithms, such as AES (FIPS PUB 197), SHA (FIPS
PUB 180-4), RSA, and ECC, which support independent arithmetic such as Big Integer Multiplication and Big
Integer Modular Multiplication. The maximum operation length for RSA, ECC, Big Integer Multiply and Big Integer
Modular Multiplication is 4096 bits.
The hardware accelerators greatly improve operation speed and reduce software complexity. They also support
code encryption and dynamic decryption�which ensures that codes in the flash will not be stolen.
5. Electrical Characteristics
Note:
The specifications in this chapter have been tested under the following general condition: VDD = 3.3V, TA = 27°C, unless
otherwise specified.
5.5.2 Transmitter
6. Package Information
ESP32 - D 0 WD Q6
Package
Q6=QFN 6*6
N/A=QFN 5*5
Connection
WD=Wi-Fi b/g/n + BT/BLE Dual Mode
AD=Wi-Fi a/b/g/n + BT/BLE Dual Mode
CD=Wi-Fi ac/c/b/n/g + BT/BLE Dual Mode
Embedded Flash
0=No Embedded Flash
2=16 Mbit
Core
D=Dual Core
S=Single Core
The table below provides the ordering information of the ESP32 series of chips.
8. Learning Resources
• ESP32 BBS
This is an Engineer-to-Engineer (E2E) Community for ESP32 where you can post questions, share knowledge,
explore ideas, and help solve problems with fellow engineers.
• ESP32 Github
ESP32 development projects are freely distributed under Espressif’s MIT license on Github. It is established
to help developers get started with ESP32 and foster innovation and the growth of general knowledge about
the hardware and software surrounding ESP32 devices.
• ESP32 Tools
This is a web-page where users can download ESP32 Flash Download Tools and the zip file ”ESP32 Certifi-
cation and Test”.
• ESP32 IDF
This web-page links users to the official IoT development framework for ESP32.
• ESP32 Resources
This webpage provides the links to all the available ESP32 documents, SDK and tools. �����������
No. Description
In Table IO_MUX, the red-filled areas mark the differences from ESP31B. The blue-filled areas
1 indicate the new features of ESP32, compared to those of ESP31B. The yellow-filled areas
indicate the GPIO pins that are input-only. Please see the next note for details.
GPIO pins 34-39 are input-only. These pins do not feature an output driver or internal pull-
2 up/pull-down circuitry. The pin names are: SENSOR_VP (GPIO36), SENSOR_CAPP (GPIO37),
SENSOR_CAPN (GPIO38), SENSOR_VN (GPIO39), VDET_1 (GPIO34), VDET_2 (GPIO35).
The pins are split into four power domains: VANA (analog power supply), VRTC (RTC power
supply), VIO (power supply of digital IOs and CPU cores), VSDIO (power supply of SDIO IOs).
VSDIO is the output of the internal SDIO-LDO. The voltage of SDIO-LDO can be configured
3
at 1.8V, or be the same as that of the VRTC. The strapping pin and eFuse bits determine
the default voltage of the SDIO-LDO. Software can change the voltage of the SDIO-LDO by
configuring register bits. For details, please see the column “Power Domain” in Table IO_MUX.
The functional pins in the VRTC domain are those with analog functions, including the 32
4 kHz crystal oscillator, ADC pre-amplifier, ADC, DAC, and capacitive touch sensor. Please see
columns “Analog Function 1~3” in Table IO_MUX.
These VRTC pins support the RTC function, and can work during Deep-sleep. For example,
5
an RTC-GPIO can be used for waking up the chip from Deep-sleep.
The GPIO pins support up to six digital functions, as shown in columns “Function 1~6” In Table
IO_MUX. The function selection registers will be set as “N-1”, where N is the function number.
Below are some definitions:
• SD_* is for signals of the SDIO slave.
• HS1_* is for Port 1 signals of SDIO host.
• HS2_* is for Port 2 signals of SDIO host.
6 • MT* is for signals of the JTAG.
• U0* is for signals of the UART0 module.
• U1* is for signals of the UART1 module.
• U2* is for signals of the UART2 module.
• SPI* is for signals of the SPI01 module.
• HSPI* is for signals of the SPI2 module.
• VSPI* is for signals of the SPI3 module.
No. Description
Each digital “Function” column is accompanied by a column of “Type”. Please see the following
explanations for the meaning of “type” with respect to each “function” it is associated with. For
any “Function-N”, “type” signifies:
• I: input only. If a function other than “Function-N” is assigned, the input signal of
“Function-N” is still from this pin.
• I1: input only. If a function other than “Function-N” is assigned, the input signal for
“Function-N” is always “1”.
• I0: input only. If a function other than “Function-N” is assigned, the input signal for
“Function-N” is always “0”.
7
• O: output only.
• T: high-impedance.
• I/O/T: combinations of input, output, and high-impedance according to the function sig-
nal.
• I1/O/T: combinations of input, output, and high-impedance according to the function
signal. If a function is not selected, the input signal of the function is “1”.
For example, pin 30 can act as HS1_CMD or SD_CMD, where HS1_CMD is of an “I1/O/T”
type. If pin 30 is selected as HS1_CMD, the input and output of this pin are controlled by the
SDIO host. If pin 30 is not selected as HS1_CMD, the input signal to SDIO host is always “1”.
Each digital output pin is associated with its configurable drive-strength. Column “Drive
Strength” in Table IO_MUX lists the default values. The drive strength of the digital output
pins can be configured into one of the following four options:
• 0: ~5 mA
8 • 1: ~10 mA
• 2: ~20 mA
• 3: ~40 mA
The default value is 2.
The drive strength of the internal pull-up (wpu) and pull-down (wpd) is ~75 µA.
Column “At Reset” in Table IO_MUX lists the status of each pin during reset, including input
9 enable (ie=1), internal pull-up (wpu) and internal pull-down (wpd). During reset, all pins are
output-disabled.
Column “After Reset” in Table IO_MUX lists the status of each pin immediately after reset,
10 including input enable (ie=1), internal pull-up (wpu) and internal pull-down (wpd). After reset,
each pin is set to its “Function 1”. The output enable are controlled by its digital Function 1.
Table Ethernet_MAC is about the signal mapping inside Ethernet MAC. The Ethernet MAC
supports MII and RMII interfaces, and supports both internal PLL clock and the external clock
11
source. For MII interface, the Ethernet MAC is with/without the TX_ERR signal. MDC, MDIO,
CRS and COL are slow signals, and can be mapped onto any GPIO pins through GPIO-Matrix.
Table GPIO Matrix is for the GPIO-Matrix. The signals of the on-chip functional modules can
be mapped onto any GPIO pins. Some signals can be mapped onto a pin by both IO-MUX
12
and GPIO-Matrix, as shown in the column tagged as “Same input signal from IO_MUX core”
in Table GPIO Matrix.
*In Table GPIO_Matrix�the column “Default Value if unassigned” records the default value of
the an input signal if no GPIO is assigned to it. The actual value is determined by register
13
GPIO_FUNCm_IN_INV_SEL and GPIO_FUNCm_IN_SEL. (The value of m ranges from 1 to
255.)
A.2. GPIO_Matrix
Same input
Signal Default value signal from Output enable
Input signals Output signals
No. if unassigned* IO_MUX of output signals
core
0 SPICLK_in 0 yes SPICLK_out SPICLK_oe
1 SPIQ_in 0 yes SPIQ_out SPIQ_oe
2 SPID_in 0 yes SPID_out SPID_oe
3 SPIHD_in 0 yes SPIHD_out SPIHD_oe
4 SPIWP_in 0 yes SPIWP_out SPIWP_oe
5 SPICS0_in 0 yes SPICS0_out SPICS0_oe
6 SPICS1_in 0 no SPICS1_out SPICS1_oe
7 SPICS2_in 0 no SPICS2_out SPICS2_oe
8 HSPICLK_in 0 yes HSPICLK_out HSPICLK_oe
9 HSPIQ_in 0 yes HSPIQ_out HSPIQ_oe
10 HSPID_in 0 yes HSPID_out HSPID_oe
11 HSPICS0_in 0 yes HSPICS0_out HSPICS0_oe
12 HSPIHD_in 0 yes HSPIHD_out HSPIHD_oe
13 HSPIWP_in 0 yes HSPIWP_out HSPIWP_oe
14 U0RXD_in 0 yes U0TXD_out 1’d1
15 U0CTS_in 0 yes U0RTS_out 1’d1
16 U0DSR_in 0 no U0DTR_out 1’d1
17 U1RXD_in 0 yes U1TXD_out 1’d1
18 U1CTS_in 0 yes U1RTS_out 1’d1
23 I2S0O_BCK_in 0 no I2S0O_BCK_out 1’d1
24 I2S1O_BCK_in 0 no I2S1O_BCK_out 1’d1
25 I2S0O_WS_in 0 no I2S0O_WS_out 1’d1
26 I2S1O_WS_in 0 no I2S1O_WS_out 1’d1
27 I2S0I_BCK_in 0 no I2S0I_BCK_out 1’d1
28 I2S0I_WS_in 0 no I2S0I_WS_out 1’d1
29 I2CEXT0_SCL_in 1 no I2CEXT0_SCL_out 1’d1
30 I2CEXT0_SDA_in 1 no I2CEXT0_SDA_out 1’d1
31 pwm0_sync0_in 0 no sdio_tohost_int_out 1’d1
32 pwm0_sync1_in 0 no pwm0_out0a 1’d1
33 pwm0_sync2_in 0 no pwm0_out0b 1’d1
34 pwm0_f0_in 0 no pwm0_out1a 1’d1
35 pwm0_f1_in 0 no pwm0_out1b 1’d1
36 pwm0_f2_in 0 no pwm0_out2a 1’d1
37 - 0 no pwm0_out2b 1’d1
39 pcnt_sig_ch0_in0 0 no - 1’d1
40 pcnt_sig_ch1_in0 0 no - 1’d1
41 pcnt_ctrl_ch0_in0 0 no - 1’d1
42 pcnt_ctrl_ch1_in0 0 no - 1’d1
Same input
Signal Default value signal from Output enable
Input signals Output signals
No. if unassigned IO_MUX of output signals
core
43 pcnt_sig_ch0_in1 0 no - 1’d1
44 pcnt_sig_ch1_in1 0 no - 1’d1
45 pcnt_ctrl_ch0_in1 0 no - 1’d1
46 pcnt_ctrl_ch1_in1 0 no - 1’d1
47 pcnt_sig_ch0_in2 0 no - 1’d1
48 pcnt_sig_ch1_in2 0 no - 1’d1
49 pcnt_ctrl_ch0_in2 0 no - 1’d1
50 pcnt_ctrl_ch1_in2 0 no - 1’d1
51 pcnt_sig_ch0_in3 0 no - 1’d1
52 pcnt_sig_ch1_in3 0 no - 1’d1
53 pcnt_ctrl_ch0_in3 0 no - 1’d1
54 pcnt_ctrl_ch1_in3 0 no - 1’d1
55 pcnt_sig_ch0_in4 0 no - 1’d1
56 pcnt_sig_ch1_in4 0 no - 1’d1
57 pcnt_ctrl_ch0_in4 0 no - 1’d1
58 pcnt_ctrl_ch1_in4 0 no - 1’d1
61 HSPICS1_in 0 no HSPICS1_out HSPICS1_oe
62 HSPICS2_in 0 no HSPICS2_out HSPICS2_oe
63 VSPICLK_in 0 yes VSPICLK_out_mux VSPICLK_oe
64 VSPIQ_in 0 yes VSPIQ_out VSPIQ_oe
65 VSPID_in 0 yes VSPID_out VSPID_oe
66 VSPIHD_in 0 yes VSPIHD_out VSPIHD_oe
67 VSPIWP_in 0 yes VSPIWP_out VSPIWP_oe
68 VSPICS0_in 0 yes VSPICS0_out VSPICS0_oe
69 VSPICS1_in 0 no VSPICS1_out VSPICS1_oe
70 VSPICS2_in 0 no VSPICS2_out VSPICS2_oe
71 pcnt_sig_ch0_in5 0 no ledc_hs_sig_out0 1’d1
72 pcnt_sig_ch1_in5 0 no ledc_hs_sig_out1 1’d1
73 pcnt_ctrl_ch0_in5 0 no ledc_hs_sig_out2 1’d1
74 pcnt_ctrl_ch1_in5 0 no ledc_hs_sig_out3 1’d1
75 pcnt_sig_ch0_in6 0 no ledc_hs_sig_out4 1’d1
76 pcnt_sig_ch1_in6 0 no ledc_hs_sig_out5 1’d1
77 pcnt_ctrl_ch0_in6 0 no ledc_hs_sig_out6 1’d1
78 pcnt_ctrl_ch1_in6 0 no ledc_hs_sig_out7 1’d1
79 pcnt_sig_ch0_in7 0 no ledc_ls_sig_out0 1’d1
80 pcnt_sig_ch1_in7 0 no ledc_ls_sig_out1 1’d1
81 pcnt_ctrl_ch0_in7 0 no ledc_ls_sig_out2 1’d1
82 pcnt_ctrl_ch1_in7 0 no ledc_ls_sig_out3 1’d1
83 rmt_sig_in0 0 no ledc_ls_sig_out4 1’d1
84 rmt_sig_in1 0 no ledc_ls_sig_out5 1’d1
85 rmt_sig_in2 0 no ledc_ls_sig_out6 1’d1
Same input
Signal Default value signal from Output enable
Input signals Output signals
No. if unassigned IO_MUX of output signals
core
86 rmt_sig_in3 0 no ledc_ls_sig_out7 1’d1
87 rmt_sig_in4 0 no rmt_sig_out0 1’d1
88 rmt_sig_in5 0 no rmt_sig_out1 1’d1
89 rmt_sig_in6 0 no rmt_sig_out2 1’d1
90 rmt_sig_in7 0 no rmt_sig_out3 1’d1
91 - - - rmt_sig_out4 1’d1
92 - - - rmt_sig_out6 1’d1
94 - - - rmt_sig_out7 1’d1
95 I2CEXT1_SCL_in 1 no I2CEXT1_SCL_out 1’d1
96 I2CEXT1_SDA_in 1 no I2CEXT1_SDA_out 1’d1
97 host_card_detect_n_1 0 no host_ccmd_od_pullup_en_n 1’d1
98 host_card_detect_n_2 0 no host_rst_n_1 1’d1
99 host_card_write_prt_1 0 no host_rst_n_2 1’d1
100 host_card_write_prt_2 0 no gpio_sd0_out 1’d1
101 host_card_int_n_1 0 no gpio_sd1_out 1’d1
102 host_card_int_n_2 0 no gpio_sd2_out 1’d1
103 pwm1_sync0_in 0 no gpio_sd3_out 1’d1
104 pwm1_sync1_in 0 no gpio_sd4_out 1’d1
105 pwm1_sync2_in 0 no gpio_sd5_out 1’d1
106 pwm1_f0_in 0 no gpio_sd6_out 1’d1
107 pwm1_f1_in 0 no gpio_sd7_out 1’d1
108 pwm1_f2_in 0 no pwm1_out0a 1’d1
109 pwm0_cap0_in 0 no pwm1_out0b 1’d1
110 pwm0_cap1_in 0 no pwm1_out1a 1’d1
111 pwm0_cap2_in 0 no pwm1_out1b 1’d1
112 pwm1_cap0_in 0 no pwm1_out2a 1’d1
113 pwm1_cap1_in 0 no pwm1_out2b 1’d1
114 pwm1_cap2_in 0 no pwm2_out1h 1’d1
115 pwm2_flta 1 no pwm2_out1l 1’d1
116 pwm2_fltb 1 no pwm2_out2h 1’d1
117 pwm2_cap1_in 0 no pwm2_out2l 1’d1
118 pwm2_cap2_in 0 no pwm2_out3h 1’d1
119 pwm2_cap3_in 0 no pwm2_out3l 1’d1
120 pwm3_flta 1 no pwm2_out4h 1’d1
121 pwm3_fltb 1 no pwm2_out4l 1’d1
122 pwm3_cap1_in 0 no - 1’d1
123 pwm3_cap2_in 0 no - 1’d1
124 pwm3_cap3_in 0 no - 1’d1
140 I2S0I_DATA_in0 0 no I2S0O_DATA_out0 1’d1
141 I2S0I_DATA_in1 0 no I2S0O_DATA_out1 1’d1
142 I2S0I_DATA_in2 0 no I2S0O_DATA_out2 1’d1
Same input
Signal Default value signal from Output enable
Input signals Output signals
No. if unassigned IO_MUX of output signals
core
143 I2S0I_DATA_in3 0 no I2S0O_DATA_out3 1’d1
144 I2S0I_DATA_in4 0 no I2S0O_DATA_out4 1’d1
145 I2S0I_DATA_in5 0 no I2S0O_DATA_out5 1’d1
146 I2S0I_DATA_in6 0 no I2S0O_DATA_out6 1’d1
147 I2S0I_DATA_in7 0 no I2S0O_DATA_out7 1’d1
148 I2S0I_DATA_in8 0 no I2S0O_DATA_out8 1’d1
149 I2S0I_DATA_in9 0 no I2S0O_DATA_out9 1’d1
150 I2S0I_DATA_in10 0 no I2S0O_DATA_out10 1’d1
151 I2S0I_DATA_in11 0 no I2S0O_DATA_out11 1’d1
152 I2S0I_DATA_in12 0 no I2S0O_DATA_out12 1’d1
153 I2S0I_DATA_in13 0 no I2S0O_DATA_out13 1’d1
154 I2S0I_DATA_in14 0 no I2S0O_DATA_out14 1’d1
155 I2S0I_DATA_in15 0 no I2S0O_DATA_out15 1’d1
156 - - - I2S0O_DATA_out16 1’d1
157 - - - I2S0O_DATA_out17 1’d1
158 - - - I2S0O_DATA_out18 1’d1
159 - - - I2S0O_DATA_out19 1’d1
160 - - - I2S0O_DATA_out20 1’d1
161 - - - I2S0O_DATA_out21 1’d1
162 - - - I2S0O_DATA_out22 1’d1
163 - - - I2S0O_DATA_out23 1’d1
164 I2S1I_BCK_in 0 no I2S1I_BCK_out 1’d1
165 I2S1I_WS_in 0 no I2S1I_WS_out 1’d1
166 I2S1I_DATA_in0 0 no I2S1O_DATA_out0 1’d1
167 I2S1I_DATA_in1 0 no I2S1O_DATA_out1 1’d1
168 I2S1I_DATA_in2 0 no I2S1O_DATA_out2 1’d1
169 I2S1I_DATA_in3 0 no I2S1O_DATA_out3 1’d1
170 I2S1I_DATA_in4 0 no I2S1O_DATA_out4 1’d1
171 I2S1I_DATA_in5 0 no I2S1O_DATA_out5 1’d1
172 I2S1I_DATA_in6 0 no I2S1O_DATA_out6 1’d1
173 I2S1I_DATA_in7 0 no I2S1O_DATA_out7 1’d1
174 I2S1I_DATA_in8 0 no I2S1O_DATA_out8 1’d1
175 I2S1I_DATA_in9 0 no I2S1O_DATA_out9 1’d1
176 I2S1I_DATA_in10 0 no I2S1O_DATA_out10 1’d1
177 I2S1I_DATA_in11 0 no I2S1O_DATA_out11 1’d1
178 I2S1I_DATA_in12 0 no I2S1O_DATA_out12 1’d1
179 I2S1I_DATA_in13 0 no I2S1O_DATA_out13 1’d1
180 I2S1I_DATA_in14 0 no I2S1O_DATA_out14 1’d1
181 I2S1I_DATA_in15 0 no I2S1O_DATA_out15 1’d1
182 - - - I2S1O_DATA_out16 1’d1
183 - - - I2S1O_DATA_out17 1’d1
Same input
Signal Default value signal from Output enable
Input signals Output signals
No. if unassigned IO_MUX of output signals
core
184 - - - I2S1O_DATA_out18 1’d1
185 - - - I2S1O_DATA_out19 1’d1
186 - - - I2S1O_DATA_out20 1’d1
187 - - - I2S1O_DATA_out21 1’d1
188 - - - I2S1O_DATA_out22 1’d1
189 - - - I2S1O_DATA_out23 1’d1
190 I2S0I_H_SYNC 0 no pwm3_out1h 1’d1
191 I2S0I_V_SYNC 0 no pwm3_out1l 1’d1
192 I2S0I_H_ENABLE 0 no pwm3_out2h 1’d1
193 I2S1I_H_SYNC 0 no pwm3_out2l 1’d1
194 I2S1I_V_SYNC 0 no pwm3_out3h 1’d1
195 I2S1I_H_ENABLE 0 no pwm3_out3l 1’d1
196 - - - pwm3_out4h 1’d1
197 - - - pwm3_out4l 1’d1
198 U2RXD_in 0 yes U2TXD_out 1’d1
199 U2CTS_in 0 yes U2RTS_out 1’d1
200 emac_mdc_i 0 no emac_mdc_o emac_mdc_oe
201 emac_mdi_i 0 no emac_mdo_o emac_mdo_o_e
202 emac_crs_i 0 no emac_crs_o emac_crs_oe
203 emac_col_i 0 no emac_col_o emac_col_oe
204 pcmfsync_in 0 no bt_audio0_irq 1’d1
205 pcmclk_in 0 no bt_audio1_irq 1’d1
206 pcmdin 0 no bt_audio2_irq 1’d1
207 - - - ble_audio0_irq 1’d1
208 - - - ble_audio1_irq 1’d1
209 - - - ble_audio2_irq 1’d1
210 - - - pcmfsync_out pcmfsync_en
211 - - - pcmclk_out pcmclk_en
212 - - - pcmdout pcmdout_en
213 - - - ble_audio_sync0_p 1’d1
214 - - - ble_audio_sync1_p 1’d1
215 - - - ble_audio_sync2_p 1’d1
224 - - - sig_in_func224 1’d1
225 - - - sig_in_func225 1’d1
226 - - - sig_in_func226 1’d1
227 - - - sig_in_func227 1’d1
228 - - - sig_in_func228 1’d1
A.3. Ethernet_MAC
PIN Name Function6 MII (int_osc) MII (ext_osc) RMII (int_osc) RMII (ext_osc)
GPIO0 EMAC_TX_CLK TX_CLK (I) TX_CLK (I) CLK_OUT(O) EXT_OSC_CLK(I)
GPIO5 EMAC_RX_CLK RX_CLK (I) RX_CLK (I) - -
GPIO21 EMAC_TX_EN TX_EN(O) TX_EN(O) TX_EN(O) TX_EN(O)
GPIO19 EMAC_TXD0 TXD[0](O) TXD[0](O) TXD[0](O) TXD[0](O)
GPIO22 EMAC_TXD1 TXD[1](O) TXD[1](O) TXD[1](O) TXD[1](O)
MTMS EMAC_TXD2 TXD[2](O) TXD[2](O) - -
MTDI EMAC_TXD3 TXD[3](O) TXD[3](O) - -
MTCK EMAC_RX_ER RX_ER(I) RX_ER(I) - -
GPIO27 EMAC_RX_DV RX_DV(I) RX_DV(I) CRS_DV(I) CRS_DV(I)
GPIO25 EMAC_RXD0 RXD[0](I) RXD[0](I) RXD[0](I) RXD[0](I)
GPIO26 EMAC_RXD1 RXD[1](I) RXD[1](I) RXD[1](I) RXD[1](I)
U0TXD EMAC_RXD2 RXD[2](I) RXD[2](I) - -
MTDO EMAC_RXD3 RXD[3](I) RXD[3](I) - -
GPIO16 EMAC_CLK_OUT CLK_OUT(O) - CLK_OUT(O) -
GPIO17 EMAC_CLK_OUT_180 CLK_OUT_180(O) - CLK_OUT_180(O) -
GPIO4 EMAC_TX_ER TX_ERR(O)* TX_ERR(O)* - -
In GPIO Matrix* - MDC(O) MDC(O) MDC(O) MDC(O)
In GPIO Matrix* - MDIO(IO) MDIO(IO) MDIO(IO) MDIO(IO)
In GPIO Matrix* - CRS(I) CRS(I) - -
In GPIO Matrix* - COL(I) COL(I) - -
*Notes: 1. The GPIO Matrix can be any GPIO. 2. The TX_ERR (O) is optional.
A.4. IO_MUX
For the list of IO_MUX pins please see the next page.
IO_MUX
Power Analog Analog Analog RTC RTC Drive Strength
Pin No. Analog Pin Digital Pin Power Domain Function1 Type Function2 Type Function3 Type Function4 Type Function5 Type Function6 Type At Reset After Reset
Supply Pin Function1 Function2 Function3 Function1 Function2 (2’d2: 20 mA)
1 VDDA VANA in
2 LNA_IN VANA in
3 VDD3P3 VANA in
4 VDD3P3 VANA in
5 SENSOR_VP VRTC ADC_H ADC1_CH0 RTC_GPIO0 GPIO36 I GPIO36 I ie=0
6 SENSOR_CAPP VRTC ADC_H ADC1_CH1 RTC_GPIO1 GPIO37 I GPIO37 I ie=0
7 SENSOR_CAPN VRTC ADC_H ADC1_CH2 RTC_GPIO2 GPIO38 I GPIO38 I ie=0
8 SENSOR_VN VRTC ADC_H ADC1_CH3 RTC_GPIO3 GPIO39 I GPIO39 I ie=0
9 CHIP_PU VRTC
10 VDET_1 VRTC ADC1_CH6 RTC_GPIO4 GPIO34 I GPIO34 I ie=0
11 VDET_2 VRTC ADC1_CH7 RTC_GPIO5 GPIO35 I GPIO35 I ie=0
12 32K_XP VRTC XTAL_32K_P ADC1_CH4 TOUCH9 RTC_GPIO9 GPIO32 I/O/T GPIO32 I/O/T 2'd2 ie=0
13 32K_XN VRTC XTAL_32K_N ADC1_CH5 TOUCH8 RTC_GPIO8 GPIO33 I/O/T GPIO33 I/O/T 2'd2 ie=0
14 GPIO25 VRTC DAC_1 ADC2_CH8 RTC_GPIO6 GPIO25 I/O/T GPIO25 I/O/T EMAC_RXD0 I 2'd2 ie=0
15 GPIO26 VRTC DAC_2 ADC2_CH9 RTC_GPIO7 GPIO26 I/O/T GPIO26 I/O/T EMAC_RXD1 I 2'd2 ie=0
16 GPIO27 VRTC ADC2_CH7 TOUCH7 RTC_GPIO17 GPIO27 I/O/T GPIO27 I/O/T EMAC_RX_DV I 2'd2 ie=1
17 MTMS VRTC ADC2_CH6 TOUCH6 RTC_GPIO16 MTMS I0 HSPICLK I/O/T GPIO14 I/O/T HS2_CLK O SD_CLK I0 EMAC_TXD2 O 2'd2 wpu, ie=1 wpu, ie=1
18 MTDI VRTC ADC2_CH5 TOUCH5 RTC_GPIO15 MTDI I1 HSPIQ I/O/T GPIO12 I/O/T HS2_DATA2 I1/O/T SD_DATA2 I1/O/T EMAC_TXD3 O 2'd2 wpd, ie=1 wpd, ie=1
19 VDD3P3_RTC VRTC supply in
20 MTCK VRTC ADC2_CH4 TOUCH4 RTC_GPIO14 MTCK I1 HSPID I/O/T GPIO13 I/O/T HS2_DATA3 I1/O/T SD_DATA3 I1/O/T EMAC_RX_ER I 2'd2 wpu, ie=1 wpu, ie=1
21 MTDO VRTC ADC2_CH3 TOUCH3 RTC_GPIO13 I2C_SDA MTDO O/T HSPICS0 I/O/T GPIO15 I/O/T HS2_CMD I1/O/T SD_CMD I1/O/T EMAC_RXD3 I 2'd2 wpu, ie=1 wpu, ie=1
22 GPIO2 VRTC ADC2_CH2 TOUCH2 RTC_GPIO12 I2C_SCL GPIO2 I/O/T HSPIWP I/O/T GPIO2 I/O/T HS2_DATA0 I1/O/T SD_DATA0 I1/O/T 2'd2 wpd, ie=1 wpd, ie=1
23 GPIO0 VRTC ADC2_CH1 TOUCH1 RTC_GPIO11 I2C_SDA GPIO0 I/O/T CLK_OUT1 O GPIO0 I/O/T EMAC_TX_CLK I 2'd2 wpu, ie=1 wpu, ie=1
44
24 GPIO4 VRTC ADC2_CH0 TOUCH0 RTC_GPIO10 I2C_SCL GPIO4 I/O/T HSPIHD I/O/T GPIO4 I/O/T HS2_DATA1 I1/O/T SD_DATA1 I1/O/T EMAC_TX_ER O 2'd2 wpd, ie=1 wpd, ie=1
25 GPIO16 VSDIO GPIO16 I/O/T GPIO16 I/O/T HS1_DATA4 I1/O/T U2RXD I1 EMAC_CLK_OUT O 2'd2 ie=1
26 VDD_SDIO VSDIO supply out/in
27 GPIO17 VSDIO GPIO17 I/O/T GPIO17 I/O/T HS1_DATA5 I1/O/T U2TXD O EMAC_CLK_OUT_180 O 2'd2 ie=1
28 SD_DATA_2 VSDIO SD_DATA2 I1/O/T SPIHD I/O/T GPIO9 I/O/T HS1_DATA2 I1/O/T U1RXD I1 2'd2 wpu, ie=1 wpu, ie=1
29 SD_DATA_3 VSDIO SD_DATA3 I0/O/T SPIWP I/O/T GPIO10 I/O/T HS1_DATA3 I1/O/T U1TXD O 2'd2 wpu, ie=1 wpu, ie=1
30 SD_CMD VSDIO SD_CMD I1/O/T SPICS0 I/O/T GPIO11 I/O/T HS1_CMD I1/O/T U1RTS O 2'd2 wpu, ie=1 wpu, ie=1
31 SD_CLK VSDIO SD_CLK I0 SPICLK I/O/T GPIO6 I/O/T HS1_CLK O U1CTS I1 2'd2 wpu, ie=1 wpu, ie=1
32 SD_DATA_0 VSDIO SD_DATA0 I1/O/T SPIQ I/O/T GPIO7 I/O/T HS1_DATA0 I1/O/T U2RTS O 2'd2 wpu, ie=1 wpu, ie=1
33 SD_DATA_1 VSDIO SD_DATA1 I1/O/T SPID I/O/T GPIO8 I/O/T HS1_DATA1 I1/O/T U2CTS I1 2'd2 wpu, ie=1 wpu, ie=1
34 GPIO5 VIO GPIO5 I/O/T VSPICS0 I/O/T GPIO5 I/O/T HS1_DATA6 I1/O/T EMAC_RX_CLK I 2'd2 wpu, ie=1 wpu, ie=1
35 GPIO18 VIO GPIO18 I/O/T VSPICLK I/O/T GPIO18 I/O/T HS1_DATA7 I1/O/T 2'd2 ie=1
36 GPIO23 VIO GPIO23 I/O/T VSPID I/O/T GPIO23 I/O/T HS1_STROBE I0 2'd2 ie=1
46 VDDA VANA
47 CAP2 VANA
48 CAP1 VANA
Total
8 14 26
Number
Note:
Please see Table: Notes on ESP32 Pin Lists.ҁ᧗݇ᘍᤒғᓕᚕႴ᧔ܔก̶҂
Appendix A
Espressif www.espressif.com