---
title: "ESP32에 W5500 연결하여 Ethernet 사용하기 - TCP_Server"
url: "https://maker.wiznet.io/WIZnet/projects/esp32%EC%97%90-w5500-%EC%97%B0%EA%B2%B0%ED%95%98%EC%97%AC-ethernet-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0-tcp-server/"
markdown_url: "https://maker.wiznet.io/WIZnet/projects/esp32%EC%97%90-w5500-%EC%97%B0%EA%B2%B0%ED%95%98%EC%97%AC-ethernet-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0-tcp-server/md"
type: "UCC: User Created Content"
author: "becky"
author_url: "https://blog.naver.com/jcm931213/222301145089"
editor: "WIZnet"
editor_url: "https://maker.wiznet.io/"
original_author: "becky"
original_url: "https://blog.naver.com/jcm931213/222301145089"
published: "2023-02-09"
language: "ko"
hardware: ["WIZnet WIZ850io"]
likes: 4
views: 477
comments: 1
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# ESP32에 W5500 연결하여 Ethernet 사용하기 - TCP_Server

> ESP32 Module에 Hardwired Ethernet Mdoule인 W5500을 연결하여 protocols-sockets- tcp_server example 실행 과정에 대해 설명합니다.

Original author: becky (source: https://blog.naver.com/jcm931213/222301145089)

## Components

- **WIZnet WIZ850io** x 1 ([docs](https://docs.wiznet.io/Product/ioModule/WIZ850io))

## Documents and links

- [ESP32-IDF](https://maker.wiznet.io/_lib/download.asp?path=project/8592&downfile=esp%2Didf%2Dtools%2Dsetup%2D2%2E30%2Eexe)

## Article

ESP32 Module은 ESP-IDF SDK를 이용하여 다양한 예제들을 응용할 수 있습니다.

​

이 글에서는 그중에서도 Hardwired Ethernet Mdoule인 W5500을 연결하여 protocols-sockets- tcp_server example 실행 과정에 대해 설명합니다.

​

이 글을 읽기전에 먼저 아래 글을 읽고 오시기 바랍니다.

<https://blog.naver.com/jcm931213/222300813578>

[![](https://dthumb-phinf.pstatic.net/?src=%22https%3A%2F%2Fblogthumb.pstatic.net%2FMjAyMTA0MDZfOTYg%2FMDAxNjE3Njk2ODQxNTUz.qLJH5wbBtQ_TM8DV_Ch9QSd0UFgRONygKmxIYPSygPIg.tc4X5kZnqfBSdWyKoVDshqNOJrMPUHutnwHgbZsDbK8g.PNG.jcm931213%2Fpinmap.PNG%3Ftype%3Dw2%22&type=ff500_300)](https://blog.naver.com/jcm931213/222300813578)

**ESP32에 W5500 연결하여 Ethernet 사용하기 – Basic**

ESP32 Module은 ESP-IDF SDK를 이용하여 다양한 예제들을 응용할 수 있습니다.​이 글에서는 …

blog.naver.com

​

Step 1 : Example Configuration

– 실행할 Example 폴더로 경로를 이동합니다.

cd esp–idf/example/protocols/sockets/tcp_server

​

– Example configuration 을 위한 menuconfig를 실행합니다.

idf.py menuconfig

![](https://blogfiles.pstatic.net/MjAyMTA0MDZfOSAg/MDAxNjE3NzA0MDEwNzYw.SZ6AX2KyvU2Ktcp0jVntmXGE20-GTNC2QYhQUyWYRrsg.58pQ8k0Xe3wpeR7JLkGkwbu3AipIqqdWy-vrlD8x_z8g.PNG.jcm931213/menuconfig.PNG?type=w1)

​

– Example Configuration 을 통해 Ethernet Interface로 W5500 Module을 설정하고 SPI Interface 등의 Hardware 연결을 설정합니다.

![](https://postfiles.pstatic.net/MjAyMTA0MDZfMTY3/MDAxNjE3NzIwMDYyMDE5.is5RyvNPLyrAXzIECjrzgehuSwx2x7jxYXcNPppi71Yg.Pug2dnObd4mvsPEBNL6iEqg2gA6putwMG24ZgnT6aWgg.PNG.jcm931213/image.png?type=w966)

– 장치관리자를 통해 ESP 가 연결된 port를 확인합니다.

![](https://blogfiles.pstatic.net/MjAyMTA0MDZfMjMg/MDAxNjE3NzA0NjE0MzUw.pGlNmMcgFHZ8JeeMU_ljRyjkAL6Ol7PBycdsXFu5RZog.TlHih2kBG_-kYEP0munW5iBa5rx2x93kbczHGq5QtIkg.PNG.jcm931213/image.png?type=w1)

​

Step 4 : TCP_Sever Example 실행

– program을 build하고 flash에 업로드하여 출력을 확인합니다. 이때 COM7에는 장치관리자에서 확인한 ESP32 Module의 COM Port를 입력합니다.

idf.py –p COM7 build flash monitor

​

– 프로그램 출력을 확인합니다.

TCP Server를 open하였습니다. IP는 공유기로부터 192.168.0.44를 할당받았고 Listen port는 3333임을 확인하실 수 있습니다.

![](https://postfiles.pstatic.net/MjAyMTA0MDZfMTIw/MDAxNjE3NzIwMjg5MTY1.ilh_0bB_M0SzirjCNk87FVAKLOkngStd3t6mTu0d3Hwg.SZgJ6FhoOuul0h_AGtWS9QaTTj6CbfGuwR07m1wiJ_Eg.PNG.jcm931213/image.png?type=w966)

​

– 만약 TCP Server의 변경하고싶으시면

idf.py menuconfig

​

​

– TCP Server를 오픈하였으므로 TCP Client로 TCP Server에 접속을 시도합니다.

이 글에서는 TCP Client 역학을 위해 Hercules를 선택하였으며, 다른 Tool이나 Python 등을 이용하셔도 됩니다.

다만 ESP32 Module과 같은 네트워크망에 연결되어 있어야 합니다.

TCP Server의 IP와 Port 번호를 입력하고 Connect를 입력합니다.

![](https://postfiles.pstatic.net/MjAyMTA0MDZfMTcz/MDAxNjE3NzIwNjAzNjQz.c0nfBNiHEesr20NE-nS9TfsGxMDtHjcDOHCtwKFMQmUg.LQMq7dIORN__f8ZCFqfRK32_EQ9c7uuYvC3tRhl-8Jgg.PNG.jcm931213/image.png?type=w966)

​

– Connect에 성공하면 Serial 출력을 통해 확인하실 수 있습니다. ESP32에 접속을한 PC의 IP는 192.168.0.232 임을 확인할 수 있습니다.

![](https://postfiles.pstatic.net/MjAyMTA0MDZfMjc4/MDAxNjE3NzIwNjg5NTgx._u0yffomMtcWto52ibaGpgrUg-72V3OtXTUdwHDZOjQg.G42d1kQW_0eQuXDzvVLrQNvs_6vX3tmP6QHvFS27DBcg.PNG.jcm931213/image.png?type=w966)

​

– 데이터 수신테스트를 시도해봅니다. Hercules에서 ESP32 Module에 전송할 간단한 Message를 입력하고 Send 버튼을 클릭합니다.

![](https://postfiles.pstatic.net/MjAyMTA0MDZfMjIx/MDAxNjE3NzIwODM1OTE4.iUO0oHYiiJroZf1Sxy29yrHx0Uh6AIn-WNfUvHmHv0Ug.1sLxcLcclXX5-VoiuuPeinhgIEGqRgFIYkSFzBxrqcwg.PNG.jcm931213/image.png?type=w966)

​

– Serial monitor를 통해 TCP Client에서 전송한 Message를 확인 할 수 있습니다.

![](https://postfiles.pstatic.net/MjAyMTA0MDZfNzYg/MDAxNjE3NzIwOTEwMjQ0.XOIrc9WWDglAgLeJE1bR9WwexWlY5Mj1e149-jY3lHUg.afJK4E6b0mGjOjJMpaw2zajFl9pBxN8FXK9Q0_VIAhwg.PNG.jcm931213/image.png?type=w966)

– 이 예제에서 코드를 확인해보면 TCP Server는 수신한 Data를 loopback 합니다.

![](https://postfiles.pstatic.net/MjAyMTA0MDdfMTgx/MDAxNjE3NzIxMjMxMzgz.1cikBF8QpTeHuDbfku1w_GqeLW42HMrUHsvAr6kR7log.mYSdS19LvFi5CctgNZ3_8J1F0u-0fhcvuN0Q4gAFXfgg.PNG.jcm931213/image.png?type=w966)

​

– Heculrs 에서 ESP32 가 전송한 데이터를 확인할 수 있습니다. 핑크색 글씨는 TCP Client가 전송한 데이터가 Echo된 것이고, 검정색 글씨는 ESP32로부터 수신한 데이터 입니다.

![](https://postfiles.pstatic.net/MjAyMTA0MDdfNDgg/MDAxNjE3NzIxMzI5NDcx.lk4nhjzh-mrJgajcN-pkaWMej2tJJwGkv2GQFHSh3cIg.5UkxiSpL1BauUNp_9dcKiofbPlyLU05biLKCOBAhD-og.PNG.jcm931213/image.png?type=w966)

---

Source: https://maker.wiznet.io/WIZnet/projects/esp32%EC%97%90-w5500-%EC%97%B0%EA%B2%B0%ED%95%98%EC%97%AC-ethernet-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0-tcp-server/
