Capteurs de température autonomes MSP430 + Xbee

Il y a bientôt 3 ans de ça, alors que l’ESP8266 n’existait pas encore, je cherchais un moyen de collecter des données de température de plusieurs points d’un appartement, sans avoir la possibilité de brancher ces capteurs électriquement ou de les connecter au réseau filaire.

Après quelques recherches, j’ai réalisé que les micro contrôleurs Atmel utilisés dans les Arduino ne sont pas forcément adaptés à un fonctionnement sur batterie sur une longue durée.

On m’a alors conseillé d’étudier la famille des MSP430 de Texas Instruments, et en particulier la gamme MSP430G2xx Ultra-Low Power. Aussitôt mes samples du MSP430G2553 reçus (cette version intégre une interface série UART), les premiers tests étaient concluants : moins de 1μA de consommation en mode LPM3 (l’horloge auxiliaire reste active, avec un oscillateur crystal externe de 32 kHz).

Vue intérieure du module

Schéma module

Couplé à un XBee Série 1 pour sa simplicité d’utilisation (mais malheureusement assez onéreux, compter 25 €) et une thermistance 10kΩ pour relever la température (je n’ai pas besoin d’une grande précision), le tout fonctionne désormais sur 2 piles AAA 1.5V depuis plusieurs années, en transmettant 1 fois par minute la température et tension de la batterie.

Vue du module fermé

Quelques infos techniques :

  • Le MSP430 a été programmé en C grâce à la carte TI MSP430 Launchpad et l’IDE Code Composer Studio de TI
  • Les interruptions des timers ont été utilisées afin réveiller le MSP430 à intervalles réguliers
  • Le module XBee est maintenu en veille (Sleep Mode 1) grâce à un signal sur son pin 9 (cf. datasheet), et consomme ainsi moins de 10 μA, pour un temps de réveil inférieur à 15 ms
  • Le protocole utilisé pour la transmission est « maison », la valeur analogique brute est envoyée avec l’identifiant du module
  • Les données transmises par les différents modules sont reçues par un module « maître » puis stockées dans une base Elasticsearch, avec visualisation dans Kibana

About 

Développeur PHP freelance Symfony2 & Magento, passioné de programmation et d'électronique.

  • googleplus
  • twitter