I am using ethernet shield ENC28J60 with Arduino Nano and I want to establish UDP communication. Unfortunately it works only for first client. When first client disconnects and second client connects, nothing will appear in console anymore. For some reason Udp.parsePacket() returns 0 from that point on. This is example from Arduino site. What I am missing? Thank you for help.
#include <Arduino.h>
#include <UIPEthernet.h>
// Enter a MAC address and IP address for your controller below.
// The IP address will be dependent on your local network:
byte mac[] = {
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192, 168, 100, 177);
unsigned int localPort = 80; // local port to listen on
// An EthernetUDP instance to let us send and receive packets over UDP
EthernetUDP Udp;
void setup() {
// start the Ethernet and UDP:
Ethernet.begin(mac,ip);
Udp.begin(localPort);
Serial.begin(9600);
}
void loop() {
// if there's data available, read a packet
int packetSize = Udp.parsePacket();
if(packetSize)
{
Serial.print("Received packet of size ");
Serial.println(packetSize);
}
delay(10);
}