WIZnet Ethernet HAT[RP2040] + HTTP WebServer

by louis_m in Circuits > Raspberry Pi

717 Views, 3 Favorites, 0 Comments

WIZnet Ethernet HAT[RP2040] + HTTP WebServer

A source from which a WIZnet Ethernet module becomes an HTTP server and another module becomes a Client.

Overview

hat.png
chip.jpg
rp2040.jpg
WIZnet Ethernet HAT (Hardware Attached on Top) is a Raspberry Pi Pico pin-compatible board that utilizes W5100S and supports both 3.3V & 5V.

Please refer to this link to find more information about W5100S.

  • Raspberry Pi Pico Pin-Compatible
  • Ethernet (W5100S Hardwired TCP/IP CHIP)
  • Product page : https://docs.wiznet.io/Product/iEthernet/W5100S/overview
  • Support 4 Independent Hardware SOCKETs simultaneously
  • Support SOCKET-less new Command: ARP-Request, PING-Request
  • Support Auto-MDIX only when Auto-Negotiation mode
RP2040 Datasheet - https://www.raspberrypi.org/documentation/microcontrollers/raspberry-pi-pico.html

Prepare

Circuitpython.png
lib.jpg
Prepare Hardware

1. Combine WIZnet Ethernet HAT with Raspberry Pi Pico.

2. Connect ethernet cable to Ethernet HAT ethernet port.

3. Connect Raspberry Pi Pico to desktop or laptop using 5 pin micro USB cable.

- If you use W5100S-EVB-Pico, you can skip '1. Combine...'

Prepare Software

1. Installing CircuitPython

Install CircuitPython on Raspberry Pi Pico by referring to the link above.

https://learn.adafruit.com/getting-started-with-raspberry-pi-pico-circuitpython/circuitpython

  • Download the below uf2 file link on your computer

CircuitPython 7.0.0 - https://downloads.circuitpython.org/bin/raspberry_pi_pico/en_US/adafruit-circuitpython-raspberry_pi_pico-en_US-7.0.0.uf2

2. Setup WIZnet Ethernet Library

Copy the WIZnet library into the lib folder inside the Raspberry Pi Pico. https://learn.adafruit.com/ethernet-for-circuitpython/circuitpython-setup

Before continuing, make sure your board's lib folder has at least the following files and folders copied over: https://github.com/Wiznet/RP2040-HAT-CircuitPython

adafruit_bus_device

adafruit_wiznet5k

adafrui_wsgi

adafruit_requests.py

Install Programs

PORT.jpg
Terminal.jpg

The following serial terminal program is required for HTTP Server test, download and install from below links.

Tera Term

Before this, you should find the Raspberry Pi Pico COM port number from "Device Manager" on your PC.

How to WebServer Example

lib copy.jpg
Webserver_1.PNG
Setup Webserver Example - download https://github.com/Wiznet/RP2040-HAT-CircuitPython/tree/master/examples/HTTP/Webserver

- Copy all code from download W5x00_WebServer.py file or below code section.

- Paste code into code.py on your Raspberry Pi Pico and Save it.

- Press "Ctrl+D" on the terminal window. you can see the messages as follows.


Start WebServer on Browser

Webserver_2.PNG
Webserver_4.PNG

if you open the HTML web page and enter 192.168.1.4, you will see the page. In addition, you will see the IP address of the server connected and WIZnet chip.

if you press the ON button below, the LED built into the Pico turns on.

LED On

Webserver_5.PNG
led_on.jpg

Turn on LED, Likewise, if you press OFF, the LED turns off.

Schematics

schematic.png