ESP-01 is the smallest ESP8266 module: eight pins, two free GPIO and a UART. It started out as a Wi-Fi “modem” for Arduino controlled by AT commands; today it is mostly programmed directly – for simple sensors, relays or LED strip control.
The newer ESP-01S (black) has 1 MB of flash and pull-ups right on the module.
Specifications
- ESP8266: Tensilica L106 80/160 MHz
- 1 MB flash (only 512 kB on the oldest ESP-01)
- Wi-Fi 4 (2.4 GHz), PCB antenna
- 2 GPIO (GPIO0, GPIO2) and UART (GPIO1/GPIO3 can also be used as GPIO)
- 3.3 V supply only, around 300 mA peak
- 24.8 × 14.3 mm, 2 × 4 pin header
To upload you need a USB-serial converter with 3.3 V logic or a low-cost ESP-01 adapter – but not every adapter has a button for download mode. The module doesn’t plug into a breadboard; the 2 × 4 header would short the rows.
Pinout and pin table
Hover over a pin in the diagram or a table row; use the filter to highlight a bus. You can download the pinout as PNG or SVG.
| Pin | Name | Direction | UART | I2C | SPI | ADC | Note |
|---|---|---|---|---|---|---|---|
| 1 | GND | – | |||||
| 2 | GPIO2 | input/output | Strapping pin – must be logic 1 at boot; UART1 TX. On the ESP-01S, blue LED (lights at logic 0) | ||||
| 3 | GPIO0 | input/output | Strapping pin – logic 0 at boot = firmware download mode | ||||
| 4 | GPIO3 | input/output | RX | UART0 RX | |||
| 5 | GPIO1 | input/output | TX | UART0 TX; blue LED on the ESP-01 (blinks during communication) | |||
| 6 | CH_PD | input | Chip enable (EN) – must be logic 1 (pull-up to 3.3 V), otherwise the module does not work. On the ESP-01S the pull-up is on the module. | ||||
| 7 | RST | input | Reset – connecting to GND restarts the module | ||||
| 8 | 3V3 | input | Power 3.3 V (not 5 V!) – supply at least 500 mA |
What to watch out for
- 3.3 V supply, not 5 V! The Arduino’s 3V3 pin (50 mA) isn’t enough for Wi-Fi.
- CH_PD (EN) must be at logic 1 – on the ESP-01 via your own pull-up; the ESP-01S has one on the module.
- GPIO0 at logic 0 at boot = download mode; GPIO2 must be at logic 1 at boot.
- The blue LED is on GPIO2 on the ESP-01S (lit at logic 0) and on TX (GPIO1) on the ESP-01.
ESP-01 projects on chiptron.eu/
Projects and guides on chiptron.eu/:
- Esparto 2.0 – a library for custom ESP8266 firmware, supporting ESP01, Wemos D1 and Sonoff
- 100 IoT projects – MicroPython projects with code for ESP8266, ESP32 and Pico
More pinouts
See all pinouts on the Pinouts page.