L’article précédent nous à permis de voir le principe de fonctionnement du réseau MySensors.org à base d’Arduinii (un Arduino des Arduinii) avec leurs capteurs, leur passerelle.
Édition du 22/11/2015 pour ajouts paramétrages Gateway dans Domoticz.
Voyons ici la mise en place de la passerelle (GW) Arduino⇒Domoticz.
Dans ce qui suit j’utiliserai les symboles S pour les Sensors, GW pour la passerelle pour rester cohérent avec le schéma ci-dessus.
1 – Les composants nécessaires :
La passerelle Arduino.
Je vais prendre exemple de la réalisation d’une gateway USB vers Domoticz, sachez qu’un lien Ethernet est possible également avec Domoticz.
Pour la passerelle :
- un arduino
- un cable USB A/B
- un module radio NRF24L
- 6 câbles pour relier le module radio à l’Arduino
Câblage du module radio
Voici le schéma de câblage du NRF24L
Arduino | Radio |
---|---|
GND | GND |
3.3V | VCC |
Digital 9 | CE |
Digital 10 | CSN/CS |
Digital 13 | SCK |
Digital 11 | MOSI |
Digital 12 | MISO |
Digital 2 | IRQ |
Programmation Arduino
Brancher l’Arduino puis depuis cette page http://www.mysensors.org/build/serial_gateway chargez le programme Gateway après avoir sélectionné votre type d’Arduino et le port série.
Si vous préférez utiliser le logiciel Arduino sur votre PC,il faut :
- Des librairies qui sont la http://www.mysensors.org/about/arduino
Il y a un bouton Download libraries
C’est un fichier zip, envoyez le dossier librairies de ce zip dans le dossier librairies dans le dossier mentionné dans le menu « Préférences » de l’arduino : généralement c:\mes documents\arduino, soit au final c:\mes documents\arduino\librairies.
- Le code de la passerelle proprement dite
https://codebender.cc/utilities/download/47514?referrer=MySensors
il y a un bouton download qui vous permet de télécharger le sketch Arduino, puis de le dezipper dans c:\mes documents\Arduino si tel est le chemin de travail de l’IDE Arduino.
La lecture associée pour la GW ici http://www.mysensors.org/build/serial_gateway
Au final on à
Téléversez tout cela dans l’Arduino passerelle.
Coté Domoticz.
il nous faut donc :
- Un Domoticz version supérieure à 2252.
- Un port USB libre.
Connectez l’USB de l’Arduino à un port USB libre du Raspberry.
Puis dans le menu « Réglages » puis « Matériel » ajoutons un matériel « MySensor Gateway USB » et lions le au port USB du Raspberry.
Bien sur on peut utiliser la technique de nommage des ports USB, comme décrite ici https://easydomoticz.com/enocean au chapitre 2 afin de donner un nom définitif à ce tty
Rappel : les ports /dev/ttyACM0/ACM1 ne sont pas des bugs, ce sont des noms normaux sous Linux, pas d’inquiétude si il ne se nomment pas ttyUSB1/USB2…
Branchons
Quelques secondes après la connexion de l’Arduino , les logs Domoticz affichent :
2015-11-23 20:14:44.223 MySensors: Using serial port: COM5 2015-11-23 20:14:45.867 MySensors: Gateway Ready... 2015-11-23 20:14:45.943 MySensors: Gateway Version: 1.5.1
Ca marche !
Allez jeter un oeil dans le paramétrage à la rubrique « Materiel » vous y verrez le numéro de version de Mysensors affiché et quelques autres paramètres que nous détaillerons plus tard.
Ça marche pas !
Déjà vérifiez que dans le moniteur série Arduino à 115200 que des messages s’affichent, un « radio init fail » vous indique que votre câblage n’est pas bon.
Dans le fichier Myconfig.h on peut changer le mode debug
Donc dans /libraries/MySensors/MyConfig.h
- Supprimer les // avant le #define DEBUG pour activer le debug, recompilez le programme et rechargez l’Arduino avec. Faites de même sur la GW
- Consulter les Debug Logs.
- Utilisez le serial monitor de l’interface Arduino pour voir ce qu’il se passe en vous plaçant à 115200 Bds.
- Des messages sont affichés en émission/réception de signal radio.
- Repassez ensuite avec un // devant le #define DEBUG,
La suite, la suite ….
Le suspens est insoutenable, certes, mais attendons un peu pour nous attaquer à notre sensor.
Pour les impatients, la mise en place des capteurs : https://easydomoticz.com/domoticz-arduino-mysensors-org-partie-3-les-capteurs/
Autres paramétrages
Dans le menu « Matériel » on trouve la présence de notre passerelle indiquant la version de Mysensors et un bouton « Réglages »
Derrière ce bouton on peut changer le nom de chaque Arduino et voir les capteurs qui lui sont associés, car je vous rappelle que sur 1 passerelle vous pouvez avoir X Arduino (nommés Noeuds) qui contiennent Y capteurs (Enfants).
Ainsi ici sur le Noeud (l’Arduino que je suis en train de nommer Arduino Ext), j’ai 2 Enfants capteurs qui sont ceux reliés à un BMP085 (pression et température)
Pingback: Spik | Pearltrees
Pingback: MySensors et Domoticz
Bonjour,
Un Arduino Pro Mini peut-il faire office le passerelle MySensors ?
(je suis en mode radin pour pouvoir acheter un Raspberry plutôt qu’un orange Pi 😉
@+
The Datawolf