How to Use W5500 Ethernet Shield with Arduino: Easy Guide

How to Use W5500 Ethernet Shield with Arduino: Easy Guide

The Ethernet Shield W5500 is an expansion card that allows the Arduino boards to be remotely connected to an Ethernet network, and therefore to the Internet (if connected).

W5500 Ethernet Shield Specifications

  • Supply voltage: 5V;
  • Interface: SPI;
  • Network protocols: TCP, UDP;
  • Network interfaces: 10Mbit / 100Mbit;
  • Internal buffer size: 32 kBytes;
  • Operation modes: duplex / half duplex;
  • LED indication;

W5500 Ethernet Shield Connection

The Ethernet Shield W5500 is compatible with various Arduino microcontrollers and can be mounted on Arduino UNO, Leonardo, Mega.

The Ethernet Shield W5500 is mounted on top of the control board.

More About Ethernet Shield

The Ethernet Shield W5500 can be your gateway to the LAN or WAN as well as to the Internet of Things by allowing you to work with more Arduino boards that you can place anywhere you want.

This Shield boasts a number of good technical solutions, which we’ll talk about below.

Voltage regulator

A voltage regulator can help provide a stable power supply for the W5500 chip on the expansion card. Usually, this chip is fed directly from the 3.3V voltage output on the Arduino board, but if the voltage on the Arduino itself drops, the chip on the Shield may not work correctly. If you are powering the chip through a regulator, this will definitely not happen since the regulator input is 5V, which is already converted into a strong, stable 3.3V.

The SPI Pad

The Shield operates over the SPI bus and therefore uses the Arduino pins reserved for this case (different for each board). However, all Arduino boards have a special ICSP-signed pad that has the SPI bus pins parallel to each other.

W5500 Ethernet Shield

The Ethernet Shield W5500 also has a separate block that has these pins, making it easy to install on most Arduino/Piranha boards: UNO, ULTRA, MEGA, LEONARDO. Then, you just have to install the expansion board on top, and you are ready to work!


The pins that are dedicated to the SPI bus are reserved on the control boards as follows:

  • For Arduino UNO/ULTRA: MOSI – 11, MISO – 12, SCK – 13, SS – 10;
  • for Arduino MEGA: MISO – 50, MOSI – 51, SCK – 52, SS – 53;

However, the Ethernet Shield expansion board allows you to change the SS pin to any available digital pin. There are jumpers on the board for this purpose, with a jumper soldered across from pin 10. If necessary (other equipment is already connected to the SPI bus or to pin 10), you can open this jumper and solder opposite the desired pin, thus changing the SS (Select Slave) pin to the one you need.

MAC Address

The MAC address (Media Access Control) is a unique six-byte identifier for Ethernet devices.

The Arduino IDE library allows you to set any MAC address for the Ethernet Shield W5500. Although the main requirement is that it must be unique on the LAN, network equipment may not recognize the Ethernet Shield if the high byte of the MAC address is not configured correctly. The examples below use the following MAC address:

0xDE 0xAD 0xBE 0xEF 0xFE 0xED
High byte Low byte

If it is necessary to insist on several devices in the network, it is recommended to change the least significant byte.

Related Video: Using Arduino Ethernet Shield

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top