Dans ce nouvel article, nous allons voir l’utilisation de notre box domotique Jeedom avec un Arduino UNO relié avec un câble USB.
Pour l’exemple, nous avons allons mettre en place deux sondes de température qui seront reliés à l’Arduino, lui même relié au RPI pour que les températures relevées apparaissent dans Jeedom.
Pour cela, nous avons besoin de :
- Notre installation que nous avons précédemment installée à base de RPI/Jeedom, ainsi que :
- Un Arduino UNO (une vingtaine d’euros pour un Uno officiel)
- Un câble USB type A/B (quelques euros)
- Une sonde DHT22 (plus d’une dizaine d’euros)
- Une résistance de 4.7Kohms (un euro les dix)
- Une sonde DS18B20 (plus d’une dizaine d’euros)
- Des câbles de branchement (quelques euros)
- Une breadboard (quelques euros)
Coût de l’Arduino et ses composants pour le test :
- Si vous achetez tout cela en France pour une réception rapide (2/3 jours), il y en a pour 60 euros (hors FDP).
- Mais on peut avoir tout cela pour beaucoup moins chère : 11 euros FDP inclus. Mais comptez un bon mois avant de recevoir vos chinoiseries : Uno compatible, câble micro-usb, DHT22, résistance, DS18B20, câbles Dupont, breadboard
NB : le coût ne comprend pas le RPI car je pars du principe que vous l’avez déjà !
Branchement de l’Arduino et ses sondes :
Schéma réalisé avec le logiciel open-source : Fritzing
La PIN2 pour le data du DHT22. La PIN4 pour le data du DS18B20. Le reste, c’est du traditionnel : du (+) et du (-) ainsi qu’une résistance de 4.7Kohms entre le (+) et la broche n°2 (data) du DHT22.
Branchement de l’Arduino et du Raspberry :
Rien de plus simple, vous prenez votre câble USB, vous le branchez sur l’Arduino (il n’y a qu’une seule possibilité de branchement) et sur le Raspberry (vous avez 4 ports USB, prenez n’importe lequel).
Paramétrage de l’Arduino dans le plugin Jeedouino :
Pour notre exemple, nous allons utiliser le plugin « Jeedouino » qui est disponible gratuitement dans le Jeedom Market. Installez le plugin, activez le, puis allez dans « Plugins » – « Protocole domotique » – « Jeedouino » :
Cliquez sur « Ajouter »
Mettre le nom de votre choix :
Dans la nouvelle page de configuration, choisissez le modèle de votre Arduino (dans notre exemple, c’est un Uno) :
Choisir le port de connexion, ici nous sommes reliés en USB :
Choisir le port USB « local » :
Choisir le port USB : attention ça peut être la roulette russe. Dans mon cas, ACM0 correspond à une clé Z-Wave, donc je sélectionne ACM1 :
Ce qui nous donne :
Il faut maintenant téléverser le sketch proposé par Jeedouino dans l’Arduino.
Téléversement du sketch JeedouinoUSB dans l’Arduino :
Pour cela, il faut :
- Débrancher le câble USB reliant l’Arduino au RPI, et le brancher sur son ordinateur.
- Télécharger le sketch et les librairies présent sur la page de configuration du plugin Jeedouino
- Installer les librairies téléchargées, dans l’IDE l’Arduino (si vous ne savez pas faire, cliquez ici)
- Ouvrir dans l’IDE, le sketch téléchargé.
- Le compiler et le téléverser (nécessite que vous ayez bien sélectionné la bonne carte et le bon port COM dans l’IDE)
- Puis débrancher l’Arduino de votre ordinateur pour le rebrancher sur le RPI.
Petite aparté : Attention, pour des raisons historique (conflit entre les fondateurs du projet) il existe deux IDE. Pour simplifier, je dirais qu’il ya celle d’Arduino.cc et celle d’Arduino.org
Personnellement, j’ai installé les deux, en personnalisant les raccourcis :
Pourquoi avoir les deux ? Car quand j’ouvre le sketch JeedouinoUSB.ino dans l’IDE « ORG »…
… j’obtiens un beau message d’erreur lors de la compilation :
Alors que dans l’IDE « CC », aucun problème :
Il s’agit en fait d’un problème avec la class « EEPROM » qui ne comprend pas la fonction « update » dans la version ORG (vérification faite dans eeprom.h).
Fermeture de cet aparté.
Maintenant que nous avons rebranché le Uno sur le RPI, retour dans le plugin Jeedouino, et l’équipement que nous avons crée.
Il ne nous reste plus qu’à ouvrir le paramétrage :
Et indiquer sur quel PIN nous avons brancher les deux sondes (Pin Data) :
Dans mon branchement de test, la DHT22 est sur le PIN2 et le DS18B20 est sur le PIN4 de l’Arduino.
On clique sur « Sauvegarde » puis sur « Sauver et/ou Générer les commandes », et le tour est joué, on voit apparaitre les sondes de températures dans le dashboard (à condition d’avoir activé l’équipement, et l’avoir rendu visible !).
La fréquence de rafraichissement est de 60 secondes (on peut le modifier dans le sketch « JeedouinoUSB.ino » mais il faudra recompiler + téléverser à nouveau à partir de votre ordinateur).
Dans les logs (si activé), on voit bien les mesures apparaitre :
Et sur le dashboard aussi :
NB : c’est bien le même équipement, j’ai juste rajouté « …Bureau » à la fin de celui-ci.
Cet article fait partie d’une série d’articles sur la box domotique Jeedom, les micro-contrôleurs Arduino et compatible, le tout en DIY (Do It Yourself). Consultez la liste complète des articles de cette thématique en cliquant ici.