Ethernet Shield not recongized

Hello,
I recently bought an Ethernet Shield for Arduino - W5200 which I plan to connect to an Arduino Uno Rev.3 board.
The problem I have is that the link and the speed leds are turned off (the other leds are ok) when I connect an ethernet cable to the board (off course I tried with several cables) and the shield cannot connect to the LAN (I tried also different routers)
I was suspecting that the board was faulty and I get a replacement from the supplier but I had the same problem.
Am I doing something wrong ?
Any advice is appreciated.
Many thanks.
Massimo
I recently bought an Ethernet Shield for Arduino - W5200 which I plan to connect to an Arduino Uno Rev.3 board.
The problem I have is that the link and the speed leds are turned off (the other leds are ok) when I connect an ethernet cable to the board (off course I tried with several cables) and the shield cannot connect to the LAN (I tried also different routers)
I was suspecting that the board was faulty and I get a replacement from the supplier but I had the same problem.
Am I doing something wrong ?
Any advice is appreciated.
Many thanks.
Massimo
2014-04-23 01:14:01 Hello,
I can now now use the Ethernet shield correctly.
I have a question on the pins reserved by the Ethernet shield once connected to an Arduino Uno board.
I understood from various documentation that Pin 10,11,12 & 13 are used; so far so good.
However from the code provided it seems that also Pin 3,8 & 9 are needed. Can you confirm ?
Thanks
Massimo
itamax
I can now now use the Ethernet shield correctly.
I have a question on the pins reserved by the Ethernet shield once connected to an Arduino Uno board.
I understood from various documentation that Pin 10,11,12 & 13 are used; so far so good.
However from the code provided it seems that also Pin 3,8 & 9 are needed. Can you confirm ?
Thanks
Massimo

2014-04-19 13:57:21 Hello,
I tried the code and it works !
I can see the web page displaying the value of each analog pin correctly.
Many thanks
Massimo
itamax
I tried the code and it works !
I can see the web page displaying the value of each analog pin correctly.
Many thanks
Massimo

2014-04-18 19:08:54 Hello Sir,
Sorry for the late reply. Please try this code:
[code]/*
Web Server
A simple web server that shows the value of the analog input pins.
using an Arduino Wiznet Ethernet shield.
Circuit:
* Ethernet shield attached to pins 10, 11, 12, 13
* Analog inputs attached to pins A0 through A5 (optional)
created 18 Dec 2009
by David A. Mellis
modified 9 Apr 2012
by Tom Igoe
*/
#include <SPI.h>
#include <Ethernet.h>
//Attention: Official SPI port use "D10" as SS interface.You need to define SS pin acording to the actual SS wire connection
////define the interface: Dreamer MEGA X1 PORT
//#define SS 53 //Gadgeteer PIN 6
//#define nRST 46 //Gadgeteer PIN 4
//#define nPWDN 45 //Gadgeteer PIN 5
//#define nINT 2 //Gadgeteer PIN 3
//define the interface: Dreamer MEGA X2 PORT
#define SS 10 //Gadgeteer PIN 6
#define nRST 8 //Gadgeteer PIN 4
#define nPWDN 9 //Gadgeteer PIN 5
#define nINT 3 //Gadgeteer PIN 3
// 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,1,117);
// Initialize the Ethernet server library
// with the IP address and port you want to use
// (port 80 is default for HTTP):
EthernetServer server(80);
void setup() {
//Next setting parameter is very important!!!! If you don't have reliable reset setting, W5200 maybe will not work!!!!! //
pinMode(SS,OUTPUT); //Define the interfave :Dreamer MEGA X2 PORT Gadgeteer PIN 6 use SS
pinMode(nRST,OUTPUT);
pinMode(nPWDN,OUTPUT);
pinMode(nINT,INPUT);
digitalWrite(nPWDN,LOW); //enable power
digitalWrite(nRST,LOW); //Reset W5200
delay(10);
digitalWrite(nRST,HIGH);
delay(200); // wait W5200 work
/////////////////////////////////////////////////////////////
// Open serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
// start the Ethernet connection and the server:
Ethernet.begin(mac, ip);
server.begin();
Serial.print("server is at ");
Serial.println(Ethernet.localIP());
}
void loop() {
// listen for incoming clients
EthernetClient client = server.available();
if (client) {
Serial.println("new client");
// an http request ends with a blank line
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
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("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connnection: close");
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
// add a meta refresh tag, so the browser pulls again every 5 seconds:
client.println("<meta http-equiv=\"refresh\" content=\"5\">");
// output the value of each analog input pin
for (int analogChannel = 0; analogChannel < 6; analogChannel++) {
int sensorReading = analogRead(analogChannel);
client.print("analog input ");
client.print(analogChannel);
client.print(" is ");
client.print(sensorReading);
client.println("<br />");
}
client.println("</html>");
break;
}
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
delay(1);
// close the connection:
client.stop();
Serial.println("client disonnected");
}
}[/code]
Please check whether the led is on?
Is there anything else in the web page 192.168.1.177?
And whether the
Grey.CC
Sorry for the late reply. Please try this code:
[code]/*
Web Server
A simple web server that shows the value of the analog input pins.
using an Arduino Wiznet Ethernet shield.
Circuit:
* Ethernet shield attached to pins 10, 11, 12, 13
* Analog inputs attached to pins A0 through A5 (optional)
created 18 Dec 2009
by David A. Mellis
modified 9 Apr 2012
by Tom Igoe
*/
#include <SPI.h>
#include <Ethernet.h>
//Attention: Official SPI port use "D10" as SS interface.You need to define SS pin acording to the actual SS wire connection
////define the interface: Dreamer MEGA X1 PORT
//#define SS 53 //Gadgeteer PIN 6
//#define nRST 46 //Gadgeteer PIN 4
//#define nPWDN 45 //Gadgeteer PIN 5
//#define nINT 2 //Gadgeteer PIN 3
//define the interface: Dreamer MEGA X2 PORT
#define SS 10 //Gadgeteer PIN 6
#define nRST 8 //Gadgeteer PIN 4
#define nPWDN 9 //Gadgeteer PIN 5
#define nINT 3 //Gadgeteer PIN 3
// 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,1,117);
// Initialize the Ethernet server library
// with the IP address and port you want to use
// (port 80 is default for HTTP):
EthernetServer server(80);
void setup() {
//Next setting parameter is very important!!!! If you don't have reliable reset setting, W5200 maybe will not work!!!!! //
pinMode(SS,OUTPUT); //Define the interfave :Dreamer MEGA X2 PORT Gadgeteer PIN 6 use SS
pinMode(nRST,OUTPUT);
pinMode(nPWDN,OUTPUT);
pinMode(nINT,INPUT);
digitalWrite(nPWDN,LOW); //enable power
digitalWrite(nRST,LOW); //Reset W5200
delay(10);
digitalWrite(nRST,HIGH);
delay(200); // wait W5200 work
/////////////////////////////////////////////////////////////
// Open serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
// start the Ethernet connection and the server:
Ethernet.begin(mac, ip);
server.begin();
Serial.print("server is at ");
Serial.println(Ethernet.localIP());
}
void loop() {
// listen for incoming clients
EthernetClient client = server.available();
if (client) {
Serial.println("new client");
// an http request ends with a blank line
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
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("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connnection: close");
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
// add a meta refresh tag, so the browser pulls again every 5 seconds:
client.println("<meta http-equiv=\"refresh\" content=\"5\">");
// output the value of each analog input pin
for (int analogChannel = 0; analogChannel < 6; analogChannel++) {
int sensorReading = analogRead(analogChannel);
client.print("analog input ");
client.print(analogChannel);
client.print(" is ");
client.print(sensorReading);
client.println("<br />");
}
client.println("</html>");
break;
}
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
delay(1);
// close the connection:
client.stop();
Serial.println("client disonnected");
}
}[/code]
Please check whether the led is on?
Is there anything else in the web page 192.168.1.177?
And whether the

2014-04-17 10:45:06 Hello,
I have corrected the code.
********* START SKETCH ********
[size=10pt][font=courier]#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 1, 177 };
byte server[] = { 75, 125, 24, 103 };
EthernetClient client;
void setup()
{
Serial.begin(9600);
Ethernet.begin(mac,ip);
Serial.print("IP address is: ");
Serial.println(Ethernet.localIP());
Serial.print("Connection result: ");
Serial.println(client.connect(server, 80));
delay(1000); // give the Ethernet shield a second to initialize
}
void loop()
{
}
[/font][/size]
********* END SKETCH ********
The purpose of the code is simply to verify the connection to the LAN and to internet. This is the reason why the loop is empty.
Executing the code I get this result in the serial monitor:
[size=10pt][font=courier]IP address is: 0.0.0.0
Connection result: 0[/font][/size]
I confirm that when I connect the cable to the RJ45 socket I hear the sound (I tested the cable with another device and is working properly).
What do you mean for "[i]And whether the first time the other LED is light?[/i]"
Thanks for your help.
itamax
I have corrected the code.
********* START SKETCH ********
[size=10pt][font=courier]#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 1, 177 };
byte server[] = { 75, 125, 24, 103 };
EthernetClient client;
void setup()
{
Serial.begin(9600);
Ethernet.begin(mac,ip);
Serial.print("IP address is: ");
Serial.println(Ethernet.localIP());
Serial.print("Connection result: ");
Serial.println(client.connect(server, 80));
delay(1000); // give the Ethernet shield a second to initialize
}
void loop()
{
}
[/font][/size]
********* END SKETCH ********
The purpose of the code is simply to verify the connection to the LAN and to internet. This is the reason why the loop is empty.
Executing the code I get this result in the serial monitor:
[size=10pt][font=courier]IP address is: 0.0.0.0
Connection result: 0[/font][/size]
I confirm that when I connect the cable to the RJ45 socket I hear the sound (I tested the cable with another device and is working properly).
What do you mean for "[i]And whether the first time the other LED is light?[/i]"
Thanks for your help.

2014-04-16 18:44:10 Hello Sir,
I am sorry your code can't be verified.
It lost some defination of the parameter. like ip address. And also the loop function.
Could show me your whole sketch?
When you plugged the Ethernet cable in the slot, did you hear the sound like "ka"?
And whether the first time the other LED is light?
Grey.CC
I am sorry your code can't be verified.
It lost some defination of the parameter. like ip address. And also the loop function.
Could show me your whole sketch?
When you plugged the Ethernet cable in the slot, did you hear the sound like "ka"?
And whether the first time the other LED is light?

2014-04-16 01:15:08 Hello,
this is the simple code I use.
I will post some photos late on the day (I don't the the boards with me now).
****** Start sketch ******
[font=courier]#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte server[] = { 75, 125, 24, 103 }
EthernetClient client;
void setup()
{
Serial.begin(9600);
Ethernet.begin(mac,ip);
Serial.print("IP address is: ");
Serial.println(Ethernet.localIP());
Serial.println("Connection result: ");
Serial.println(client.connect(server, 80));
delay(1000); // give the Ethernet shield a second to initialize
}
void loop()
{
}[/font]
****** end sketch *******
itamax
this is the simple code I use.
I will post some photos late on the day (I don't the the boards with me now).
****** Start sketch ******
[font=courier]#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte server[] = { 75, 125, 24, 103 }
EthernetClient client;
void setup()
{
Serial.begin(9600);
Ethernet.begin(mac,ip);
Serial.print("IP address is: ");
Serial.println(Ethernet.localIP());
Serial.println("Connection result: ");
Serial.println(client.connect(server, 80));
delay(1000); // give the Ethernet shield a second to initialize
}
void loop()
{
}[/font]
****** end sketch *******

2014-04-16 00:57:26 Hello itamax,
Welcome to our DFRobot forum.
Which code you are using now? And could you take some photo about it?
Grey.CC
Welcome to our DFRobot forum.
Which code you are using now? And could you take some photo about it?
