Arduino DUE, ENC28J60 and UIPEthernet

Hi people

I’ve connected ENC28J60 to Arduino Due and I’m using UIPEthernet V1.59

It works fine in first 5 minutes after that it frozes

I’ve included all header files

#include <SPI.h>
#include <Dhcp.h>
#include <Dns.h>
#include <ethernet_comp.h>
#include <UIPClient.h>
#include <UIPEthernet.h>
#include <UIPServer.h>
#include <UIPUdp.h>

Please help me I’m working on this already one week


Hi all,

I have the same problem with Arduino DUE, ENC28J60 and the UIPEthernet V1.59 librairy.

It works fine 5 minutes and freeze.

Here’s the entire test code :

#include <SPI.h>
#include <UIPEthernet.h>
// The connection_data struct needs to be defined in an external file.
#include <UIPServer.h>
#include <UIPClient.h>

EthernetServer server = EthernetServer(80);

void setup() {
  // put your setup code here, to run once:

  uint8_t mac[6] = {0x00,0x01,0x02,0x03,0x04,0x05};
  IPAddress myIP(10,6,18,200);
  Serial.println("@ : ...");


void loop() {
  EthernetClient client = server.available();
   if (client) {
     Serial.println(F("new client"));
     // an http request ends with a blank line
     boolean currentLineIsBlank = true;
     while (client.connected()) {
       if (client.available()) {
         char c =;
         // Serial.write(c);
         // if you've gotten to the end of the line (received a newline
         // character) and the line is blank, the http request has ended,
         // so you can send a reply
         if (c == '\n' && currentLineIsBlank) {
           // send a standard http response header
           client.println(F("HTTP/1.1 200 OK"));
           client.println(F("Content-Type: text/html"));
           client.println(F("Connection: close"));  // the connection will be closed after completion of the response
           client.println(F("Refresh: 5"));  // refresh the page automatically every 5 sec
           client.println(F("<!DOCTYPE HTML>"));
           // output the value of each analog input pin
           for (int analogChannel = 0; analogChannel < 6; analogChannel++) {
             int sensorReading = analogRead(analogChannel);
             client.print(F("analog input "));
             client.print(F(" is "));
         if (c == '\n') {
           // you're starting a new line
           currentLineIsBlank = true;
         } else if (c != '\r') {
           // you've gotten a character on the current line
           currentLineIsBlank = false;
     // give the web browser time to receive the data
     // close the connection:
     Serial.println(F("client disconnected"));

I’ve change all the ‘println’ with ‘println(F(’ to try to save the SRAM but no result.

It’s very strange !