Problema con funcionamiento de arduino shield w5100 generico

Estoy tratando de realizar un prototipo que involucra realizar una conexion LAN, para controlar los sensores, pasa que estoy haciendo pruebas con un Arduino uno y un Shield w5100 la cual no es reconocida, ya que e probado todos los ejemplos que trae el IDE de arduino y otros por ahi en la red, las led de pwr, link, fullD, funcionan y pareciera funcionar pero al tratar de acceder por el navegador no carga el sketch, aprecio su ayuda de ante mano

Carga el sketch y luego desconectate de la pc via USB y usa una fuente externa para alimentar el conjunto. Yo he tenido tu mismo problema y asi se resolvió.

No te sugiero que mantengas ambos conectados porque fue de ese modo que queme un UNO. Cuando lo hago con un MEGA no me pasó jamás pero si con el UNO.

Resumen: ambas conexiones no, aunque en teoría no debería pasar nada, a algunos nos ha sucedido.

Intente lo que me dijiste pero no funciono, lo intente con un arduino MEGA e igual nada, volvi a instalar el IDE y nada, tengo una duda de lo que se le tiene que escribir en la direccion MAC de este arduino generico ya que no la trae, estoy haciendo pruebas con el sketch chat serve que trae de ejemplo el IDE y cuando hago ping al ip que le asigne en el sketch me sale host de destino inaccesible

Primero tranquilízate!!
Nada de desinstalar e instalar cosas. Basta con probar el UNo o Mega con algun programa. Si corre todo esta bien.
El Shield W5100 suele dar problemas.

Verifica que el cable que estas usando funciona, ya lo hiciste?

Luego la prueba de MAC usa un valor similar al de tu router y cambia el ultimo grupo de 3 dígitos.

Si ya probé con 2 cables diferentes y los probé con mi computadora y efectivamente los cables estan bien, y el arduino UNO y MEGA esta bien, otra cosa no se si lo comente cuando hago ping el led tx y rx flashean como si hicieran la transmicion y e probado con varios ip pero igual no hacen ping, estoy pensando q sera mi router que bloquea algo o no se xq si el shield enciende sus led pareciera estar bien, con lo del MAC mi direccion es 002194273DA como deberia de cambiarlo por que en el sketch veo q se escribe diferente no se cual es el formato

MAC mi direccion es 002194273DA

Eso que lees es 0x00 0x21 0x94 0x27 0x3D 0xAX falta un digito en algun lado.

surbyte:
Eso que lees es 0x00 0x21 0x94 0x27 0x3D 0xAX falta un digito en algun lado.

0x00, 0x21, 0x94, 0x27, 0x3D, 0x3A este seria el mac de mi router, 0x00, 0x21, 0x94, 0x27, 0x3D, 0x5B y este es el mac que defini en el sketch, el siguiente codigo es con el que estoy intentando quizas hay algun problema lo estoy probando en un arduino MEGA

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

byte mac[] = {0x00, 0x21, 0x94, 0x27, 0x3D, 0x5B}; //MAC
IPAddress ip(192,168,1,50); //IP
EthernetServer servidor(80);
int Pin3 = 3;
int Pin4 = 4;
int Pin5 = 5;
int Pin6 = 6;
String readString = String(100);// string for fetching data from address
boolean Pin3ON = false; // Status flag
boolean Pin4ON = false; // Status flag
boolean Pin5ON = false; // Status flag
boolean Pin6ON = false; // Status flag

void setup(){
Ethernet.begin(mac, ip); //Inicializamos con las direcciones asignadas
servidor.begin();
pinMode(Pin3, OUTPUT);
pinMode(Pin4, OUTPUT);
pinMode(Pin5, OUTPUT);
pinMode(Pin6, OUTPUT);
Serial.begin(9600); 
}

void loop(){
// Creacion De Coneccion Al Cliente
EthernetClient client = servidor.available();
if (client) 
 {
   while (client.connected()) { //Cliente conectado
     if (client.available()) 
       {
         char c = client.read();
         if (readString.length() < 100)   //Leemos petición HTTP caracter a caracter
           {
             readString = readString + c; 
           } 
         Serial.print(c);
        if (c == '\n') 
         { 
           if(readString.indexOf("3=Encendido") > -1) 
             {
               digitalWrite(Pin3, HIGH);
               Serial.println("Pin 3 eingeschaltet!");
               Pin3ON = true;
             }
           if(readString.indexOf("3=Apagado") > -1)
             {
               digitalWrite(Pin3, LOW);
               Serial.println("Pin 3 ausgeschaltet!");
               Pin3ON = false;
             }
           if(readString.indexOf("4=Encendido") > -1) 
             {
               digitalWrite(Pin4, HIGH);
               Serial.println("Pin 4 eingeschaltet!");
               Pin4ON = true;
             }
           if(readString.indexOf("4=Apagado") > -1)
             {
               digitalWrite(Pin4, LOW);
               Serial.println("Pin 4 ausgeschaltet!");
               Pin4ON = false;
             }
           if(readString.indexOf("5=Encendido") > -1) 
             {
               digitalWrite(Pin5, HIGH);
               Serial.println("Pin 5 eingeschaltet!");
               Pin5ON = true;
             }
           if(readString.indexOf("5=Apagado") > -1)
             {
               digitalWrite(Pin5, LOW);
               Serial.println("Pin 5 ausgeschaltet!");
               Pin5ON = false;
             }
           if(readString.indexOf("6=Encendido") > -1) 
             {
               digitalWrite(Pin6, HIGH);
               Serial.println("Pin 6 eingeschaltet!");
               Pin6ON = true;
             }
           if(readString.indexOf("6=Apagado") > -1)
             {
               digitalWrite(Pin6, LOW);
               Serial.println("Pin 6 ausgeschaltet!");
               Pin6ON = false;
             }
           if(readString.indexOf("all=All+Off") > -1)
             {
               digitalWrite(Pin3, LOW);
               digitalWrite(Pin4, LOW);
               digitalWrite(Pin5, LOW);
               digitalWrite(Pin6, LOW);
               Serial.println("Todos Los Modulos Estan Apagados");
               Pin3ON = false;
               Pin4ON = false;
               Pin5ON = false;
               Pin6ON = false;
             }
           if(readString.indexOf("all=All+On") > -1)
             {
               digitalWrite(Pin3, HIGH);
               digitalWrite(Pin4, HIGH);
               digitalWrite(Pin5, HIGH);
               digitalWrite(Pin6, HIGH);
               Serial.println("Todos Los Modulos Estan Encendidos");
               Pin3ON = true;
               Pin4ON = true;
               Pin5ON = true;
               Pin6ON = true;
             }
           if(readString.indexOf("all=Secuencia") > -1)
             {
               digitalWrite(Pin3, HIGH);
               delay(500);
               digitalWrite(Pin3, LOW);
               delay(500);
               digitalWrite(Pin4, HIGH);
               delay(500);
               digitalWrite(Pin4, LOW);
               delay(500);
               digitalWrite(Pin5, HIGH);
               delay(500);
               digitalWrite(Pin5, LOW);
               delay(500);
               digitalWrite(Pin6, HIGH);
               delay(500);
               digitalWrite(Pin6, LOW);
               delay(500);
               digitalWrite(Pin3, HIGH);
               delay(500);
               digitalWrite(Pin3, LOW);
               delay(500);
               digitalWrite(Pin4, HIGH);
               delay(500);
               digitalWrite(Pin4, LOW);
               delay(500);
               digitalWrite(Pin5, HIGH);
               delay(500);
               digitalWrite(Pin5, LOW);
               delay(500);
               digitalWrite(Pin6, HIGH);
               delay(500);
               digitalWrite(Pin6, LOW);                
               delay(500);
             }
             
//--------------------------HTML------------------------
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.print("<html><head>");
client.print("<title>Ethernet Shield</title>");
client.println("</head>");
client.print("<body bgcolor='#444444'>");

//---Titulo De La Pagina---
client.println("
<hr />");
client.println("<h1><div align='center'><font color='#2076CD'>Arduino Mega 2560 + Ethernet Shield W5100 + 4 Relay Module</font color></div></h1>");
client.println("<hr />
");

//---Cabeza---

//---Cuerpo---
client.println("<div align='left'><font face='Verdana' color='#FFFFFF'>Sistema De Control De Modulos:</font></div>");
client.println("
");
client.println("<table border='1' width='500' cellpadding='5'>");
client.println("<tr bgColor='#222222'>");
client.println("<td bgcolor='#222222'><font face='Verdana' color='#CFCFCF' size='2'>Modulo 1
</font></td>");
client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=3 value='Encendido'></form></td>");
client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=3 value='Apagado'></form></td>");
if (Pin3ON)
client.println("<td align='center'><font color='green' size='5'>ON");
else
client.println("<td align='center'><font color='#CFCFCF' size='5'>OFF");
client.println("</tr>");
client.println("<tr bgColor='#222222'>");
client.println("<td bgcolor='#222222'><font face='Verdana' color='#CFCFCF' size='2'>Modulo 2
</font></td>");
client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=4 value='Encendido'></form></td>");
client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=4 value='Apagado'></form></td>");
if (Pin4ON)
client.println("<td align='center'><font color='green' size='5'>ON");
else
client.println("<td align='center'><font color='#CFCFCF' size='5'>OFF");
client.println("</tr>");
client.println("<tr bgColor='#222222'>");
client.println("<td bgcolor='#222222'><font face='Verdana' color='#CFCFCF' size='2'>Modulo 3
</font></td>");
client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=5 value='Encendido'></form></td>");
client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=5 value='Apagado'></form></td>");
if (Pin5ON)
client.println("<td align='center'><font color='green' size='5'>ON");
else
client.println("<td align='center'><font color='#CFCFCF' size='5'>OFF");
client.println("</tr>");
client.println("<tr bgColor='#222222'>");
client.println("<td bgcolor='#222222'><font face='Verdana' color='#CFCFCF' size='2'>Modulo 4
</font></td>");
client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=6 value='Encendido'></form></td>");
client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=6 value='Apagado'></form></td>");
if (Pin6ON)
client.println("<td align='center'><font color='green' size='5'>ON");
else
client.println("<td align='center'><font color='#CFCFCF' size='5'>OFF");
client.println("</tr>");
client.println("</tr>");
client.println("</table>");
client.println("
");
client.println("<form method=get><input type=submit name=all value='All Off'></form>");
client.println("<p>");
client.println("<form method=get><input type=submit name=all value='All On'></form>");
client.println("<p>");
client.println("<form method=get><input type=submit name=all value='Secuencia'></form>");
client.println("</body></html>");

readString="";

client.stop(); //Cierro conexión con el cliente
}}}}}

Actualizo, pude resolver el problema ya pude hacer ping y acceder por medio del navegador al sketch cargado, pero ahora se me presenta otro inconveniente que aveces si funciona pero otras veces no, a que se puede deber esto?