Go Down

Topic: Communication en ip avec une centrale de commande (Read 672 times) previous topic - next topic

jehuty47

Bonjour,

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

Quote

  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:

Quote
(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...

skywodd

Bonjour,

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


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) :
http://fr.wikipedia.org/wiki/Transmission_Control_Protocol#.C3.89tablissement_d.27une_connexion


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, ...)
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

jehuty47

Bonjour,

Quote

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) :
http://fr.wikipedia.org/wiki/Transmission_Control_Protocol#.C3.89tablissement_d.27une_connexion

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  :)

Quote
- la shied ethernet -> officiel ou non ?


Elle est tout ce qui a de plus officiel

Quote
- 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...  :(

skywodd

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.
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !


Go Up