Piloter son poêle à pellets avec une carte Arduino et Jeedom

II. Prototypage pour contrôler le câble RS232

Une fois le test effectué, je me suis attaqué au contrôle du câble pour effectuer le contact sec. Pour réaliser cette opération, je me suis construit un système DIY qui communique avec Jeedom. Pour cela, j’ai eu besoin de 3 choses essentielles :

  • une carte Arduino Uno
  • un relais
  • un émetteur/récepteur RF 433mhz
  • des câbles

Les liens pour acquérir ce matériel se trouvent un peu plus bas dans cet article.
L’émetteur/récepteur RF 433mhz sera mon moyen de communication avec mon Jeedom, car celui-ci sait déjà utiliser ce protocole . Si vous avez déjà lu mon article « domotiser sa boîte aux lettres », vous avez certainement vu que j’avais créé un système pour recevoir en RF 433mhz les informations de ma boîte aux lettres, mais que j’avais aussi prévu que le dispositif puisse émettre dans ce même protocole. Il est donc temps de l’utiliser. Le récepteur sur cette carte Arduino va me permettre de recevoir les informations de Jeedom pour allumer/éteindre le poêle à pellets tandis que l’émetteur renverra le statut du relais (ouvert/fermé).
Le relais sera piloté par la carte Arduino et il sera capable de lui donner une source courant pour activer le relais (fermer le circuit) ou pour retirer cette source de courant (ouvrir le circuit). L’extrémité du câble RS232 sera connectée directement au relais.
Le montage est relativement simple :

poele pellet arduino 2

Mais pour faire fonctionner ce montage, il manque une partie très importante : le code. Arduino ce n’est pas que de l’électronique c’est également de la programmation. Vous pouvez retrouver le code pour faire fonctionner le montage en cliquant ici.

Le but n’est pas de vous expliquer comment apprendre à programmer avec Arduino. Vous aurez tout le loisir d’apprendre si vous le souhaitez. Néanmoins, voici l’explication du code dans les grandes lignes :

  • on inclut une librairie nommée « RCSwitch.h » qui va nous servir pour interagir avec les composants RF 433mhz (émetteur/récepteur)
  • on définit les pins de la carte que l’on va utiliser:
    • pin 8 pour le relais
    • pin 10 pour l’émetteur
    • pin 2 pour le récepteur
  • On définit des constantes pour définir les codes que ce montage doit connaître. J’ai pour cela inventé 3 codes :
    • code 117 pour ouvrir le relais (éteindre le poêle à pellets)
    • code 476 pour fermer le relais (allumer le poêle à pellets)
    • code 29 pour que ce montage émette le code d’état du relais (117 ou 476)

Vous pouvez bien entendu changer les codes par ceux que vous voulez. Le but est d’avoir des codes qui ne sont pas utilisés par chez vous.

Pour le reste du code, c’est la logique du programme qui va tourner en permanence et attendre les instructions qu’il doit recevoir. En clair, lorsque l’émetteur va capter un code RF 433 MHz il va vérifier s’il le connaît (117, 476, 29).

Si c’est le cas, le code fera :

  • 117 : on désactive le relais, le circuit est ouvert et donc le poêle à pellets s’éteint
  • 476 : on active le relais, le circuit est fermé et donc le poêle à pellets s’ouvre
  • 29 : on récupère l’état du relais et on le transmet à l’émetteur 433mhz

Il n’est pas nécessaire de comprendre le reste du code, le plus important est de comprendre le code de la fonction loop()

Bon maintenant on va tester notre prototype en envoyant les bons codes. Et pour cela on va utiliser Jeedom et le plug-in Arduidom (plus d’explications sur Arduidom dans cet article). J’ai créé un nouvel équipement Arduidom que j’ai nommé « Commande du poêle » avec les commandes suivantes :

poele pellet arduino 3

Remarquez que la partie données ne contient pas les chiffres que j’ai renseignés dans la programmation Arduino. C’est ce genre de code qu’Arduidom utilise pour émettre en 433. Pour connaître les codes, j’ai tout simplement utilisé la fonction SendRF433Mhz() dans mon code Arduino et renseigné chacun des codes (que j’ai récupéré dans la console série de l’IDE d’Arduino).

poele pellet arduino 4

Et voici les commandes pour savoir depuis Jeedom si le poêle est allumé ou éteint. En effet quand Arduidom demandera le statut du poêle, l’Arduino avec le relais va répondre son statut et bien entendu Arduidom doit interpréter ce code pour savoir si le poêle est allumé (476) ou éteint (117).
Il suffit ensuite d’utiliser la fonction « tester » de chaque commande et voir ce qu’il se passe sur l’Arduino avec le relais.

Pour information, cet article peut contenir des liens affiliés, sans aucun impact sur ce que vous gagnez vous même ou le prix que vous pouvez payer pour le produit. Passer par ce lien vous permet de me remercier pour le travail effectué sur le blog chaque jour, et d'aider à couvrir les dépenses du site (hébergement, frais de port pour les concours, etc.). Ca ne vous coute rien, mais ca m'aide beaucoup ! Merci donc à ceux qui joueront le jeu !

Inscrivez vous à notre newsletter !

Ne ratez plus aucun article, test de produit ou guide, grâce à un mail dans votre boite chaque vendredi !

24 Commentaires
  1. Bravo et bon boulot.
    J’ai réalisé il y à quelques temps un système équivalent pour la gestion de ma chaudière fioul et mon poële à pelets. Je l’avais fait à base d’arduino uno et de domoticz. Le système marchais à peu près bien mais j’ai eu parfois quelques surprises en me levant le matin de découvrir qu’un escabeau mal placé ou autres objets déplacés avaient parasité mon signal et empêcher la mise en route du chauffage.
    J’ai donc abandonné les éméteurs/récepteur chinois en 433 et je suis passé par le wifi. J’utilise désormais des Wemos D1 (esp12) équipé de shield relais avec le nouveau firmware esp easy qui est d’une facilité déconcertante à utiliser et à mettre à jour. Et je ne parle pas du gain financier. Je remplace actuellement tout mes capteurs diy par des wemos et j’en suis très content. avec les micro alim 220/5v on peu même les integrer dans des boitiers d’encastrement standard.

  2. Bonjour,
    Le tuto est très bien détaillé, j’ai pour ma part un poêle de la marque Brisach Lena que je souhaiterai domotiser. L’arrière du poêle est exactement de la même configuration (prise rs232 + sonde proche), j’ai tenté de contacter la marque mais pas de retour, et la notice n’en parle pas du tout.
    Pensez vous que votre système pourrai fonctionner sur mon poêle ? Ai je moyen de tester avant l’achat de tout matériel ?
    Merci.
    Cyril.

    • Bonjour Cyril,

      Je pense qu’il est tout à fait possible de le faire mais il faudrait identifier les pins utilisées de ta prise RS232 pour reproduire un contact sec comme sur le mien. Si tu as la documentation de ton poêle, est-ce qu’il ne parle pas de l’éventualité de mettre un thermostat ? Si c’est le cas, alors il te sera possible de reproduire ce que j’ai fait avec mon poêle à pellets.

      Ensuite le meilleur moyen de tester avant l’achat un contact sec c’est de prendre un bête câble d’alimentation et le connecter aux 2 pins de ton poêle pour simuler le contact sec.

      Tu devras peut être faire des réglages dans ton poêle pour pouvoir activer la fonctionnalité (comme j’ai dû le faire pour moi)

      Bien à toi,

  3. Bonjour, de passage sur le forum, je souhaiterai domotiser mon poêle néa avec la solution thombox déjà présente chez moi. Avec le module de radiateur électrique on/off est-ce possible? Et comment Faire les branchements. Cordialement

  4. Bonjour, à quoi sert le relais 5v? J’ai la solution domotique thombox avec un contacteur on/off pour radiateur électrique. Cela pourrais fonctionner ?

    • Bonjour KINRZDY,

      Le relais 5v permet d’ouvrir ou de fermer le circuit de la prise RS232. Mon poêle à pellet envoie une tension depuis sa prise RS232 et lorsque sa tension part d’une pin pour arrivée à une autre (position fermée du relais), il sait automatiquement qu’il doit s’allumer.

      Quand le relais est ouvert, il n’y a plus de tension dans le circuit et le poêle sait qu’il doit s’éteindre.

      Pour résumer : mon relais agit comme un interrupteur de maison. Si ton module thombox fait office d’interrupteur alors je pense que ça peut en effet fonctionner.

  5. ATTENTION !! : Il existe un troisième câble que l’on retrouve par exemple sur les poêles Edilkamin Soleil et Tania … c’est la référence 620550 et les pins à utiliser sont la 2 et la 7.

  6. Bonjour et merci pour ce tuto.
    Pour mon poêle (Edilkamin Iris plus) quelqu’un saurait-il quels pins sont à relier ? J’ai essayé de ponter les 2 et 6, mais ça semble plus correspondre à un appui sur la touche ‘menu’.
    J’ai essayé plusieurs autres combinaisons, sans succès…
    Merci !

  7. Salut Did,

    Moi si j’étais toi, je m’embêterais pas et j’achèterais directement le câble qui faut pour le poêle à pellets.

    A première vue, le tiens ça serait celui là : http://www.poeles-et-accessoires.fr/edilkamin/1027-cable-pour-thermostat-externe-edilkamin.html

    Bien à toi,

  8. Bonjour,

    Merci pour ce tutoriel. Je possède un piazzetta P158T qui à un gros probleme: Il est impossible de désactiver la sonnerie d’alerte lorsque la réserve de pelées est vide. Le poêle émet un bip strident fort et si vous oubliez de remplir la réserve avant d’aller dormir, vous risquez d’être réveillé de façon désagréable !

    Ma question est la suivante: Pensez-vous qu’il est possible d’éviter ce désagrément via un Arduino ? Comme il n’y a pas de niveau en temps réel du stock, je me disais que la seul solution serait d’anticiper la sonnerie en coupant le poêle avant elle. Je ne sais pas si le poêle peut émettre dans “l’autre sens” des informations sur son état.

    En gros: peut on adjoindre un “ordinateur” via la prise RS232 ?

    Bien cordialement

  9. Répondre
    apprendrelaprogrammation 6 janvier 2020 à 21 h 16 min

    Bonjour Thomas,

    Je ne connais les spécificités de ton poêle à pellets mais de ce que je comprends ton poêle à pellets n’est pas capable d’anticiper au moyen de mesure précise que la cuve de ton poêle à pellets est vide.

    Comme le mien en fait mais à la différence que moi il ne bipera pas indéfiniment ce qui je comprends peut être bien chiant.

    Si j’étais à ta place, le meilleur moyen pour anticiper et avoir le contrôle que ta cuve est bientôt vide serait de la mesurer toi même avec un Arduino couplé à un capteur ultrason qui permet de mesurer la distance.

    Il te suffira de mesurer la distance via ton capteur quand ta cuve est vide et pleine. Et tu sauras en mesure de savoir lorsqu’elle sera presque vide et de te faire parvenir l’information pour anticiper une consigne.

    Bien à toi,

  10. bonjour
    super tuto
    j ai un poele edilkamin de fin 2012
    donc d aprés ce que tu d’écrit à la première page faut que je mette en contact le pin 5 et 6 pour vérifier si le poêle s allume et se coupe.
    que ce passerait il si mon poele de fin 2012 serait en réalité plus vieux
    et par conséquent le contact devrait se faire avec les pins 2 et 6
    et que je met en contact le 5 et 6

  11. Répondre
    apprendrelaprogrammation 27 janvier 2020 à 21 h 31 min

    Bonjour José,

    Bah à ma connaissance il ne se passera rien. C’est le poêle à pellets qui envoie l’impulsion électrique donc il ne risquera rien.

    De toute façon vu l’année c’est soit l’un soit l’autre.

    Si tu veux vraiment être sûr, je te conseille de commander le câble RS232 en fonction de ton poêle. Un revendeur Edilkamin pourra te le confirmer.

    Bien à toi,

  12. Bonjour
    Merci pour ta réponse
    J ai pris les devant et avec le numéro de série de mon poêle j ai réussi à avoir la confirmation
    Par contre j ai acheté ça sur Amazon
    https://www.amazon.fr/dp/B01M8JRDN0/ref=cm_sw_r_other_apa_i_UP0lEbDP919NE
    Et J ai branché les fils sur le pins 5 & 6
    Et tout fonctionne

  13. Bonjour, je possède un poêle palazzetti letizia installé en septembre 2010.
    J’ai branché un thermostat Netatmo sur la carte électronique comme prévu pour un contact sec (thermostat ambiant).
    Il ne se passe strictement rien, le poêle ne fonction que sur les plages horaires (comme avant) et le Netatmo ne déclenche pas les marches / arrêts du poêle.
    Pourtant je suis sûr de mes connections et j’entends même l’ouverture / fermeture du relais commandé par le thermostat…
    Avez-vous une solution …?
    Merci d’avance.

  14. Bonjour,

    Je dispose d’une installation Jeedom qui pilote bon nombre d’équipements dans la maison. (Wifi, Zwave, RF 433 MHz, BLEA, …)

    Je souhaite pouvoir commander un pellet De Dietrich modèle EUCALIA. Il existe 2 points d’accès sur ce poêle (contact sec apparemment) appelés Therm et Remote. J’ai tenté de le commander par Wemos + relai mais sans succès.

    Il y a peu de doc sur les produits De Dietrich et l’accès au menu de contrôle est protégé mais j’ai réussi à y accéder.

    Quelqu’un aurait-il des pistes à me suggérer ?

    merci d’avance

  15. Bonjour
    J’ai un poêle edilkamin de 2016
    Branché sur 5 et 6
    J’ai bien mis le confort climat sur off
    Plus de programmation horaire soit no program
    Et tout le monde par le timer a mettre en Off… Par contre je ne trouve pas cette option
    Je suis sur une télécommande galet grise en forme de 8
    Merci pour votre aide

  16. Bonjour,
    sur ton schéma les fiches 5 et 6 son inversées par rapport au schéma de droite peu tu me confirmer les emplacement?

    Merci
    José

  17. J’ai un edilkamin lilia plus, j’ai essayé il y a quelques temps de brancher un netatmo, ayant acheté le cable qu’il faut bien pour le poele (ref de la notice), rien ne se passe, le poele ne se déclenche pas même en ayant mis sur off les programmations, cconfort… Quelqu’un aurait-il une idée ? Merci !!

Laisser un commentaire

Maison et Domotique
Logo
Register New Account
Enregistrez vous, et stockez vos articles préférés sur votre compte pour les retrouver n'importe où, n'importe quand !
Compare items
  • Casques Audio (0)
  • Sondes de Piscine Connectées (0)
  • Smartphones (0)
Compare