Communication en ip avec une centrale de commande

Bonjour,

J'aimerais savoir, si quelqu'un peut m'expliquer, comment fonctionne réellement l'arduino lorsque j'utilise cette commande:

if ("EthernetClient".connect("IPAdress", "port")) {
Serial.println("connected");
}
else {
// if you didn't get a connection to the server:
Serial.println("connection failed");
}

Je m'explique, j'essaie de me connecter à une centrale de commande Extron IPL250 pour la piloter en IP.
Seulement le problème est que l'arduino refuse de se connecter à la centrale avec cette commande alors que j'arrive à me connecter à d'autres appareils de la même manière.

Donc je voudrais comprendre comment fonctionne l'arduino dans ce cas, qu'est ce qui lui dit qu'elle est bien connectée à l'ip demandée?
Parce qu'à la différence des autres appareils auxquels je me suis connecté, la centrale envoie un message dès la connection, par exemple:

(retour à la ligne)
(c) Copyright 2009, Extron Electronics, IPL 250, V1.15, 60-1026-81
Tue, 12 Feb 2013 17:52:37

Alors peut être que c'est ça qui fais planter ma carte... Je ne sais pas...

Bonjour,

Pas de quote (") autour de EthernetClient sinon c'est une string :wink:

jehuty47:
Donc je voudrais comprendre comment fonctionne l'arduino dans ce cas, qu'est ce qui lui dit qu'elle est bien connectée à l'ip demandée?

Grâce au "3-Way Handshake" du protocole TCP (SYN,SYN-ACK,ACK) :

jehuty47:
Alors peut être que c'est ça qui fais planter ma carte... Je ne sais pas...

C'est pas ça qui pose problème, dés la connexion ouverte la carte peut envoyer autant de données quelle veut, si ça dépasse la taille du buffer interne du chipset ethernet ça écrase les anciennes données.

Il faut chercher ailleurs :

  • la shied ethernet -> officiel ou non ?
  • le Ethernet.begin() -> IP static ou dynamique ? Avec ou sans Gateway ?
  • la configuration réseau physique (câbles croisé, droit, ...)

Bonjour,

Quote from: jehuty47 on February 12, 2013, 05:25:33 PM
Donc je voudrais comprendre comment fonctionne l'arduino dans ce cas, qu'est ce qui lui dit qu'elle est bien connectée à l'ip demandée?
Grâce au "3-Way Handshake" du protocole TCP (SYN,SYN-ACK,ACK) :
Transmission Control Protocol — Wikipédia

Quote from: jehuty47 on February 12, 2013, 05:25:33 PM
Alors peut être que c'est ça qui fais planter ma carte... Je ne sais pas...
C'est pas ça qui pose problème, dés la connexion ouverte la carte peut envoyer autant de données quelle veut, si ça dépasse la taille du buffer interne du chipset ethernet ça écrase les anciennes données.

Merci pour les infos :slight_smile:

  • la shied ethernet -> officiel ou non ?

Elle est tout ce qui a de plus officiel

  • le Ethernet.begin() -> IP static ou dynamique ? Avec ou sans Gateway ?
  • la configuration réseau physique (câbles croisé, droit, ...)

C'est un ip static sans gateway, je ne pense pas que c'est un problème réseau vu que j'arrive à piloter d'autres appareils en ip avec la même commande.
Je ne sais plus quoi essayer d'autre... :frowning:

Fait un test avec une console réseau (netcat par exemple) pour voir ce que envoi l'arduino et ce que envoi ton module réseau.

Ok je vais essayer je te remerci :wink: