---
title: "w5500-evb-pico-esphome"
url: "https://maker.wiznet.io/lawrence/projects/w5500-evb-pico-esphome-1/"
markdown_url: "https://maker.wiznet.io/lawrence/projects/w5500-evb-pico-esphome-1/md"
type: "UCC: User Created Content"
author: "Maximilian Gerhardt"
author_url: "https://github.com/maxgerhardt/w5500-evb-pico-esphome/tree/main"
editor: "WIZnet"
editor_url: "https://maker.wiznet.io/"
original_author: "Maximilian Gerhardt"
original_url: "https://github.com/maxgerhardt/w5500-evb-pico-esphome/tree/main"
license: "MIT license (MIT)"
published: "2025-05-14"
language: "en"
tags: ["W5500", "ESPHome", "Smart Home"]
hardware: ["WIZnet W5500-EVB-Pico"]
likes: 0
views: 5537
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# w5500-evb-pico-esphome

> This repository shows the usage of a standard WIZnet W5500-EVB-Pico board with ESPHome.

Original author: Maximilian Gerhardt (source: https://github.com/maxgerhardt/w5500-evb-pico-esphome/tree/main)

## Components

- **WIZnet W5500-EVB-Pico** x 1 ([docs](https://docs.wiznet.io/Product/Chip/Ethernet/W5500/w5500-evb-pico))
- Software: **Nabu Casa ESPHome** ([docs](https://esphome.io))

## Documents and links

- [Code](https://github.com/maxgerhardt/w5500-evb-pico-esphome/tree/main) (code)

## Article

### ✅ W5500-EVB-Pico + ESPHome를 활용한 유선 이더넷 스마트 디바이스

#### 🔧 기본 전제

ESPHome는 일반적으로 **ESP32, ESP8266**과 같은 SoC 내장 Wi-Fi 기반 보드에 최적화되어 있습니다.
그러나 이 프로젝트는 ESPHome을 **RP2040 + W5500 이더넷 기반** 보드에서 구동하는 실험적인 시도입니다.

#### ⚙️ PlatformIO 설정 (커스텀 환경 구성)

```plaintext
ini

[env:w5500-evb-pico] 
platform = raspberrypi
board = rpipico
framework = arduino 
build_flags = 
    -DESPHOME_W5500_ETHERNET
monitor_speed = 115200 
lib_deps = 
    esphome/esphome@2.0.0-dev
```

- `-DESPHOME_W5500_ETHERNET`: 이 플래그를 통해 ESPHome 내부에서 **W5500 이더넷 스택을 활성화**합니다.

- `lib_deps`: ESPHome 개발 버전을 명시하여 이더넷 지원 포함.

### 🔧 **하드웨어 구성**

| 구성 요소 | 내용 |
| --- | --- |
| **MCU** | Raspberry Pi Pico (RP2040) – 듀얼코어 ARM Cortex-M0+ |
| **WIZnet 제품** | W5500-EVB-Pico 보드 사용 (W5500 + RP2040 일체형 보드) |
| **통신 인터페이스** | SPI (RP2040 ↔ W5500 간 연결) |
| **이더넷 인터페이스** | RJ45 포트를 통한 유선 이더넷 (PHY 포함) |
| **전원 구성** | USB-C 또는 외부 3.3V/5V 공급 가능 |
| **외부 센서/모듈** | 본 프로젝트에서는 없음 (ESPHome 통합 테스트 목적) |

### 💻 **소프트웨어 스택**

| 요소 | 내용 |
| --- | --- |
| **Firmware Framework** | ESPHome (ESP32/ESP8266 기반이지만 RP2040용으로 수정) |
| **언어** | C++ (ESPHome, Arduino 호환 코드) |
| **Build 환경** | PlatformIO (ESPHome 컴파일용으로 수정) |
| **네트워크 스택** | LwIP를 직접 사용하지 않고 ESPHome 네트워크 레이어에 통합 |
| **디바이스 등록** | mDNS 및 Home Assistant에서 자동 인식 (ESPHome 표준) |

### 🔌 **동작 흐름**

```plaintext
1. W5500-EVB-Pico 보드 부팅
2. SPI를 통해 W5500 초기화
3. DHCP 또는 Static IP로 이더넷 네트워크에 연결
4. ESPHome의 기본 디바이스로 등록 (LED, 센서 없음 – 기본 통신 테스트)
5. Home Assistant 등과 연동하여 상태 확인
```

이 프로젝트는 실제 디바이스 제어보다는 **W5500 기반 유선 네트워크를 ESPHome에 통합 가능함을 검증**하는 목적입니다.

### 📡 **통신 프로토콜**

| 항목 | 내용 |
| --- | --- |
| **IP 할당** | DHCP (또는 static IP 가능) |
| **애플리케이션 프로토콜** | ESPHome → Home Assistant 연동 (mDNS, REST, API) |
| **전송 계층** | TCP/IP (W5500이 하드웨어 오프로드 처리) |

### ⭐ **WIZnet W5500의 가치**

| 기능 | 설명 |
| --- | --- |
| ✅ **하드웨어 TCP/IP 스택** | MCU 부담 최소화, 안정적인 연결 제공 |
| ✅ **유선 통신** | Wi-Fi 불안정 환경에서 높은 안정성 보장 |
| ✅ **ESPHome 통합성** | W5500이 ESP8266/ESP32 없이도 사용 가능함을 증명 |
| ✅ **저전력 & 고속 통신** | SPI 기반으로 MCU 자원 절약 및 빠른 패킷 처리 |

#### 📽️ 시연 / 결과

ESPHome 초기화 로그를 통해 **이더넷 연결 성공 여부** 확인 가능

Home Assistant에 등록되어 ping 응답 및 상태 표시

실제 센서나 디바이스는 연결하지 않았지만, ESPHome 네트워크 스택 통합 성공

#### 📎 유사 사례 및 확장 아이디어

| 사례 | 설명 |
| --- | --- |
| ESPHome + W5500 + DHT22 | 센서와 결합해 온도/습도 데이터를 유선 전송 |
| [Arduino + W5500 + MQTT](https://github.com/knolleary/pubsubclient) | MQTT 브로커에 데이터 전송 |
| [WIZnet 공식 예제](https://github.com/Wiznet-io/w5500evb_eth_tcp) | W5500 TCP 서버/클라이언트 예제들 다수 존재 |

#### ✅ 정리

이 프로젝트는 다음과 같은 의의를 가집니다:

**ESPHome 프레임워크의 유선 이더넷 지원 가능성 검증W5500 + RP2040 조합으로 저가형, 안정적인 스마트홈 노드 구현 가능Wi-Fi 없는 산업 환경 또는 IoT 허브 용도에 적합**

---

Source: https://maker.wiznet.io/lawrence/projects/w5500-evb-pico-esphome-1/
