pablos:
se vuoi sapere dove inserirlo nel tuo sketch mi serve qualcosa di piu' di un if piripicchio 
Hai ragione e' che non volevo "disturbare" troppo .... questo e' lo sketch
#include <String.h>
#include <SPI.h>
#include <Ethernet.h>
#include <OneWire.h>
#include <DallasTemperature.h>
// Data wire is plugged into pin 2 on the Arduino
#define ONE_WIRE_BUS 6
// Setup a oneWire instance to communicate with any OneWire devices
// (not just Maxim/Dallas temperature ICs)
OneWire oneWire(ONE_WIRE_BUS);
// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);
///////////////////////////////////////////////////////////////////
byte mac[] = {
0x00, 0xAA, 0xBB, 0xCC, 0xDA, 0x02 }; // mac address
byte ip[] = {
192,168,1,7 }; // ip arduino internet in
byte gateway[] = {
192,168,1,1 }; // internet access via router
byte subnet[] = {
255, 255, 255, 0 }; //subnet mask
EthernetServer server(80); //server port
//definizione attuatori
int outPin = 2; // pin attuatore cancello
int outPin2 = 3; // pin attuatore tenda su
int outPin3 = 4; // pin attuatore tenda giu
int outPin4 = 5; // pin attuatore tenda metà
int outPin5 = 7; // pin controllo canale
int C = 5; // Variabile canale
int D = 0;
int lettura = 0;
String readString; // legge int e assegna l'uscita
void setup()
{
Ethernet.begin(mac, ip, gateway, subnet);
pinMode(outPin, OUTPUT); //definisce che il pin e' un uscita
pinMode(outPin2, OUTPUT);
pinMode(outPin3, OUTPUT);
pinMode(outPin4, OUTPUT);
pinMode(outPin5, OUTPUT);
//pinMode(outPin5, OUTPUT);
Serial.begin(9600);
// start serial port
Serial.begin(9600);
Serial.println("Dallas Temperature IC Control Library Demo");
// Start up the library
sensors.begin();
}
void loop()
{
{
lettura = C;
Serial.println(lettura);
}
// call sensors.requestTemperatures() to issue a global temperature
// request to all devices on the bus
Serial.print(" Requesting temperatures...");
sensors.requestTemperatures(); // Send the command to get temperatures
Serial.println("DONE");
Serial.print("Temperature for Device 1 is: ");
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"?
// You can have more than one IC on the same bus.
// 0 refers to the first IC on the wire
/*inizio client*/
EthernetClient client = server.available();
if (client) {
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
readString.concat(c); //store characters to string
//if HTTP request has ended
{
lettura = C;
Serial.println(lettura);
}
if (c == '\n' && currentLineIsBlank) {
if(readString.indexOf("D=1") > 0)
{
C=1; // CONTROLLO CANALE
}
if(readString.indexOf("S=1") > 0)
{
C=2; // CONTROLLO CANALE
}
if(readString.indexOf("E=1") > 0)
{
C=6; // CONTROLLO CANALE
}
if(C==1)
{
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
C=7;
D=1;
}
if(C==2)
{
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(10);
C=8;
D=2;
}
if(C==6)
{
if(D==1)
{
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(10);
C=9;
D=3;
}
else
{
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
delay(500);
digitalWrite(7,LOW);
delay(10);
C=9;
D=3;
}
}
if(readString.indexOf("L=1") > 0)
{
digitalWrite(outPin, HIGH); // CONTROLLO CANCELLO
Serial.println(outPin);
delay(2000);
digitalWrite(outPin, LOW);
}
if(readString.indexOf("A=1") > 0)
{
digitalWrite(outPin2, HIGH); // CONTROLLO TENDE COMANDO SU
Serial.println(outPin2);
delay(500);
digitalWrite(outPin2, LOW);
}
if(readString.indexOf("A=3") > 0)
{
digitalWrite(outPin3, HIGH); // CONTROLLO TENDE COMANDO GIU
Serial.println(outPin3);
delay(500);
digitalWrite(outPin3, LOW);
}
if(readString.indexOf("A=2") > 0)
{ // CONTROLLO TENDE COMANDO INTERMEDIO
digitalWrite(outPin2, HIGH); // Attivo il rele di salita
delay(500); //
digitalWrite(outPin2, LOW); // ------------------------
delay(40000); // Imposto il tempo di salita
digitalWrite(outPin3, HIGH); // Disattivo il rele di discesa
delay(500); //
digitalWrite(outPin3, LOW); // ----------------------------
delay(16000); // Imposto il tempo perche' la tenda arrivi nel mezzo
digitalWrite(outPin4, HIGH); // Attivo il relo di Stop
delay(500); //
digitalWrite(outPin4, LOW); // ----------------------
}
// COSTRUZIONE PAGINA HTML
client.println("HTTP/1.1 200 OK.....");
client.println("Content-Type: text/html");
client.println();
// inizializzo pagina (da togliere se uso ajax)
client.print("<html><head><title>DomusGate</title><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' ></head><body>");
//inizai il body
client.println("<div style='width:400px; height:600px;'>"); //risoluzione per nokia 5800 640x360
client.println("<h1>CONTROLLO REMOTO</h1>");
client.println("
");
client.println("<hr>");
client.println("
");
client.println("<h2>APRICANCELLO</h2>");
client.print("<h3><a href='/?L=1'>APRI</a></h3>");
client.println("
");
client.println("<hr>");
client.println("<hr>");
client.println("<h2>CONTROLLO TENDE</h2>");
client.print("<h3><a href='/?A=1'>SU</a></h3>");
client.print("<h3><a href='/?A=2'>INTERMEDIO</a></h3>");
client.print("<h3><a href='/?A=3'>GIU</a></h3>");
client.println("
");
client.println("<hr>");
client.println("<hr>");
client.println("<h3><p>Temperatura interna = ");
client.print(sensors.getTempCByIndex(0));
client.println(" C
</p></h3>");
client.println("<hr>");
client.println("<hr>");
client.print("<h4><a href='/?D=1'>DESTRA</a></h4>");
client.print("<h4><a href='/?E=1'>ENTRAMBE</a></h4>");
client.print("<h4><a href='/?S=1'>SINISTRA</a></h4>");
// chiudo il div
client.println("</div>");
// chiudo pagina da togliere se uso ajax
client.println("</body></html>");
// pulisco la stringa per la successiva lettura
readString="";
//fermo il client
client.stop();
} //if c == /n
} // if client available
} // while client connesso
} // FINE if client
} // fine loop