ESP-07S ESP8266 Serial WIFI Module

SKU: FA2068-1
Module Model

ESP-07S

Core Chip

ESP8266EX

Processor

Tensilica L106 32-bit RISC

Clock Speed

80 MHz (supports 160 MHz)

Flash Memory

4 MB (32 Mbit)

SRAM

80 KB

Operating Voltage

3.0V – 3.6V DC

Peak Current

300mA (transmitting)

Average Current

80mA

Deep Sleep Current

< 10 µA

Standby Current (DTIM3)

< 1.0 mW

Wake-up Time

< 2 ms

Wireless Standard

802.11 b/g/n

Frequency Band

2.4 GHz (2400 MHz – 2483.5 MHz)

Output Power

+20 dBm (802.11b mode)

Receiver Sensitivity

-98 dBm

Antenna

PCB trace antenna + U.FL/IPEX connector

Interfaces

UART, GPIO, I2C, I2S, HSPI, PWM, ADC

ADC Resolution

10-bit

Operating Temperature

-40°C to +125°C

Module Dimensions

16.0mm × 17.0mm × 3.0mm

Package Type

SMD-16 (half-hole pads)

Product Overview

The ESP-07S ESP8266 Serial WiFi Module is a professional-grade, compact wireless communication module designed for IoT applications requiring robust connectivity in a space-constrained form factor. Developed by Ai-Thinker, a leading manufacturer of IoT communication solutions, this module represents an optimized evolution of the ESP-07 platform, offering enhanced performance and simplified integration .

Built around the powerful ESP8266EX chip from Espressif Systems, the ESP-07S integrates a Tensilica L106 32-bit microcontroller with a complete Wi-Fi solution, including a TCP/IP protocol stack, onboard PA, LNA, and matching network . This allows the module to function either as a standalone application processor or as a Wi-Fi adapter for other microcontrollers, providing exceptional flexibility for your design needs .

The ESP-07S features a U.FL/IPEX connector for external antenna attachment, allowing you to overcome signal attenuation issues common when modules are mounted inside metal enclosures or when extended range is required . Unlike its predecessor (ESP-07), the ESP-07S uses a PCB trace antenna by default, with the option to connect an external antenna via the U.FL connector, offering a more streamlined and cost-effective design .

With its compact SMD-16 package (16mm × 17mm × 3mm) and industrial temperature rating (-40°C to +125°C), the ESP-07S is designed for automated assembly and reliable operation in demanding environments . Whether you’re building smart home devices, industrial wireless sensors, or wearable electronics, the ESP-07S delivers the performance, range, and reliability your project demands.


Key Features

  • Powerful 32-bit Processor: Built around the Tensilica L106 32-bit RISC processor running at 80 MHz (upgradable to 160 MHz), providing ample processing power for IoT applications without requiring an external microcontroller .

  • Industrial Temperature Range: Rated for operation from -40°C to +125°C, making it suitable for demanding industrial environments, outdoor installations, and automotive applications .

  • Complete Wi-Fi Solution: Supports 802.11 b/g/n protocols at 2.4GHz with integrated TR switch, balun, LNA, power amplifier, and matching network . Delivers up to +20dBm output power in 802.11b mode with excellent receiver sensitivity down to -98dBm .

  • External Antenna Support: Features a U.FL/IPEX connector for attaching an external antenna, enabling extended range and overcoming signal attenuation when modules are mounted inside metal enclosures .

  • Rich Peripheral Interfaces: Provides UART, GPIO, I2C, I2S, HSPI, PWM, and 10-bit ADC interfaces, allowing connection to a wide variety of sensors, actuators, and display devices .

  • Multiple Operating Modes: Supports Station (STA), Access Point (AP), and Station+AP modes, enabling devices to connect to existing networks or create their own .

  • Ultra-Low Power Consumption: Features multiple sleep modes with deep sleep current as low as 10µA and standby power consumption less than 1.0mW (DTIM3) . Wake up and transmit packets in less than 2ms, enabling efficient power management for battery-powered applications .

  • Smart Configuration Support: Compatible with Smart Config and AirKiss one-click network configuration technologies, simplifying device onboarding for Android and iOS devices .

  • SMD Package for Automated Assembly: The 16-pin SMD package (half-hole pads) is designed for automated surface-mount assembly, making it suitable for large-scale production while remaining accessible for hand soldering .

  • Abundant Flash Memory: Equipped with 4MB (32Mbit) flash memory, providing ample storage for complex applications and OTA (Over-The-Air) firmware updates .

  • Comprehensive Security: Supports WPA/WPA2 security protocols, ensuring secure wireless communication .


Technical Specifications

Parameter Operating Value
Module Model ESP-07S
Core Chip ESP8266EX
Processor Tensilica L106 32-bit RISC
Clock Speed 80 MHz (supports 160 MHz)
Flash Memory 4 MB (32 Mbit)
SRAM 80 KB
Operating Voltage 3.0V – 3.6V DC
Peak Current 300mA (transmitting)
Average Current 80mA
Deep Sleep Current < 10 µA
Standby Current (DTIM3) < 1.0 mW
Wake-up Time < 2 ms
Wireless Standard 802.11 b/g/n
Frequency Band 2.4 GHz (2400 MHz – 2483.5 MHz)
Output Power +20 dBm (802.11b mode)
Receiver Sensitivity -98 dBm
Antenna PCB trace antenna + U.FL/IPEX connector
Interfaces UART, GPIO, I2C, I2S, HSPI, PWM, ADC
ADC Resolution 10-bit
Operating Temperature -40°C to +125°C
Module Dimensions 16.0mm × 17.0mm × 3.0mm
Package Type SMD-16 (half-hole pads)
Weight Approx. 2.1g

Pinout & Interface Guide

The ESP-07S features a 16-pin SMD package with half-hole pads for easy soldering. The pin definitions are as follows :

Pin Name Function Description
1 RST Reset pin (active LOW). Pull LOW to reset the module.
2 ADC Analog-to-Digital Converter input. 10-bit resolution, input range 0-1V.
3 EN / CH_PD Chip Enable (active HIGH). Pull HIGH for normal operation.
4 IO16 GPIO16. Can be connected to RST for deep sleep wake-up.
5 IO14 GPIO14. HSPI_CLK, I2C_SCL.
6 IO12 GPIO12. HSPI_MISO.
7 IO13 GPIO13. HSPI_MOSI, UART0_CTS.
8 VCC 3.3V power supply (3.0V – 3.6V).
9 GND Ground.
10 IO15 GPIO15. HSPI_CS, UART0_RTS. Pull LOW for boot.
11 IO2 GPIO2. UART1_TXD, I2C_SDA.
12 IO0 GPIO0. Pull LOW for programming mode.
13 IO4 GPIO4.
14 IO5 GPIO5.
15 RXD0 UART0 Receive Data (GPIO3).
16 TXD0 UART0 Transmit Data (GPIO1).

Boot Mode Configuration

The ESP-07S’s boot mode is determined by the state of GPIO0, GPIO2, and GPIO15 :

Mode GPIO0 GPIO2 GPIO15
UART Download (Programming) LOW HIGH LOW
Flash Boot (Normal Operation) HIGH HIGH LOW

Important: GPIO15 must be pulled LOW during boot for both modes. GPIO2 must be HIGH during boot.


Usage Guide

Power Supply Requirements

The ESP-07S requires a stable 3.3V DC power supply capable of providing at least 300mA during peak operation . For reliable operation:

  • Use a low-dropout regulator (LDO) such as AMS1117-3.3 or LM1117-3.3

  • Add a 10µF to 100µF electrolytic capacitor and a 0.1µF ceramic capacitor close to the VCC pin for power decoupling

  • Do not apply 5V to any pin—this will permanently damage the module

Antenna Selection

The ESP-07S features a PCB trace antenna by default, which is suitable for most applications. For extended range or when the module is mounted inside a metal enclosure, you can connect an external 2.4GHz antenna (e.g., 2-3dBi rubber duck antenna) to the U.FL/IPEX connector .

Note: Unlike the ESP-07, the ESP-07S does not require removing a zero-ohm resistor to switch antennas—the external antenna connection is readily available .

Programming the ESP-07S

There are several ways to program the ESP-07S:

Method 1: Using a USB-to-TTL Adapter

This is the simplest method for programming the module :

USB-TTL Adapter ESP-07S Pin Notes
3.3V VCC (pin 8) Power
GND GND (pin 9) Ground
TX RXD0 (pin 15) Cross-connect (TX → RX)
RX TXD0 (pin 16) Cross-connect (RX → TX)

Enter Programming Mode:

  1. Connect GPIO0 (pin 12) to GND

  2. Connect GPIO15 (pin 10) to GND

  3. Connect EN (pin 3) to VCC (pull HIGH)

  4. Apply power or reset (pull RST LOW momentarily)

  5. Upload firmware via Arduino IDE or esptool

  6. After upload, disconnect GPIO0 from GND and reset

Development Environments

  • Arduino IDE: Install ESP8266 board support via Boards Manager, select “Generic ESP8266 Module”

  • PlatformIO: Professional development environment with ESP8266 support

  • MicroPython: Lightweight Python implementation for rapid prototyping

  • AT Command Firmware: Pre-loaded firmware that allows control via simple serial commands

Basic Arduino Example Code

cpp
// ESP-07S Simple Wi-Fi Connection Example
#include <ESP8266WiFi.h>

const char* ssid = "your_SSID";
const char* password = "your_PASSWORD";

void setup() {
  Serial.begin(115200);
  Serial.println("\nESP-07S Wi-Fi Test");
  
  // Connect to Wi-Fi
  WiFi.begin(ssid, password);
  Serial.print("Connecting to Wi-Fi");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  
  Serial.println("\nConnected successfully!");
  Serial.print("IP Address: ");
  Serial.println(WiFi.localIP());
}

void loop() {
  // Your code here
}

AT Command Example

With the default AT firmware, the ESP-07S can be controlled via simple serial commands :

text
AT                    // Check communication
AT+CWMODE=1           // Set to Station mode
AT+CWJAP="SSID","PASSWORD"  // Connect to Wi-Fi
AT+CIPSTART="TCP","192.168.1.100",80  // Open TCP connection
AT+CIPSEND=5          // Send data
> HELLO                // Data to send
Q: What is the difference between ESP-07 and ESP-07S?

The ESP-07S is an optimized version of the ESP-07. Key differences include:

  • Antenna: ESP-07S uses a PCB trace antenna with U.FL connector; ESP-07 uses a ceramic antenna

  • Size: ESP-07S is slightly more compact

  • Simplified design: The ESP-07S has a streamlined circuit with fewer external components

Q: Can the ESP-07S operate as a standalone microcontroller?

Yes. The ESP8266EX chip includes a 32-bit processor capable of running application code directly. You can program it with Arduino, MicroPython, or the ESP8266 SDK without requiring an external microcontroller

Q: How many GPIO pins are available on the ESP-07S?

The ESP-07S provides access to 11 GPIO pins (IO0, IO2, IO4, IO5, IO12, IO13, IO14, IO15, IO16, RXD0, TXD0)

Q: What is the maximum range of the ESP-07S with external antenna?

With a suitable external antenna (e.g., 3dBi rubber duck antenna), the ESP-07S can achieve ranges of 100-300 meters in open space, depending on environmental conditions

Q: Does the ESP-07S support Bluetooth?

No. The ESP8266 series is Wi-Fi only. For Bluetooth capability, consider the ESP32 series

Q: What voltage does the ESP-07S require?

The ESP-07S requires a stable 3.3V DC power supply. The operating range is 3.0V to 3.6V . Never apply 5V to the VCC pin or any GPIO pin—this will destroy the module

Q: How much current does the ESP-07S draw?

Current consumption varies by operating mode :

  • Transmitting: Up to 300mA peak

  • Normal operation: Approximately 80mA average

  • Deep sleep: <10µA

  • Standby (DTIM3): <1.0mW

Q: Can I power the ESP-07S with batteries?

Yes. The ESP-07S’s low power consumption makes it suitable for battery-powered applications. A single 18650 lithium-ion cell (3.7V) can be used with a 3.3V LDO regulator. With proper deep sleep management, battery life of months to over a year is achievable

Q: Why does my ESP-07S not boot?

Common boot issues include :

  • GPIO15 not pulled LOW during boot

  • GPIO0 pulled LOW (this enters programming mode)

  • EN/CH_PD not connected to VCC

  • Insufficient power supply (current sag during startup)

  • Missing pull-up on GPIO2 (should be HIGH during boot)

Q: How do I put the ESP-07S into programming mode?

To enter programming (UART download) mode :

  1. Pull GPIO0 LOW (connect to GND)

  2. Pull GPIO15 LOW (connect to GND)

  3. Pull GPIO2 HIGH (connect to VCC)

  4. Pull EN HIGH (connect to VCC)

  5. Apply power or pulse RST LOW

Q: Why can't I upload code to my ESP-07S?

Common upload issues :

  • GPIO0 not held LOW during power-on/reset

  • Incorrect serial connections (TX to RX, RX to TX)

  • Insufficient power supply (USB-to-TTL adapters may not provide enough current)

  • Wrong board selection in Arduino IDE (select “Generic ESP8266 Module”)

  • Missing pull-down on GPIO15

Q: What is the baud rate for programming?

The ESP-07S communicates at 115200 baud for programming by default, though the bootloader outputs diagnostic information at 74880 baud. For reliable programming, use 115200 baud

Q: Can I use the ESP-07S with Arduino IDE?

Yes. Install the ESP8266 board package via Boards Manager, then select “Generic ESP8266 Module” as the board. Configure the flash size (4MB) and upload speed (115200) appropriately

Q: What is the difference between deep sleep and normal operation?

Deep sleep is an ultra-low power mode that shuts down most of the module’s functions, reducing current consumption to <10µA . The module can wake up and transmit data in less than 2ms, making it ideal for battery-powered applications that only need to transmit data intermittently

Q: How do I connect an external antenna to the ESP-07S?

The ESP-07S features a U.FL/IPEX connector. Simply snap a compatible 2.4GHz antenna onto the connector. Ensure the antenna has the correct impedance (50 ohms) and is designed for 2.4GHz operation

Q: What can I build with the ESP-07S?

Popular applications include :

  • Smart home devices and automation systems

  • Industrial wireless sensors and monitoring

  • Remote data logging and telemetry

  • Weather stations and environmental monitors

  • Wearable electronics and health monitors

  • Wireless location sensing and tracking

Q: Is the ESP-07S suitable for industrial applications?

Yes. The ESP-07S’s industrial temperature rating (-40°C to +125°C), SMD package for automated assembly, and robust RF performance make it suitable for industrial IoT applications

Q: Can I use the ESP-07S with a PLC or industrial controller?

Yes. The ESP-07S can communicate with PLCs via UART, I2C, or SPI interfaces. The 3.3V logic level may require level shifting for compatibility with 5V or 24V PLC systems

Q: What firmware options are available?

Popular firmware choices include :

  • AT Command Firmware: Default firmware for co-processor mode

  • Tasmota: Open-source firmware for smart home devices

  • ESPEasy: User-friendly firmware for sensor applications

  • MicroPython: Python-based development

  • Arduino/C++: Custom code via Arduino IDE