---
title: "W5500 ethernet module with Arduino GIGA R1 wifi"
url: "https://maker.wiznet.io/forum/15308"
markdown_url: "https://maker.wiznet.io/forum/15308/md"
type: "Forum topic"
category: "IO Modules"
author: "markieboy223"
created: "2024-10-17T02:19:56+09:00"
last_activity: "2024-10-17T02:35:01+09:00"
language: "en"
tags: ["W5500", "Arduino"]
views: 1
replies: 1
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# W5500 ethernet module with Arduino GIGA R1 wifi

## Question

Asked by markieboy223 on 2024-10-17 in IO Modules.

Hi there, i am trying to connect ethernet using the W5500 module and a Arduino giga R1 wifi using the Ethernet.h library.

Pins are connected to:

- **MOSI (COPI)**: D11

- **MISO (CIPO)**: D12

- **SCK**: D13

- **CS**: D10 (or any other GPIO pin)

- **Voltage**: 3.3V (use this if the Ethernet module operates at 3.3V logic, which is typical for the W5500).

Im getting that the ethernetshield was not found and that i cannot use it, also running spi tests the module doesnt communicate back to the arduino.

Following is the code i use:

```cpp
#include <SPI.h>
#include <Ethernet.h>

// MAC address for the Ethernet module
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

// Static IP address to assign
IPAddress ip(192, 168, 1, 177);
IPAddress gateway(192, 168, 1, 1);
IPAddress subnet(255, 255, 255, 0);

// Use the correct SS (Slave Select) pin for SPI5
#define W5500_SS_PIN 10

// Create Ethernet client object
EthernetClient client;

void setup() {
  Serial.begin(115200);

  // Initialize SPI5 for the W5500 Ethernet module (SS pin = D10)
  Ethernet.init(W5500_SS_PIN);  // SS pin 10 (D10 for SPI5)
  
  Serial.println("Initializing Ethernet with Static IP...");
  
  // Start Ethernet with a static IP
  Ethernet.begin(mac, ip, gateway, gateway, subnet);
  
  if (Ethernet.hardwareStatus() == EthernetNoHardware) {
    Serial.println("Ethernet shield was not found. Sorry, can't run without hardware. :(");
    while (true) {
      delay(1);  // Halt the system if no Ethernet hardware is found
    }
  } else {
    Serial.println("Ethernet initialized.");
    Serial.print("IP Address: ");
    Serial.println(Ethernet.localIP());
  }
}

void loop() {
  // Example: ping a server
  if (client.connect("example.com", 80)) {
    Serial.println("Connected to example.com");

    // Send HTTP GET request
    client.println("GET / HTTP/1.1");
    client.println("Host: example.com");
    client.println("Connection: close");
    client.println();

    // Wait for server response and print it to Serial
    while (client.connected()) {
      while (client.available()) {
        char c = client.read();
        Serial.print(c);
      }
    }

    // Disconnect client
    client.stop();
    Serial.println("Disconnected from server.");
  } else {
    Serial.println("Connection to example.com failed.");
  }

  delay(10000);  // Wait 10 seconds before repeating
}
```

## Replies

### Reply 1 by markieboy223, 2024-10-17

```
19:34:30.600 -> SPI communication failed or incorrect chip version
```

---

Source: https://maker.wiznet.io/forum/15308
