ESP32 + W5500 (SPI Ethernet) TCP Client Example — Full Guide
A complete ESP32 + W5500 TCP client example using SPI Ethernet, static IP, and ESP-IDF 5.5.x. Reliable wired networking for industrial IoT.
Software Apps and online services
1️⃣ Overview
ESP32 includes built-in Wi-Fi, but for industrial, high-noise, or secure environments,
wired Ethernet (W5500) is more stable and predictable.
This guide explains how to use ESP32 + WIZ550io(W5500) with ESP-IDF 5.5.x,
covering:
- Example project creation command
- Hardware wiring
- Full menuconfig settings
- Ethernet initialization
- Build & flash
- Testing (TCP/iperf)
Everything is aligned with your exact GPIO configuration.

2️⃣ Install ESP-IDF
- After installing ESP-IDF Tools:
- Check version:
- Expected:
3️⃣ Create an Example Project (TCP Client)
ESP-IDF provides ready-to-use examples for the W5500 component.
✔ Create TCP Client Example
- Or create the iperf example:
- Move into project directory:
4️⃣ Hardware Wiring (Your exact GPIO pins)
| W5500 Pin | ESP32 GPIO | Notes |
|---|---|---|
| SCLK | GPIO14 | SPI Clock |
| MOSI | GPIO13 | SPI MOSI |
| MISO | GPIO12 | SPI MISO |
| CS | GPIO15 | Chip Select |
| INT | GPIO4 | Optional interrupt |
| RESET | Not connected (set to -1) | |
| 3.3V | 3.3V | Power |
| GND | GND | Ground |
5️⃣ Configure ESP-IDF (menuconfig)
- Run the config menu:
✔ 5.1 Enable Ethernet
✔ 5.2 Disable Internal EMAC
(W5500 SPI Ethernet cannot be combined with internal EMAC)



