J'ai simplement lancer le reseau avec l'adresse mac et le DHCP de la freebox lui a attribué une ip
code modifié : Ethernet.begin(mac);
merci à tous pour l'aide et les infos
je laisse le qui est ok ici et je vais également le mettre sur le site de la personne qui a fait le code de départ.
Code:
// Controle d'une FreeBox par IR V1.0
// Par Thomas Feillant 04/11
// Tuto par Cyril sur www.ituilerie.com
#include <IRremote.h>
#include <SPI.h>
#include <Ethernet.h>
#include "Arduino.h"
//Initialisation du reseau
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0x9D, 0xEC }; // MacID de l'Ethernet Shield
byte ip[] = { 192,168,0,30 }; // IP que prendra le module
byte gateway[] = { 192,168,0,254 }; // Adresse de la Passerelle (routeur)
byte server[] = { 212,27,40,254 }; //Adresse de la FreeBox 212,27,40,253 ou 212,27,40,254
EthernetClient client;
int RECV_PIN = 5;// Borne de Reception des infos
IRrecv irrecv(RECV_PIN);
decode_results results;
String CodeFree; // Sert a stocker le code a transmettre
void setup() {
irrecv.enableIRIn(); // Demarage du recepteur
// Demarage de la librairie Communication serie
Serial.begin(9600);
Serial.println("Connexion ...");
// Tempo pour laisser une seconde a l'Ethernet Shield le temps de s'initialiser
Ethernet.begin(mac);
delay(1000);
}
void loop()
{
if (irrecv.decode(&results)) {
if(client.connect(server, 80)>0) {
CodeFree = String("none");
switch (results.value) {
case 1261: CodeFree = String("prgm_inc"); break; // La valeur du case correspond au code IR reçu
case 17645: CodeFree = String("prgm_dec"); break;
case 14317: CodeFree = String("ok"); break;
case 21741: CodeFree = String("power"); break;
case 3821: CodeFree = String("home"); break;
case 10221: CodeFree = String("up"); break;
case 26605: CodeFree = String("down"); break;
case 6125: CodeFree = String("right"); break;
case 22509: CodeFree = String("left"); break;
case 237: CodeFree = String("1"); break;
case 16621: CodeFree = String("2"); break;
case 8429: CodeFree = String("3"); break;
case 24813: CodeFree = String("4"); break;
case 4333: CodeFree = String("5"); break;
case 20717: CodeFree = String("6"); break;
case 12525: CodeFree = String("7"); break;
case 28909: CodeFree = String("8"); break;
case 2285: CodeFree = String("9"); break;
case 18669: CodeFree = String("0"); break;
case 19949: CodeFree = String("red"); break;
case 3565: CodeFree = String("green"); break;
case 2797: CodeFree = String("yellow"); break;
case 27373: CodeFree = String("blue"); break;
case 23789: CodeFree = String("rec"); break;
case 11501: CodeFree = String("play"); break; // Play est repété 2 fois car sur la logitec il y a play et pause
case 19693: CodeFree = String("play"); break;// Alors que sur la freebox il n'y a qu'une touche pour les 2
case 27885: CodeFree = String("bwd"); break;
case 7405: CodeFree = String("fwd"); break;
case 29421: CodeFree = String("vol_inc"); break;
case 10733: CodeFree = String("vol_dec"); break;
case 6637: CodeFree = String("mute"); break;
}
if (CodeFree.equals("none")) {
// Pas d'envoie de commande
Serial.println("Pas d'envoie");
Serial.println(results.value); // Affichage du code IR
} else {
Serial.println("Envoie Code");
client.println("GET /pub/remote_control?code=59042557&key="+CodeFree+" HTTP/1.0"); // Entrer le code Telecomande a distance
client.println();
}
client.stop();
}
// Tempo pour eviter la repetition d'une commande non voulu
delay(100);
irrecv.resume(); // reprise de la reception IR, necessaire
}
}
// Par Thomas Feillant 04/11
// Tuto par Cyril sur www.ituilerie.com
#include <IRremote.h>
#include <SPI.h>
#include <Ethernet.h>
#include "Arduino.h"
//Initialisation du reseau
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0x9D, 0xEC }; // MacID de l'Ethernet Shield
byte ip[] = { 192,168,0,30 }; // IP que prendra le module
byte gateway[] = { 192,168,0,254 }; // Adresse de la Passerelle (routeur)
byte server[] = { 212,27,40,254 }; //Adresse de la FreeBox 212,27,40,253 ou 212,27,40,254
EthernetClient client;
int RECV_PIN = 5;// Borne de Reception des infos
IRrecv irrecv(RECV_PIN);
decode_results results;
String CodeFree; // Sert a stocker le code a transmettre
void setup() {
irrecv.enableIRIn(); // Demarage du recepteur
// Demarage de la librairie Communication serie
Serial.begin(9600);
Serial.println("Connexion ...");
// Tempo pour laisser une seconde a l'Ethernet Shield le temps de s'initialiser
Ethernet.begin(mac);
delay(1000);
}
void loop()
{
if (irrecv.decode(&results)) {
if(client.connect(server, 80)>0) {
CodeFree = String("none");
switch (results.value) {
case 1261: CodeFree = String("prgm_inc"); break; // La valeur du case correspond au code IR reçu
case 17645: CodeFree = String("prgm_dec"); break;
case 14317: CodeFree = String("ok"); break;
case 21741: CodeFree = String("power"); break;
case 3821: CodeFree = String("home"); break;
case 10221: CodeFree = String("up"); break;
case 26605: CodeFree = String("down"); break;
case 6125: CodeFree = String("right"); break;
case 22509: CodeFree = String("left"); break;
case 237: CodeFree = String("1"); break;
case 16621: CodeFree = String("2"); break;
case 8429: CodeFree = String("3"); break;
case 24813: CodeFree = String("4"); break;
case 4333: CodeFree = String("5"); break;
case 20717: CodeFree = String("6"); break;
case 12525: CodeFree = String("7"); break;
case 28909: CodeFree = String("8"); break;
case 2285: CodeFree = String("9"); break;
case 18669: CodeFree = String("0"); break;
case 19949: CodeFree = String("red"); break;
case 3565: CodeFree = String("green"); break;
case 2797: CodeFree = String("yellow"); break;
case 27373: CodeFree = String("blue"); break;
case 23789: CodeFree = String("rec"); break;
case 11501: CodeFree = String("play"); break; // Play est repété 2 fois car sur la logitec il y a play et pause
case 19693: CodeFree = String("play"); break;// Alors que sur la freebox il n'y a qu'une touche pour les 2
case 27885: CodeFree = String("bwd"); break;
case 7405: CodeFree = String("fwd"); break;
case 29421: CodeFree = String("vol_inc"); break;
case 10733: CodeFree = String("vol_dec"); break;
case 6637: CodeFree = String("mute"); break;
}
if (CodeFree.equals("none")) {
// Pas d'envoie de commande
Serial.println("Pas d'envoie");
Serial.println(results.value); // Affichage du code IR
} else {
Serial.println("Envoie Code");
client.println("GET /pub/remote_control?code=59042557&key="+CodeFree+" HTTP/1.0"); // Entrer le code Telecomande a distance
client.println();
}
client.stop();
}
// Tempo pour eviter la repetition d'une commande non voulu
delay(100);
irrecv.resume(); // reprise de la reception IR, necessaire
}
}