Quand on parle de la domotique, notamment de DIY et d’open source, il serait aberrant de ne pas aborder et traiter MySensors sur ce blog. Comme d’habitude, dans cet article, on parlera un peu de théorie avant de passer à la pratique. On verra de quoi il s’agit et comment cela fonctionne? et comment fabriquer une passerelle ‘Gateway’ que ça soit USB ou WIFI.

 

 

Mysensors, c’est quoi ?

Mysensors est un  protocole domotique 100% DIY, il permet de faire communiquer des capteurs/actionneurs à base d’Arduino et de puce radio 2.4Ghz avec un contrôleur domotique (ex : Jeedom ou Domoticz) via une passerelle (Gateway). L’un des point fort de MySensors c’est qu’il utilise la technologie de maillage pour augmenter la portée et la fiabilité comme le cas du Zwave. Il est aussi idéal pour créer des modules fonctionnant sur batterie grâce à la faible consommation de la puce NRF24L01+ et le mode sleep d’Arduino.

 

MySensors : comment cela fonctionne ?

MySensors forme un réseau de nœuds (Nodes), liés tous à la passerelle (Gateway), comme vous allez voir sur le dessin en-dessous, ces nœuds sont soit des nœuds capteurs (S) soit des nœuds capteurs-répéteur (R) :

  • les noeuds capteurs (S):  sont généralement construits à partir d’Arduino pro mini ou nano avec des capteurs attachés en combinaison avec une puces radio 2.4Ghz. les nœuds capteurs (S) lisent en permanence l’état de tous les capteurs connectés et transmettent les données  via le réseau radio à la passerelle. il peuvent entrer en mode sommeil (sleep) au cas où on veut les faire fonctionner sur batterie.
  • les nœuds répéteurs (R) : sont des nœuds capteurs qui seront placés dans le champ de la portée de la passerelle, ils restent tout le temps éveillés, pour pouvoir capter les messages venant des nœuds capteurs (S) qui sont placés plus loin de la passerelle. Un nœud répéteur peut éventuellement inclure des capteurs directement connectés et signaler leurs données à la passerelle. vous n’aurez probablement pas besoin de nœuds répéteurs car la portée de l’émetteur  radio la plus élémentaire est d’environ 20 à 60 mètres.
  • la passerelle (GW) : transfère les données des nœuds à votre contrôleur domotique, ainsi que du contrôleur aux nœuds. On peut construire des passerelles Usb Wifi et Ethernet, qui sont supportées par plusieurs logiciels domotiques, comme on peut faire une passerelle MQTT pour d’autres.

 

noeuds-mysensors

multi-capteurs et passerelle au milieu

 

Pré-requis : Arduino IDE et librairie MySensors

Le software utilisé pour le protocole MySensors est sous forme de sketchs qu’on va injecter aux Arduinos via l’outils Arduino IDE, pour ce faire, on va aller sur le site officiel d’Arduino, télécharger et installer l’outil IDE

Une fois installé, ouvrir l’IDE et cliquer sur ‘Croquis’ (Sketch) puis ‘Inclure une bibliothèque’ et enfin ‘Gérer les bibliothèques’

Chercher ‘Mysensors’ et cliquer ‘Installer’

tout les sketchs qu’on aura besoin seront disponibles désormais sous ‘Fichier’ =› ‘Exemples’ =›  ‘Mysensors’

 

Passerelle MySensors USB :

Matériel nécessaire :

Un Arduino NANO soudé + son cable :

voir sur : Amazon   Aliexpress

-Puce radio NRF24L01+ PA+LNA

voir sur : Amazon   Aliexpress

-Câbles  dupont pour tester avant de souder

voir sur : Amazon   Aliexpress

-Un pcb + des pins 2.54mm femelles pour souder et avoir un montage plus propre :

voir sur : Amazon   Aliexpress

voir sur : Amazon   Aliexpress

-Condensateurs pour optimiser la portée :

voir sur : Amazon   Aliexpress

 

Montage de la puce radio :

 

NRF24L01 +  ==›  Arduino

GND   ==› GND (noir)

3.3V ==› 3.3V  ( rouge attention pas 5v !!)

CE ==› D9 (orange)

CS ==› D10 (jaune)

CSK ==› D13 (vert)

MOSI ==› D11 (bleu)

MISO ==› D12 (violet)

IRQ non connecté.

 

Téléversement de sketch

On ouvre l’Arduino IDE, clique ‘Fichier’ =› Exemple’ =› ‘MySensors’ =› ‘GateweySerial’

Ensuite, on choisit le type de carte et le COM port :

 

On laisse le sketch tel qu’il est, on clique ‘Vérifier’ pour s’assurer qu’il y a pas d’erreur,  puis ‘Téléverser’

On débranche notre Gateway et on la branche à Jeedom. on installe le plugin Mysensors, on active, installe les dépendances, et on passe à la configuration du port.

On sauvegarde et voila ! notre passerelle USB est prête à l’emploi .

Sur Domoticz, on clique ‘Réglages’ =› ‘Matériel’, on donne un nom quelconque, on choisit ‘MySensors Gateway USB’ et on renseigne le port où est branché notre passerelle :

 

Passerelle MySensors WIFI

La passerelle WIFI est très pratique, elle permet de libérer un port USB gagner encore de la portée.

Matériel nécessaire :

On remplace l’Arduino avec un wemos D1 ou NodeMcu. et on peut prendre une puce radio sans antenne puisqu’on peut mettre notre gateway dans un endroit ‘stratégique’ :

-NRF24L01+

voir sur : Amazon   Aliexpress

-NodeMcu Lua V3 :

nodemcu v2

voir sur : Amazon   Aliexpress

-Wemos D1 :

WEMOS D1 MINI

voir sur : Amazon   Aliexpress

 

Montage de NRF24L01 :

 

NRF24L01 +  ==›  Wemos D1 / NodeMcu

GND   ==› GND (noir)

3.3V ==› 3.3V  ( rouge attention pas 5v !!)

CE ==› D2 (orange)

CS ==› D8 (jaune)

CSK ==› D5 (vert)

MOSI ==› D7 (bleu)

MISO ==› D6 (violet)

IRQ non connecté.

 

Téléversement du sketch

Avant de téléverser le sketch, il est nécessaire d’ajouter les ESP8266 aux cartes reconnues par l’Arduino IDE, pour cela : ‘Fichier’ =› ‘Préférences’ =› ‘Url de gestionnaire des cartes supplémentaire’  mettre cette adresse et sauvegarder :

On va sur ‘Outils’ =› ‘Type de carte’ =› ‘Gestionnaire de cartes’ on tape ESP8266  et on prend la version : 2.4.1

 

On choisit le type de carte et le port :

Si votre  carte ESP8266 n’est pas reconnue par l’ordinateur, vous devez installer les drivers correspondants CH340 ou CP2102.:

ch340-cp2102

On passe à l’édition de sketch : ‘Fichier’ =› Exemple’ =› ‘MySensors’ =› ‘GateweyESP8266’ Il faut mettre les identifiant de notre WIFI sur ces lignes :

Fixer de préférence l’adresse IP de la gateway en modifiant ces lignes :

On vérifie le sketch et on clique ‘Téléverser’

On place notre passerelle dans un endroit où elle peut capter le WIFI et peut être alimentée en 5V. Et voila la config de notre passerelle sur Jeedom :

Et sur Domoticz :

Pour booster les puces et augmenter la portée NRF24L01 on peut brancher un condensateur d’une valeur entre 4.7µ – 47µF  sur les GND et VCC de la puce.

Mon tuto touche à sa fin, je vous donne rendez-vous trés prochainement pour vous montrer comment fabriquer des capteurs et des multi-capteurs comme ceux-là :

capteur d’humidité de sol et de température.

contrôleur pour bande à leds autonome, il fait allumer la lumière en fonction de mouvement et de la lumière ambiante, et en même temps remonter toutes les infos au contrôleur domotique. Pour ne rien louper, je vous invite à suivre le blog sur les réseaux sociaux. A bientôt !