Go Down

Topic: Reconnaissance Arduino sur réseau Linux [Résolu] (Read 789 times) previous topic - next topic

Darwoon

Feb 25, 2013, 12:30 am Last Edit: Feb 26, 2013, 01:35 pm by Darwoon Reason: 1
Bonjour,

J'ai un problème de reconnaissance d'Arduino r3 Uno smc sur un réseau ! La carte est branchée par ethernet (avec l'ethernet shield) à mon pc (Linux lubuntu 12.10).
Arduino joue le rôle du serveur, et traite les données envoyées par le client (un script en C) pour allumer ou éteindre une LED. Cela marche parfaitement !

Le problème est que la carte n'est pas toujours reconnue sur le réseau. Desfois ça marche, desfois non, puis ça revient au bout d'un moment... sans explication. A noter que l'ordi et la carte sont directement reliés par câble ethernet. Je n'ai absolument rien configuré sur linux (j'utilise le port 23). Cela vient peut-être de là... mais comme ça a déjà marché...

Avec un telnet ou ping, ça me donne : Network is unreachable
Et le perror() de la fonction connect() en C : connect() No route to host

Je vous remercie de votre aide,
Cordialement Darwoon

Pac2Kro

Comment est configuré la carte réseau de la machine Linux (DHCP, statique, IP, masque, etc...)?
Comment est configuré la carte réseau de l'Ethernet shield (DHCP, statique, IP, masque, etc...)?
Câble Ethernet, croisé ou droit?

Darwoon


Câble Ethernet, croisé ou droit?

Euh... je sais pas ce que c'est ^^ un câble ethernet basique qui relie la sortie rj45 de mon pc à l'ethernet shield.

Aujourd'hui j'ai refait mon branchement, en passant par un commutateur, pour que mon pc et arduino soit en même temps connectés... et ça marche, ma livebox est bien configurée.

Je pense que ça venait de la configuration de mon réseau linux. Mais bon, j'ai trouvé une autre solution, donc ça ira.

Je te remercie :)

skywodd

Bonjour,

-> code arduino
-> configuration réseau détaillé (petit schéma rapide de l'infrastructure, ip/submask/dhcp (oui/non), ...)
Sans un minimum d'info on ne peut pas deviner l'origine du problème ;)
Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Pac2Kro

Les câbles Ethernet "classique" sont "droit".
Pour relier directement ta carte à ta machine, il faut un câble croisé.

Si tu souhaites t'instruire : http://fr.wikipedia.org/wiki/RJ45

fdufnews

Quote
Aujourd'hui j'ai refait mon branchement, en passant par un commutateur, pour que mon pc et arduino soit en même temps connectés... et ça marche, ma livebox est bien configurée.


Si le simple fait d'être passé par un switch a débloqué le problème c'est que tu devais avoir un câble droit. Lorsqu'on connecte deux machines l'une à l'autre il faut utiliser un câble croisé car de nombreuses cartes réseau ne gèrent pas le croisement du câble alors que les switch le font quasiment tous de manière automatique.

Darwoon

Oui cela venait bien de ça. J'ai récup un câble croisé, et effectivement ça marche :)
Merci tout le monde  :)

Pac2Kro


Lorsqu'on connecte deux machines l'une à l'autre il faut utiliser un câble croisé car de nombreuses cartes réseau ne gèrent pas le croisement du câble alors que les switch le font quasiment tous de manière automatique.


Avant que certains équipements gèrent dynamiquement le "croisement" ou pas du câble, la règle était la suivante:
2 types d'équipements, les hôtes (PC, Ethernet shield, etc...), les concentrateurs (Hub, switch, etc...).

Entre deux équipements identiques, un câble croisé.
Entre deux équipements différents, un câble droit.

Go Up