Problème connexion Ethernet

Bonjour,

J’essai de connecter mon arduino uno avec moin sheild R2 en ethernet. Mais impossible, je n’ai rien sur le monitor.

voici le code :

#include <SPI.h>
#include <Ethernet.h>
 
// L'adresse MAC du shield
byte mac[] = { 0x90, 0xA2, 0xDA, 0x10, 0xA1, 0x3F };
// L'adresse IP que prendra le shield
IPAddress ip(10,40,100,63);
// L'objet qui nous servira a la communication
EthernetClient client;
// Le serveur à interroger
char serveur[] = "perdu.com";
 
void setup() {
  // On démarre la voie série pour déboguer
  Serial.begin(9600);
 
  char erreur = 0;
  // On démarre le shield Ethernet SANS adresse ip (donc donnée via DHCP)
  erreur = Ethernet.begin(mac);
 Serial.println("Adressage...");
  if (erreur == 0) {
    Serial.println("Parametrage avec ip fixe...");
    // si une erreur a eu lieu cela signifie que l'attribution DHCP
    // ne fonctionne pas. On initialise donc en forçant une IP
    Ethernet.begin(mac, ip);
  }
  Serial.println("Init...");
  // Donne une seconde au shield pour s'initialiser
  delay(1000);
  Serial.println("Pret !");
}

void loop(){
  
}

toute mes leds 100M, LINK, FDX, ACT sont bien allumé… une idée?

c’est ici que le programme bloque : Ethernet.begin(mac);
merci

Edit : Je suis sur un réseaux “entreprise” donc je pense que e DHCP n’attribu pas d’adresse automatique, je me trompe?
J’ai réglé ce problème en enlèvement l’automatisation de l’ip.

merci

avec le schield ethernet v2 il faut utiliser la lib ethernet2

bonjour,

j’ai téléchargé cette librairie :

et toujours le même soucie,

Ethernet.begin(mac) ne semble pas fonctionner tout comme client.connect(server, 80)

une idée? ce n’est pas la bonne librairie?

Après avec téléchargé 3 bibliothèque c'est bon :slight_smile:

Je ne trouvais pas pour le W5500 et l'IDE 1.6...

Edit : j'ai ceci lors du televersement : ATTENTION : Faux .github dossier dans la bibliothèque 'Ethernet2'
Pas grave je suppose?

merci

bonjour,

je reviens vers vous car j'ai quelques soucie...
Je suis sur un reseau internet et je souhaite connecter mon arduino en ethernet sur mon ordinateur (ou sur une adresse IP) qui reste dans le même reseau, (donc pas besoin d'aller sur le net)

Mon arduino a bien une adresse IP que je peux ping depuis mon ordinateur.

mais lors du :

  if (client.connect(server, 80))

impossible de me connecter, pourtant server est l'adresse IP de mon ordinateur.

Une idée? merci

Edit :
ALors j'ai mis une page web sur mon serveur local et ça semble se connecter mais bizarrement.
Je m'explique :
voici le code de connection :

  if (client.connect(server, 80)) {
    Serial.println("connecting...");
    // send the HTTP PUT request:
    client.println("GET /index.html HTTP/1.1");
    client.println("Host: http://mapage/Arduino/");
    client.println("User-Agent: arduino-ethernet");
    client.println("Connection: close");
    client.println();

    // note the time that the connection was made:
    lastConnectionTime = millis();
  }
[code] 

mais seulement "connecting..." s'affiche. je fais ça de manière continu, donc j'ai plein de "connecting" qui s'affiche, pk le reste ne s'affiche pas? 

merci

elec44:
bonjour,

je reviens vers vous car j'ai quelques soucie...
Je suis sur un reseau internet et je souhaite connecter mon arduino en ethernet sur mon ordinateur (ou sur une adresse IP) qui reste dans le même reseau, (donc pas besoin d'aller sur le net)

Mon arduino a bien une adresse IP que je peux ping depuis mon ordinateur.

mais lors du :

  if (client.connect(server, 80))

impossible de me connecter, pourtant server est l'adresse IP de mon ordinateur.

Une idée? merci

Edit :
ALors j'ai mis une page web sur mon serveur local et ça semble se connecter mais bizarrement.
Je m'explique :
voici le code de connection :

  if (client.connect(server, 80)) {

Serial.println("connecting...");
    // send the HTTP PUT request:
    client.println("GET /index.html HTTP/1.1");
    client.println("Host: http://mapage/Arduino/");
    client.println("User-Agent: arduino-ethernet");
    client.println("Connection: close");
    client.println();

// note the time that the connection was made:
    lastConnectionTime = millis();
  }

[code]

mais seulement "connecting..." s'affiche. je fais ça de manière continu, donc j'ai plein de "connecting" qui s'affiche, pk le reste ne s'affiche pas?

merci

Bonjour ton "server" doit être l'ip de ton server (si tu en as un) :wink:

oui le client (ton arduino) se connecte à ton serveur et envoie une requête

Bonjour,

mon serveur est mon ordinateur donc :

monip/Arduino/

quand je fais ce lien sur google chrome, je tombe bien sur ma page web :slight_smile:

j'ai une erreur -5 lors du client.connect

Problème résolu ...

pour appeler le serveur je mettai http devant :slight_smile: mais il ne faut pas :wink: