

The WIZ820io is an Ethernet module designed to provide a straightforward solution for connecting microcontrollers to the internet. It is built around the W5500 Ethernet chip, which includes a hardware TCP/IP stack, enabling efficient and reliable network communication. The module is compact, easy to integrate, and supports high-speed SPI communication, making it ideal for projects requiring internet connectivity.








The WIZ820io module is designed for high performance and ease of use. Below are its key technical specifications:
| Parameter | Value |
|---|---|
| Ethernet Controller | W5500 |
| Communication Interface | SPI (Serial Peripheral Interface) |
| Operating Voltage | 3.3V |
| Current Consumption | 132mA (typical) |
| Network Protocols | TCP, UDP, IPv4, ICMP, ARP, IGMP |
| Data Transfer Rate | 10/100 Mbps |
| Dimensions | 23mm x 25mm |
| Operating Temperature | -40°C to +85°C |
The WIZ820io module has a 2x6 pin header for interfacing with microcontrollers. Below is the pinout:
| Pin | Name | Description |
|---|---|---|
| 1 | GND | Ground connection |
| 2 | 3.3V | Power supply (3.3V) |
| 3 | SCLK | SPI clock input |
| 4 | MISO | SPI Master-In-Slave-Out (data output from WIZ820io) |
| 5 | MOSI | SPI Master-Out-Slave-In (data input to WIZ820io) |
| 6 | CS | SPI chip select (active low) |
| 7 | INT | Interrupt output (active low, optional use) |
| 8 | RST | Reset input (active low) |
| 9 | NC | Not connected |
| 10 | NC | Not connected |
| 11 | NC | Not connected |
| 12 | NC | Not connected |
Below is an example of how to use the WIZ820io with an Arduino UNO to establish a basic Ethernet connection:
#include <SPI.h>
#include <Ethernet.h>
// MAC address for the Ethernet module
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
// IP address for the device (adjust as needed)
IPAddress ip(192, 168, 1, 177);
// Initialize the Ethernet server on port 80
EthernetServer server(80);
void setup() {
// Start the serial communication for debugging
Serial.begin(9600);
while (!Serial) {
; // Wait for the serial port to connect (for Leonardo boards)
}
// Start the Ethernet connection
if (Ethernet.begin(mac) == 0) {
Serial.println("Failed to configure Ethernet using DHCP");
// If DHCP fails, use a static IP address
Ethernet.begin(mac, ip);
}
// Print the assigned IP address
Serial.print("IP Address: ");
Serial.println(Ethernet.localIP());
// Start the server
server.begin();
}
void loop() {
// Listen for incoming clients
EthernetClient client = server.available();
if (client) {
Serial.println("New client connected");
// Send a basic HTTP response
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connection: close");
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.println("<h1>Hello from WIZ820io!</h1>");
client.println("</html>");
delay(1); // Give the client time to receive the data
client.stop(); // Close the connection
Serial.println("Client disconnected");
}
}
mac and ip values with those suitable for your network.No Ethernet Connection:
Module Not Responding:
DHCP Fails:
By following this documentation, you should be able to successfully integrate the WIZ820io module into your projects and troubleshoot common issues effectively.