Je suis en train de réaliser un projet qui nécessite de faire communiquer deux arduino via xBee (j'ai choisi xBee pour la simplicité de leur mise en oeuvre). Pour être plus précis, j'ai pris des xBee pro.
Mes cartes Arduino sont d'une part, la Duemilanove, d'autre part la Mini pro.
Pour éviter de de trop me fatiguer avec le fer à souder, j'ai acheté le XBee Explorer USB et XBee Explorer Regulated.
J'ai connecté le premier au Duemilanove (Tx, Rx et alimentation) et le second au Pro mini via les broches prévues à cet effet.
Je précise avant tout que j'ai testé la communication entre les deux systèmes via une liaison filaire.
Mon soucis est qu'il ne se passe rien coté Duemilanove : pas d'émission.
Par contre, si je connecte le xBee à mon PC via le XBee Explorer USB (pou simuler le programme embarqué sur la Duemilanove), la communication fonctionne. Mes messages sont émis, le récepteur fait ce qu'il a à faire et répond correctement.
Alors, ma question est la suivante : y a t'il qqc de particulier à faire pour connecter le XBee Explorer USB à la Duemilanove ? Est-ce qu'on peut les connecter directement (j'ai mis Tx à Din et Rx à Dout) ?
Bon, en fait, ça venait de l'alimentation : une soudure sèche dans le circuit qui a cédé au mauvais moment. Ceci dit, je ne comprends pas pourquoi j'ai eu tous ces problèmes uniquement à cause de cette soudure (à un moment, la LED rouge allumée de mon module était allumée et donc alimenté et ça ne fonctionnait pas). Je n'arrive pas à reconstituer tout le film.
Donc, en conclusion, il n'y a pas de problèmes pour connecter un xBee à un Arduino via un xBee Explorer USB.
Bon, je n'ai pas pu résister à la tentation de faire l'essai. Vu le temps, je l'ai fait entre le sous-sol et le premier étage de la maison : ça marche, donc, sans gestion du CTS.
S'il fait beau ce WE, je tente aux extrémités de ma rue (300 m à vue de nez) : pour mon application, ce serait suffisant.
je ne sais pas exactement mais dans mon cas en envoyant des donnees a partir du module usb xbee de mon pc vers mon autre xbee connecter a la platine GHI electronic pour afficher un message graphique sur son LCD j'avais des pertes de caracteres donc je me suis dit que ca devait venir du protocole donc de la gestion du flux de caractere et a plus de un mettre j'avais des pertes de caractere donc du coup en gerant le protocole hardware CTS/RTS j'ai pu le teste a plus de 10 metre et ca fonctionnait. Ou a moins que ce soit une perturbation des signaux avec du wifi comme j'ai trois spot wifi en marche.
Envoyé et recevoir des caractere sur seulement les bornes rx et tx du xbee je suis etonné que ca fontionne du sous sol au premmier etage.
Je ferai un test avec l'arduino mega2560, test que je n'ai pas encore effectué en utilisant seulemtn le RX et le TX, mais je crois que l'arduino ne gere pas le CTS/RTS d'origine dans ses librairies Serie il faut le gerer soit meme, peut une prochaine version de NewsoftSerial qui etait prevu de le faire.
Je te confirme que le système a fonctionné à plus de 100 mètres et donc, sans gestion du CTS. Mais je comprends bien les raisons qui t'ont conduit à l'utiliser (en gestion de flux).
en effet j'ai fait le test et ca a marcher a plus de 10 m mais dans le sens router vers coordinator, (routeur connecter a l'arduino qui envoi des donnees au coordinator qui est une platine usb xbee brancher sur un pc) je n'ai pas fait le test inverse sachant que come le coordinator est une platine usb xbee peut etre c'etait du a des latences par rapport a l'usb du pc ou a ma platine ghi electronic.