Arduino Ethernet Shield 2 stuck on EthernetServer::begin() I am currently trying to get the Ethernet Shield working on my Mega. I was trying to run the Webserver example but the program seems to stuck at one point, so I tried to start from scratch.

This is my test code:

#include &lt;Ethernet.h&gt;
#include &lt;SPI.h&gt;

byte mac[] = {
  0x90, 0xA2, 0xDA, 0x0F, 0xF6, 0x3D
};
byte subnet[] = { 255,0,0,0 };
byte gateway[] = { 2,0,0,1 };
IPAddress ip(2, 0, 0, 1);

EthernetServer server(80);

void setup() {
  Serial.begin(9600);
  Ethernet.begin(mac, ip, gateway, subnet);
  Serial.println("Ethernet started");
  server.begin();
  Serial.println("Server started");
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("Loop");
}


The output I get from the serial console is:

Etrted
Ethernet started


So I think the program gets stuck inside the EthernetServer::begin() function.
I am aware that there are earlier versions of ethernet shields which are not compatible to the mega, but the vendor of my shield says it is.

Also I don't understand, why it outputs the first line.

Thanks for your hints!
You must use these libraries:

#include &lt;Ethernet.h&gt;  --&gt;  #include &lt;Ethernet2.h&gt;
#include &lt;EthernetUdp.h&gt;  --&gt;  #include &lt;EthernetUdp2.h&gt;


More info at this link Arduino Ethernet Shield2