Monthly Archives: juin 2013

Premiers pas avec un JeeNode

N’ayant pas de programmateur sur mes radiateurs électriques dans mon appartement, j’ai décidé avant l’hiver de concevoir un petit programme permettant de régler la température de manière optimale.

Je me suis donc basé sur un Arduino, des capteurs de températeurs DS18B20, le tout relié à un mon mini-pc gérant la commande des radiateurs via Z-Wave. Pour récupérer la température dans ma chambre, j’ai profité des fils de téléphone inutilisés qui passaient déjà dans les murs.

Tout à très bien marché, le soucis c’est que je n’ai jamais pris le temps de finaliser correctement la partie « filaire » de l’installation, et je me suis donc retrouvé avec un arduino posé sur le sol de mon salon connecté à tous pleins de fils.

Voulant passer à quelque chose d’un peu plus intégré, j’ai donc commencé à regarder comment il serait possible de récupérer la température, de préférence sans-fil, pour pouvoir disposer les capteurs où bon me semble. Afin de limiter le coût, j’ai cherché à réutiliser des capteurs existants de stations météo. Cela permet aussi d’avoir des capteurs bien fini, étanche, avec le logement pour les piles, etc…

Il fallait donc trouver un système, de préférence à base d’Arduino, permettant de recevoir facilement les données sans-fil des sondes existantes. Après un peu de recherche, je suis tombé là dessus : http://gcrnet.net/node/32. D’après cet article, il est apparemment possible de récupérer la température des sondes La Crosse Technology TX29 à l’aide d’un clone d’Arduino, nommé JeeNode, possédant un émetteur/récepteur adéquat. La sonde TX29 est vendu 12,90€ chez Leroy Merlin et me permet pour le même prix d’avoir l’hygrométrie (selon le modèle) et un écran LCD :). Le JeeNode quant à lui est commandable sur le site du constructeur pour 18,50€ (auquel il faut rajouter un adaptateur USB à 13,50€ pour pouvoir le programmer). Voilà qui était dans mes prix !

J’ai donc passé commande du JeeNode et de son adaptateur et voici ce que j’ai reçu :jeenodev6_large

Effectivement, le JeeNode est en kit. 30 minutes et quelques coups de fer à souder plus tard, voici le résultat (note au passage, investissez dans un bon fer à souder, j’ai eu peur à plusieurs reprises d’avoir tout cramé) :
JeeNode v6

Puis viens le moment suspens, on branche tout ça au PC et… ça marche 🙂 On charge le programme disponible sur le site permettant de décoder les trames des sondes de température et on voit s’afficher les températures relevées par les sondes 🙂

Nous recevons le relevé de température toutes les 4 secondes. Chaque sonde dispose d’un identifiant généré aléatoirement lors de l’insertion des piles. Cet identifiant est affiché quelques secondes sur l’écran LCD de la sonde lors de la mise en route.

Comme je ne suis pas fan du mix Arduino/C du programme disponible sur le site gcrnet, j’ai repris le travail effectué et j’ai ré-implémenté tout ça dans un fichier .ino classique. Il est disponible ici : tx29_jeenode. J’y ai aussi ajouté la librairie RF12 modifiée.

Maintenant que tout fonctionne, il va falloir adapter le code pour la prochaine étape : la communication en I2C avec un routeur TP LINK TL-WR703N !