Se me bloquea al compilar el sketch.(Solucionado)

Buenas, soy un nuevo usuario en arduino, estoy intentando hacer un proyecto de control automatizado de mi acuario, así como su gestión desde la web. Mi problema es que he hecho el código y al compilarlo el programa se queda pensando y no acaba nunca, ¿sera que es demasiado pesado?
El código es el siguiente:

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

//Declaración de la direcciones MAC e IP.
//EL PUERTO ASIGNADO AL ARDUINO ES EL 5190, QUE DESDE EL ROUTER SE HA REDIRIGIDO PREVIAMENTE A LA IP 192.168.1.4
byte mac[]={0xDE,0xAD,0xBE,0xEF,0xFE,0xED}; //MAC
IPAddress ip(192,168,1,4); //IP
EthernetServer servidor(5190);

//DECLARACIÓN DE VARIABLES
//Referidas al pin de cada relé
int PIN_RELE1=8;
int PIN_RELE2=7;
int PIN_RELE3=6;
int PIN_RELE4=5;
int PIN_RELE5=4;
//Referida a la cadena de carácteres que se usa para comprobar las instrucciones recibidas en código HTML.
String readString=String(30);
//Referidas a la visualización del estado de cada relé
String state1=String(3);
String state2=String(3);
String state3=String(3);
String state4=String(3);
String state5=String(3);

void setup()
{
Ethernet.begin(mac, ip); //Inicializamos con las direcciones asignadas
servidor.begin();
//Activamos salidas
pinMode(PIN_RELE1,OUTPUT);
pinMode(PIN_RELE2,OUTPUT);
pinMode(PIN_RELE3,OUTPUT);
pinMode(PIN_RELE4,OUTPUT);
pinMode(PIN_RELE5,OUTPUT);
//Marcamos como rele encendido por defecto por lo que usaremos reles que en estado activo se encuentren apagados
digitalWrite(PIN_RELE1,HIGH);
digitalWrite(PIN_RELE2,HIGH);
digitalWrite(PIN_RELE3,HIGH);
digitalWrite(PIN_RELE4,HIGH);
digitalWrite(PIN_RELE5,HIGH);
// Estado del todos los relés a 0.
state1="OFF";
state2="OFF";
state3="OFF";
state4="OFF";
state5="OFF";
}

void loop()
{
EthernetClient cliente= servidor.available();

if(cliente)
{
boolean lineaenblanco=true;
while(cliente.connected())//Cliente conectado
{
if(cliente.available())
{
char c=cliente.read();
if(readString.length()<30)//Leemos petición HTTP caracter a caracter
{
readString.concat(c); //Almacenar los caracteres en la variable readString
}
if(c=='\n' && lineaenblanco)//Si la petición HTTP ha finalizado
{
int RELE1 = readString.indexOf("RELE1=");
int RELE2 = readString.indexOf("RELE2=");
int RELE3 = readString.indexOf("RELE3=");
int RELE4 = readString.indexOf("RELE4=");
int RELE5 = readString.indexOf("RELE5=");

//COMPROBAR RELE1
if(readString.substring(RELE1,RELE1+7)=="RELE1=T")
{
digitalWrite(PIN_RELE1,LOW);
state1="ON";
} else if (readString.substring(RELE1,RELE1+7)=="RELE1=F")
{
digitalWrite(PIN_RELE1,HIGH);
state1="OFF";
}

//COMPROBAR RELE2
if(readString.substring(RELE2,RELE2+7)=="RELE2=T")
{
digitalWrite(PIN_RELE2,LOW);
state2="ON";
} else if (readString.substring(RELE2,RELE2+7)=="RELE2=F")
{
digitalWrite(PIN_RELE2,HIGH);
state2="OFF";
}

//COMPROBAR RELE3
if(readString.substring(RELE3,RELE3+7)=="RELE3=T")
{
digitalWrite(PIN_RELE3,LOW);
state3="ON";
} else if (readString.substring(RELE3,RELE3+7)=="RELE3=F")
{
digitalWrite(PIN_RELE3,HIGH);
state3="OFF";
}

//COMPROBAR RELE4
if(readString.substring(RELE4,RELE4+7)=="RELE4=T")
{
digitalWrite(PIN_RELE4,LOW);
state4="ON";
} else if (readString.substring(RELE4,RELE4+7)=="RELE4=F")
{
digitalWrite(PIN_RELE4,HIGH);
state4="OFF";
}

//COMPROBAR RELE5
if(readString.substring(RELE5,RELE5+7)=="RELE5=T")
{
digitalWrite(PIN_RELE5,LOW);
state5="ON";
} else if (readString.substring(RELE5,RELE5+7)=="RELE5=F")
{
digitalWrite(PIN_RELE5,HIGH);
state5="OFF";
}

//DISEÑO DE LA WEB
cliente.println("Control remoto Arduinobody {background-color: #C60;}<form id=form1 name=form1 method=post action=>

Control placa arduino:

Con la página web a la que está accediendo es podible controlar la placa arduino que está en el escritorio y hacer pruebas con ella.

 

FunciónActivarDesactivar
Ventilador

<input type=submit name=ventiladoron id=ventiladoron value=On accesskey=v onClick=location.href='./?RELE1=T'/>

");
cliente.println("<input type=submit name=ventiladoroff id=ventiladoroff value=Off onClick=location.href='./?RELE1=F' />

Luces de dia

<input type=submit name=luzon id=luzon value=On onClick=location.href='./?RELE2=T'/>

<input type=submit name=luzdiaoff id=luzdiaoff value=Off onClick=location.href='./?RELE2=F'/>

Luz de luna

<input type=submit name=luzlunaon id=luzlunaon value=On onClick=location.href='./?RELE3=T'>

<input type=submit name=luzlunaoff id=luzlunaoff value=Off onClick=location.href='./?RELE3=F'/>

Calentador

<input type=submit name=calentadoron id=calentadoron value=On onClick=location.href='./?RELE4=T'/>

");
cliente.println("

<input type=submit name=calentadoroff id=calentadoroff value=Off onClick=location.href='./?RELE4=F'/>

CO2

<input type=submit name=co2on id=co2on value=On onClick=location.href='./?RELE5=T'/>

<input type=submit name=co2off id=co2off value=Off onClick=location.href='./?RELE5=F'/>

 

");
//MOSTRAMOS LOS 5 ESTADOS
cliente.print("

");
cliente.print("Estado del ventilador: ");
cliente.print(state1);
cliente.print("

");
cliente.print("Estado de la luz de dia: ");
cliente.print(state2);
cliente.print("

");
cliente.print("Estado de la luz de luna: ");
cliente.print(state3);
cliente.print("

");
cliente.print("Estado del calentador: ");
cliente.print(state4);
cliente.print("

");
cliente.print("Estado del reactor CO2: ");
cliente.print(state5);
//FINALIZAMOS CONEXIÓN CON CLIENTE
cliente.stop();
readString="";
}
}
}
}
}

acabo de hacer un copy paste del código y lo he metido en mi arduino uno sin problemas...

si es con windows , prueba a reiniciar....

Gracias, seguía sin cargarse , pero he puesto prints mucho mas cortos y lo ha cargado bien :D.

Solucionado