Les modules XBee sont de petits modems radio fonctionnant sur le principe des normes 802.15.4 et/ou Zigbee.
On les utilisent - entre autres possibilités - pour réaliser des liaisons séries sans-fil entre un ordinateur et des montages électroniques indépendants (typiquement, des robots mobiles comme le Pobot Easy).
Différentes versions
Il existe plusieurs versions sur le marché et il est malheureusement très facile de se tromper (ou de croire bien faire) en achetant des ’series 2’ au lieu des premières versions.
Disons-le pour simplifier : les versions 1 (ou XBee 802.15.4) sont largement suffisants pour l’usage mentionné ci-dessus. Et surtout ils sont plus simples à configurer (voire ils ne se configurent pas du tout dans 50% des cas). Et il n’est pas possible de faire avec les ’series 2’ ce qu’on fait avec les premières versions.
Cet article s’intéresse à la configuration des XBee ’series 2’ pour ceux qui en auraient (par erreur ou par conviction) et souhaitent bien débuter.
Pour aller plus loin
Sur le site DIGI.COM (fabriquant des XBee), voici les explications des différences entre séries : http://www.digi.com/technology/rf-t....
Matériel nécessaire
En plus de vos modules XBee, il est bon d’avoir une carte qui fasse la liaison avec un ordinateur sous Windows pour utiliser le logiciel de configuration distribué par Digi : X-CTU.
Cette carte peut être réalisée par vos-soins, mais on peut faire l’acquisition d’une platine USB (15 €) selon le budget global de votre projet et vos compétences.
De même, on utilise dans cet article une carte Arduino qui communique avec les XBee via un "Xbee Shield" pour éviter tout problème hardware qui viendrait s’ajouter aux problèmes de configuration. Vous pouvez remplacer ces circuits par un montage plus simple.
Lecture de la configuration
On peut aisément connaitre la configuration d’un module XBee en utilisant un terminal série et en tapant des commandes (dites "AT" selon le mode de configuration des premiers modems téléphoniques) pour connaitre ou changer les valeurs du module.
Par exemple :
On commence la communication par +++ et on la termine par ATCN (comme ’connection’). Cette manip’ permet de connaitre le numéro de version XBee (VR), l’adresse personnelle du module (MY), le numéro de réseau (PAN ID), les deux parties (haute et basse) du numéro de série (SH, SL).
Mais ce n’est pas très pratique. Il est préférable d’utiliser l’outil de configuration X-CTU (d’ailleurs c’est lui qui a fourni la petite console série de la copie d’écran ci-dessus).
Configuration rapide
Une fois familiarisé avec l’interface du logiciel X-CTU, on va configurer deux modules pour qu’ils communiquent entre eux. Il suffit de retenir les deux principes suivants :
utiliser un identifiant de réseau (PAN ID) unique (changer la valeur par défaut)
toujours avoir au moins un module et un seul en rôle coordinateur, et tous les autres en routeurs.
Parmi toutes les configurations de rôle possibles (menu déroulant "function set" dans l’interface X-CTU), on va utiliser les deux rôles "ZIGBEE COORDINATOR AT" et "ZIGBEE ROUTER/END POINT AT".
Pour chacun des modules, choisissez un des deux function sets et cliquez sur "write" après avoir bien coché la case "Always update firmware". Puis affichez les valeurs par défaut ("Show defaults") et modifiez le PAN ID (utilisez bien sûr le même pour tous les modules qui devront communiquer ensemble, même le coordinateur). Faites une dernière écriture dans le module.
Désormais vos modules XBee vont pouvoir communiquer ensemble aussi facilement qu’avec les premières versions.
Problèmes possibles
Mon module ne répond plus
Dans certains cas, le module peut ne plus fonctionner. Si cela vous arrive, le logiciel X-CTU le détectera lors d’une lecture de la configuration et vous demandera de faire un reset.
C’est chose aisée en court-circuitant la masse et la patte Reset du module (5ème en partant du haut sur le connecteur de gauche du Xbee).
Flasher les modules ZNet
Un de nos lecteurs nous indique une manip’ supplémentaire pour des modules "Series 2" qui ne proposaient pas le protocole Zigbee mais uniquement le ZNet 2.5 propre à Digi. Ce n’était pas le cas avec les modules "Series 2" que j’ai utilisé car ils proposaient tous les Function Sets, sans doute disponibles sur les dernières versions (revision C de 12/2008).
Afin d’éviter de devoir créer un réseau Mesh (particularité de la série 2), j’ai du les flasher : http://www.digi.com/support/kbase/k...
A présent, je fais travailler les Xbee en réseau avec 1 coordinateur AT et des End Device AT. J’ai choisi AT mais certains préféreront API.
Je fourni un lien qui m’a aidé à comprendre : le blog de Ruben’s : Xbee 2 vers XBee ZB par Ruben
Configuration d’usine
La commande ATRE permet de revenir à la configuration d’origine du module, avec les valeurs par défaut. Comme toute commande Hayes, il faut passer en mode spécial avec +++, attendre la réponse OK et saisir la commande ATRE + touche entrée. N’oubliez pas de faire un ATWR (write) pour écrire la configuration et un ATCN (connect) pour se déconnecter.