Go Down

Topic: NEED HELP USING THE ETHERNET SHIELD (Read 611 times) previous topic - next topic


i am not new to the ethernet shield.. i already know how to use the digital I/O pins to run some relays using visual studio as my uI.. now i want to to the same but with ethernet shield so i could control relays via internet... i dont know where to start and where will i end.. could someone give me the steps i needed to do.. i just want to do the same as those who place ther videos in the youtube using ethernet shield.. sorry but its only months since i started in learning arduino.. a reply will be really appreciated.. thank you


Have a look at the Ethernet shield tutorials:

It is also worth reading a bit about tcp/udp (the two main protocols for communicating over Ethernet) to get a better understanding of how these programs work.

You will obviously need some software running on your pc as , if you want to use a web browser to do it, then the webserver tutorial is going to be useful, you may find it easier at first though to build a very simple udp client on your pc and send commands with that (the implementation for this is much shorter).


Some simple web page control test code.

Code: [Select]

//zoomkat 4-1-12
//simple button GET for servo and pin 5
//for use with IDE 1.0
//open serial monitor to see what the arduino receives
//use the \ slash to escape the " in the html, or use ' instead of "
//address will look like when submited
//for use with W5100 based ethernet shields

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

#include <Servo.h>
Servo myservo;  // create servo object to control a servo

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //physical mac address
byte ip[] = { 192, 168, 1, 102 }; // ip in lan
byte gateway[] = { 192, 168, 1, 1 }; // internet access via router
byte subnet[] = { 255, 255, 255, 0 }; //subnet mask
EthernetServer server(84); //server port

String readString;


void setup(){

  pinMode(5, OUTPUT); //pin selected to control
  //start Ethernet
  Ethernet.begin(mac, ip, gateway, gateway, subnet);

  myservo.write(90); //set initial servo position if desired
  myservo.attach(7);  //the pin for the servo control
  //enable serial data print
  Serial.println("server servo/pin 5 test 1.0"); // so I can keep track of what is loaded

void loop(){
  // Create a client connection
  EthernetClient client = server.available();
  if (client) {
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();

        //read char by char HTTP request
        if (readString.length() < 100) {

          //store characters to string
          readString += c;

        //if HTTP request has ended
        if (c == '\n') {

          Serial.println(readString); //print to serial monitor for debuging

          client.println("HTTP/1.1 200 OK"); //send new page
          client.println("Content-Type: text/html");

          client.println("<TITLE>Arduino GET test page</TITLE>");

          client.println("<H1>Zoomkat's simple Arduino button</H1>");
          client.println("<a href=\"/?on\">ON</a>");
          client.println("<a href=\"/?off\">OFF</a>");


          //stopping client

          ///////////////////// control arduino pin
          if(readString.indexOf("on") >0)//checks for on
            digitalWrite(5, HIGH);    // set pin 5 high
            Serial.println("Led On");
          if(readString.indexOf("off") >0)//checks for off
            digitalWrite(5, LOW);    // set pin 5 low
            Serial.println("Led Off");
          //clearing string for next read


Google forum search: Use Google Search box in upper right side of this page.
Why I like my 2005 Rio Yellow Honda S2000  https://www.youtube.com/watch?v=pWjMvrkUqX0



i just logged in sir.. thank you for the code.. i will try it now.. with ethernet shield using ur LAN ip, can i open that address form another browser with different network? cause what im thinking is that i can control my arduino via internet right? so is it like that i can control it around the world? thank you for a reply

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131