Aujourd’hui nous allons parler du nodeMCU. Un quoi ? Ok, dans ce premier article on va faire un peu de théorie (avec quand même des petits cas pratiques). On verra aussi deux intégrations possibles dans Jeedom, afin de vous laisser le choix de cette petite carte que l’on trouve pour moins de dix euros.

Alors, faisons un peu de théorie.

Nodemcu jeedom

Il nous fait chier le prof !!! Vous inquiétez pas on passe vite dessus…

Le nodeMCU est arrivé en 2014. Pour faire très simple, c’est un arduino avec du wifi. Il nous est donc possible de communiquer avec cette petite carte en wifi et utiliser ces pins à notre guise, en lui envoyant une sorte de programme (on va le récupérer, ne vous inquiétez pas, on va pas tout coder). Sur ces pins, nous pouvons connecter des relais, des sondes, récupérer des informations diverses et variées. Voilà les présentations sont faites, le nodeMCU vous, vous le nodeMCU.

Et dans notre domotique, ça donne quoi ?

Il nous faut une interface entre le nodeMCU et jeedom. On peut utiliser plein de plugin pour ça en fonction du programme que l’on va implanter dans le nodeMCU. On va tester son intégration avec deux plugins Jeedouino, et Espeasy.

Jeedouino

Tout d’abord on télécharge le plugin, on installe les dépendances, et on ajoute un nouvel équipement.

Nodemcu jeedomDans Modèle de carte vous choisissez NodeMCU / Wemos. Vous mettez l’adresse IP que vous voulez lui attribuer, votre ssid et mot de passe Wifi. Ensuite, vous appuyer sur sauver/générer. Vous allez avoir des erreurs qui arrivent dans jeedom, c’est normal il ne peut pas communiquer avec votre objet encore. Mais maintenant on va pouvoir lui injecter quelque chose à notre nodeMCU.

Nodemcu jeedom

Alors, non, ça va être un peu plus compliqué…

Donc dans l’onglet sketchs, vous aller télécharger le sketch qui vient d’être fait, ainsi que les librairies.

On va maintenant télécharger un logiciel pour flasher notre nodeMCU. Il s’agit d’arduino IDE. On va prendre la version 1.6.5 windows (pas installer), ce qui vous permettra de pouvoir garder cet arduino IDE juste pour vos NodeMCU Jeedouino, elle est trouvable ici :

On démarre le logiciel Arduino et on ouvre Fichier -> Préférences.

Dans URL de gestionnaire de cartes supplémentaires, on ajoute :http://arduino.esp8266.com/stable/package_esp8266com_index.json

Dans Outil – type de carte, cliquez sur Board manager, et vous ajoutez notre carte tout en bas, la esp8266. Donc, on l’installe.

Enfin, pour les librairies, on dézippe le fichier .zip contenant les librairies récupérées dans le plugin jeedouino dans le dossier contenant les librairies de notre arduino ide (en général arduino-1.6.5-r5\libraries)

Vous pouvez fermer arduino ide.

Il nous faut alors double cliquer sur notre sketch pour l’ouvrir. On règle les options de la manière suivante :

Nodemcu jeedom

Enfin, on téléverse. Ça y est notre nodeMCU est prêt. On attribue une ip fixe (euh, la même que vous avez annoncé au plugin !) à notre nodeMCU dans notre routeur. Première étape terminée…

Nodemcu jeedom

 

Notre exemple avec Jeedouino : quand le nodeMCU remplace la radio-fréquence.

Vous vous rappelez mon article « domotiser des volets non domotisable » ? Et bien, nous allons changer les relais 433 Mhz par un nodeMCU et une carte relais. C’est quand même plus sécurisé !

Je créée un équipement NodeMCU Volets (vous savez faire maintenant), et je configure les pins comme je le souhaite. Pour moi, ce sera en « sortie mise à LOW avec temporisation ».

Nodemcu jeedom

Avec ce réglage le relais se ferme pendant un temps défini, et se réouvre après. On sauvegarde, on génère, et hop notre nodeMCU est prêt, il vient de remplacer mes relais radio-fréquence.

 

Deuxième possibilité : ESPEASY

Alors, pour cette deuxième possibilité, il faut télécharger le dernier firmware EspEasy ici.

Tout d’abord, on télécharge le plugin EspEasy de Jeedom, on l’installe, on installe ses dépendances. Dans « Configuration », vous noterez les informations données (Ip controleur, port controleur, et publish template).

Nodemcu jeedom

Ensuite, on connecte notre nodeMCU au PC, on trouve le port comm où il est branché, et on lance le script flash du firmware téléchargé.

Enfin, il nous faut alors renseigner le comport, la flashsize (4096), et le numéro de la build (120), et on flash notre device. On regarde bien la petite lumière…

Nodemcu jeedom

A ce moment, on déconnecte et reconnecte le nodeMCU, on se connecte à son AP (ESP_EASY_0), on entre le mot de passe : « configesp » et on va sur son adresse 192.168.4.1. On renseigne nos identifiants de connexion. Notre nodeMCU est sur notre réseau. Au passage, vous pouvez noter son IP.

On se connecte sur son IP, et on configure la bête. On renseigne dans l’onglet « Main », le protocol (Généric Http), le controller ip, et le controller port (les deux que vous avez noté dans votre configuration du plugin sur Jeedom), puis on « submit ».

Nodemcu jeedom

Ensuite, on va sur Tools – System – Advanced, puis on renseigne notre publish template.

Ça y est, vous pouvez cliquer sur « mode inclusion » du plugin EspEasy de Jeedom, votre nodeMCU apparaitra.

Vous voulez un exemple d’utilisation ?

Notre exemple avec EspEasy : quand le nodeMCU sert de multi capteurs de température.

J’ai un gros … ballon tampon de 1000 litres et j’aimerai bien savoir à quelle température il est en haut au milieu et en bas. En plus à côté j’ai le départ et le retour de l’eau qui circule dans mon poêle. Il me faut donc 5 capteurs de température. J’ai choisi des sondes dallas ds18b20. On installe la résistance qui va bien avec, à savoir 4.7kohms. On fait le branchement suivant :

Nodemcu jeedom Nodemcu jeedom

C’est top, on utilise en plus qu’une seule résistance, et qu’un seul pin… On connecte le tout sur le nodeMCU.

On branche les fils noirs des sondes sur un GND, les rouges sur un 3.3V, et les jaunes sur un GPIO (16 pour moi). Et on met la résistance entre les rouges et les jaunes.

On entre l’ip de notre carte dans notre navigateur web. Dans Device, on vient éditer nos sondes, puis on les configure :

Device : Temperature – DS18b20.

Name : ce que voulez mais différents sur toutes vos sondes

IDX / Var : on peut mettre pour toutes les sondes 1

1st GPIO : le GPIO où les sondes sont branchées (ici le 16)

Device Nr : 1 pour le 1, 2 pour le 2, etc…

Value Name 1 : C’est l’info qui va remonter dans jeedom. Ne mettez pas le même nom pour chaque sonde, sinon, vous n’aurez qu’une seule information qui remonte.

Nodemcu jeedom

Vous faites ça pour toutes vos sondes, puis on retourne dans jeedom. On clique sur mode inclusion, et normalement vos informations remontent…

Conclusion

Nous avons fini cette première présentation du nodeMCU. Vous avez désormais deux possibilités pour l’intégrer dans jeedom, et cela nous laisse entrevoir de multiples solutions. Si vous êtes d’accords et intéressés, nous continuerons à détailler quelques possibilités d’utilisation de ce nodeMCU dans d’autres articles. Si vous avez l’âme d’un maker, ce nodeMCU est fait pour vous.

Nodemcu Jeedom

Ou si vous êtes moins pressés…

NodeMCU



Partager sur :

Infos de l'auteur

Je m'appelle Mathieu, j'ai 35 ans, et je vis à Limoges. Je suis prof d'EPS, et passionné de domotique. Amateur de DIY et de bricolage, j'aime aussi la cuisine, le bon vin.

31 commentaires

  1. Merci pour cette explication..
    pareil, je commençait à regarder l’ESP8266 pour me monter un petit anémomètre autonome afin de remonter mon store en cas de grosse rafale … c’est possible avec le NodeMCU du coup ?

  2. Bonjour,
    perso je préfère les Wemos D1 mini. Ils sont plus petits pour le même usage et ils ont une sortie 5V que n’ont pas tous les nodeMCU (je crois que LoLin est la seule à avoir cette sortie 5V). De plus, le régulateur sur un vrai Wemos (pas un clone) me semble plus costaud. J’ai jamais grillé un régulateur de Wemos, alors que ceux des NodeMCU, j’en ai changé 5.
    Le prix me fait aussi pencher vers le D1 mini: moins de 2.5€ port inclu un D1 mini cloné sur aliexpress, contre 5€ le clone de nodeMCU (et respectivement 2.56€ un vrai wemos et 5.19 un nodeMCU Lolin).
    Enfin, pour les débutants, Wemos propose des “shield” qui s’emboîtent sur le D1 mini. Pas de câblage, c’est pratique (juste évitez le shield température, car faussé par sa proximité avec l’ESP)

  3. Hello,
    Pour l’alimentation de ces petites bêtes que conseillez vous ?
    J’avais le projet de quelques capteurs piles en mysensors, mais n’ayant pas reçu mes arduino nano, cela pourrait être une alternative.
    Thanks

    • Alim classique USB sans besoin d’un gros ampérage. Mais c’est aussi possible d’alimenter avec des batteries et c’est là où le deep sleap proposé par espeasy peut être intéressant. Peut être qu’il y aura un article dessus dans pas longtemps

  4. Salut Mathieu et merci pour ton article.

    Je ne comprend pas bien comment marche ton premier exemple, quel est la tension de sortie ?

    En fait je voulais savoir parce que je cherche à faire un module contact sec pour domotiser l’ouverture de la porte d’entrée de l’immeuble sur le meme principe que toi et ton module radio. Mais je ne sais pas si le module va pas griller en s’actionnant.

    Yohann

    • Bonjour Yohann,
      Il n’y a pas de tension à la sortie, en fait c’est juste un relais qui se ferme pendant 0.7s puis qui se réouvre. A la manière d’un interrupteur que tu pourrais fermer et ouvrir. Ou encore comme si tu reliais avec un fil les deux bornes souhaitées et que tu l’enlevais au bout de 0.7s.

  5. Merci pour cet article, qui m’ fait découvrir l’intérêt de Jeeduino. J’utilise toujours Espeay qui permet de récupérer facilement les données de capteurs sur Jeedom. Je suis récemment tombé sur un os avec le device pulse counter qui remonte 3 infos sur l’interface Espeasy: Count , Total, et Time. Mais seul le Count remonte sur Jeedom. J’ai été obligé de bidouiller avec un script sur Rules pour remonter la valeur Total (en utilisant la commande SendToHTTP). Y a t’il moyen de remonter directement les 3 infos ?
    J’ai bien essayé avec la version Dev2 mais c’est pareil.
    J’ai hâte de découvrir les nouveaux articles sur les applications des ESP avec Jeedom.

    • Ça fait toujours plaisir de partager…
      Je n’ai pas ce module, mais c’est bizarre que seule le count remonte puisque 3 infos sont créées dans ESPEASY (count, total et count) donc normalement doivent remonter… Je ne pourrai malheureusement t’en dire plus…
      Les autres articles vont arriver bientôt !!!

  6. Bonjour et merci pour ce tuto,

    Ayant un NodeMCU sous la main, j’ai voulu tester votre solution pour contrôler l’ouverture de mon portail électrique en y ajoutant 2 relais pour contrôler l’ouverture de une ou deux porte de mon portail.

    Je me suis dirigé vers ESPEasy car jeedouino est marqué “obsolète” (je ne pense que ce soit un problème mais bon…). Donc, j’ai suivi toutes les étapes du tuto, tout c’est très bien passé jusqu’au mode inclusion dans jeedom… Je lance le mode inclusion dans le plugin ESPEasy, mon NodeMCU est bien en marche mais rien ne se passe, il ne le détecte jamais…??? J’ai essayé déteindre et de rallumer le NodeMCU pendant l’inclusion tout revérifier mes config, tout semble correct comme dans le tuto mais rien…

    Cela vous est il déjà arrivé? Comment faire pour qu’il arrive à le voir? Quoi vérifier?

    Je ne connais pas du tout ESPEasy et son mode de fonctionnement, Auriez vous un exemple de configuration sous la main pour le contrôle de 2 relais avec jeedom?

    Merci d’avance pour votre aide.

    • Bonjour,
      Pour que l’inclusion fonctionne il faut qu’il y ait des infos qui remontent, il faut donc créer des “Device”. Le plus simple est de créer un device System Info , par exemple Uptime qui remontera le temps de fonctionnement.
      Apparamment Jeedouino n’est plus disponible car je n’arrive pas à le télécharger sur la dernière version de Jeedom

  7. Pingback: Téléinformation : la récupérer et la transmettre en Wifi avec un NodeMCU

  8. Sinon on peut aussi implémenter MQTT dans l’esp ou même envoyer des commandes a l’API jeedom. Simon il y a un clone du node mcu sur ali a mois de deux euros et livré avec un motor shield !

  9. Pingback: Bilan de la Semaine 39 - La Domotique de Sarakha63

  10. merci pour le tuto , j’ai juste une question , pourquoi la version 1.6.5 de l’ide ?
    quelles sont les différences avec la 1.8.2 ?

    bonne continuation 😉

  11. Pingback: NodeMCU, l’outil du DIY en domotique, son intégration dans Jeedom.

  12. Pingback: Capteur de particules PM2.5 à base de NodeMCU, fabrication - intégration

  13. Bonjour,
    Super tuto mais j’aurais quelques petites questions.
    Je suis super nul en électronique, résistances, ohm, et tous ce bazar.
    J’ai acheté le matériel mais j’aimerais un peu d’aide pour la valeur de/des résistance(s) et surtout pour le montage. Si en plus le programme était adapté ce serait le top.
    Voilà le matériel dont je dispose:
    – NodeMCU LUA ESP8266 (CH340G TE390) de XSource
    – Breadboard 3.3V-5V (avec alim. 5V 3000 mA)
    – Résistances 1 K Ohm (0.25W)
    – 2 sondes DS18B20 (longueur de câble 1 M)
    – 1 capteur T°/Humidité DHT22/AM2302

    J’aimerais donc pouvoir adapté ce tuto pour non pas une seule sonde mais pour les 3.
    Comme dit plus haut je suis nul en électronique donc comment assembler tous ce petit monde pour avoir dans mon Jeedom la remontée des 2 capteurs de T° plus celle d’humidité.

    Si quelqu’un avait l’amabilité (et la patience) de me faire un petit plan de montage, ainsi que l’adaptation du programme je lui serais éternellement reconnaissant 😉

    Un grand merci d’avance
    Bonne journée,
    @+ Benoît

  14. Ok merci, c’est aussi simple que ça ?
    Donc j’utilise 1 pin et 1 résistance pour mes 2 sondes de T° et 1 autre pin et une autre résistance pour le capteur d’humidité.
    Encore merci pour le lien et l’aide rapide.
    @+ Benoît

  15. Pingback: Afficheur Led : un retour pour Jeedom à base de MatrixLed

  16. Bonjour Mathieu,
    Super article ! Comment as-tu fixé tes sondes de température sur ton ballon ? Intérieur extérieur ? Si extérieur tu considères que c’est identique intérieur moins x°C…
    Merci de ton aide

Laisser un commentaire