---
title: "pio-wiznet_5500_evb_pico-webserver"
url: "https://maker.wiznet.io/simons/projects/pio-wiznet-5500-evb-pico-webserver/"
markdown_url: "https://maker.wiznet.io/simons/projects/pio-wiznet-5500-evb-pico-webserver/md"
type: "UCC: User Created Content"
author: "Maximilian Gerhardtma"
author_url: "https://github.com/maxgerhardt/pio-wiznet_5500_evb_pico-webserver"
editor: "WIZnet"
editor_url: "https://maker.wiznet.io/"
original_author: "Maximilian Gerhardtma"
original_url: "https://github.com/maxgerhardt/pio-wiznet_5500_evb_pico-webserver"
published: "2023-06-16"
language: "en"
hardware: ["WIZnet W5500-EVB-Pico"]
likes: 1
views: 235
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# pio-wiznet_5500_evb_pico-webserver

> pio-wiznet_5500_evb_pico-webserver guide

Original author: Maximilian Gerhardtma (source: https://github.com/maxgerhardt/pio-wiznet_5500_evb_pico-webserver)

## Components

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

## Article

![](https://maker.wiznet.io/upload/ckeditor5/290545536%5F1686910198%2Epng)

The project above is the code for "HelloServer", a simple web server that works using an Ethernet shield. The code works by utilizing the SPI bus, which is responsible for communication between the Arduino board and the Ethernet shield.

Here are the main elements and behaviors

The top of the code contains the library used, EthernetWebServer. This library provides web server functionality for the Ethernet shield.
An EthernetWebServer object named server is created and initialized with port number 80.
An integer variable named led is assigned the LED pin number, 13.
The handleRoot() function handles requests coming in at the "/" URI, and sends the message "Hello from HelloServer running on [board name]" as the response.
The handleNotFound() function handles cases where the URI does not exist, and sends the requested URI, method, arguments, and other information as a response with the message "File Not Found".
The setup() function initializes serial communication, prints the HelloServer's startup message, initializes Ethernet, and gets an IP address through DHCP.
In the loop() function, we call server.handleClient() to handle client requests.

---

Source: https://maker.wiznet.io/simons/projects/pio-wiznet-5500-evb-pico-webserver/
