MCZ Maestro et Jeedom

Bonjour

Merci Anthony , nous sommes sur le point de faire l’acquisition d’un poêle MCZ et quand j’ai appris que les nouveaux modèles ne communiquaient plus en 433Mhz j’avais perdu l’espoir de l’intégrer à Jeedom , jusqu’au jour où je tombe sur votre tuto donc merci pour le travail effectué.

J’aurais une petite question , j’ai parcouru le fil du sujet mais il me semble pas que le sujet a été évoqué. Est il possible de commander les deux ventilos (air chaud RDC et air chaud ETAGE) indépendamment l’un de l’autre ?

Cordialement

@PeterKalel, je ne dispose pas d’un modele 2 ventilateurs mais si l’application peu le faire mais d’après les video que j’ai pu voir, je dirai que oui il sera possible de les piloter indépendamment.

@Anthony Super merci beaucoup de ta réponse
Bonne soirée

Bonjour,

Je n’arrive pas à me connecter directement au poêle, et ton code m’intéresse, mais je suis loin d’être un crack en python.

Tu pourrais expliquer, comment tu l’intègres dans le reste s’il te plait ?

Merci

Nicolas

Bonjour.
Je ne sais pas si je suis idiot mais je n’arrive même pas installer le bash.
l’erreur est la suite

Copie des fichiers necessaires
Lancement du deamon
Anthony L. 2019
Niveau de LOG : DEBUG
Connection en cours au broker MQTT (IP:127.0.0.1 PORT:1883)
Souscription au topic SUBmcz avec un Qos=1
Connecté au broker MQTT avec le code : 0
Etablissement d'une nouvelle connection au serveur websocket (IP:192.168.120.1 PORT:81)
[Errno 113] No route to host
Session websocket fermée

Au lancement de la commande bash install
J’ai pourtant l’impression d’avoir correctement fait mon broker, une aide svp ?

EDIT: comme je le soupçonnais l’ip n’étais pas la bonne et donc impossible à joindre.
Si vous êtes dans mon cas. En étant toujours connecté en direct wifi-poele aller sur la page mcz.it. De la vous arriverez sur « la page du poele » regardez dans la barre d’adresse et vous obtiendrez l’ip de votre Poele.
Apres un test tout fonctionne :wink:
merci pour le code

1 « J'aime »

bonjour,
j’arrive sur la page mcz, mais pas d’adresse?
faut aller voir ailleurs?
merci

Salut à tous, super boulot !

J’ai une question, sans doute stupide, mais est-ce qu’il est possible de faire un thermostat avec le poêle ?
J’ai le plugin installé et je gère en parallèle du poêle mes radiateurs électriques, la possibilité de mettre le poêle dans un thermostat permettrait de mieux gérer la température…

Bonjour Mika,
Je suppose que le plugin que tu utilises est le plugin thermostat? Si tu fais des recherches sur ce plugin sur ce forum, tu vas trouver des réponses.

1 « J'aime »

Bonjour, oui j’utilise le plugin mais l’utilisation d’un poêle sort un peu du cadre habituel…

@Antony

J’avais réussi, sans doute par chance, à remonter les infos du poêle dans jeedom. Par contre les commandes ne passaient pas, j’ai supprimé le poêle de jeedom puis tenter de refaire l’installation mais plus rien ne remonte…

Edit : En supprimant le dossier maestro et en refaisant l’installation 4/5 fois j’ai finis par remonter le poêle dans jeedom, la commande son fonctionne, j’essaierai les autres cet après midi.

Comme souvent malheureusement sur jeedom, la procédure s’adresse à des personnes avec déjà de solides connaissances, pas évident pour un profane. Alors après, tout est dans la doc, mais c’est chronophage et malheureusement avec le boulot, la famille, les enfants je n’ai pas beaucoup de temps à y consacrer, malgré mes envies…

En tout cas merci pour le boulot, c’est vraiment super d’avoir réussi à communiquer avec ce poêle.

Bonsoir à vous, après un redémarrage du raspberry j’ai perdu la connexion avec le poêle… J’ai tenté de refaire l’installation mais plus moyen de remonter le poêle dans jeedom…

J’aimerais « nettoyer » l’installation de ces lignes de commande pour repartir sur une base saine, si quelqu’un peut m’aiguiller sur la marche à suivre. J’ai tenté un sudo rm -r maestro, ça efface le dossier maestro mais je ne sais pas si c’est suffisant…

Je bloque toujours au même endroit de l’installation, lorsque je lance sudo bash install, j’ai :

pi@raspberrypi:~/maestro $ sudo bash install
Installation des dépendances
Requirement already satisfied: paho-mqtt in /usr/local/lib/python3.7/dist-packag                               es (1.5.0)
Requirement already satisfied: websocket-client in /usr/local/lib/python3.7/dist                               -packages (0.57.0)
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from webso                               cket-client) (1.12.0)
Copie des fichiers necessaires
Lancement du deamon
Anthony L. 2019
Niveau de LOG : DEBUG
Connection en cours au broker MQTT (IP:127.0.0.1 PORT:1883)
Souscription au topic SUBmcz avec un Qos=1
Connecté au broker MQTT avec le code : 0
Etablissement d'une nouvelle connection au serveur websocket (IP:192.168.0.34 PO                               RT:81)
[Errno 111] Connection refused
Session websocket fermée

et rien ne remonte dans jeedom. Mon broker fonctionne avec des shelly, et le poêle est déjà remonté une fois pourtant…
Je m’interroge sur le port 81 se trouvant dans le fichier de configuration config.py, faut il le modifier ?

Merci à celui qui pourra m’orienter…

Bonjour,

Tout D’abord merci pour l’excellent travail que tu as fait @Anthony.

Je réussi a récupérer les infos du poêle interagir avec sauf que j’ai une erreur qui apparait à chaque fois que je modifie une valeur du poêle.
La commande marche bien mais c’est embêtant d’avoir une message erreur a chaque fois.

SI quelqu’un en sait un peu plus sur ce message je suis preneur.
Merci beaucoup

Bonjour,

Je voudrais avant toute chose vous remercier tous et surtout @Anthony pour ce formidable travail qui m’a permis de connecter mon poêle à Jeedom.

J’ai effectué quelques modifications que je vous partage.
Pour le fichier data.py

RecuperoInfo=[
[1,« Etat du poêle »,[
[0, « Eteint »],
[1, « Controle du poele froid / chaud »],
[2, « Clean Froid »],
[3, « Load Froid »],
[4, « Start 1 Froid »],
[5, « Start 2 Froid »],
[6, « Clean Chaud »],
[7, « Load Chaud »],
[8, « Start 1 chaud »],
[9, « Start 2 chaud »],
[10, « Stabilisation »],
[11, « Puissance 1 »],
[12, « Puissance 2 »],
[13, « Puissance 3 »],
[14, « Puissance 4 »],
[15, « Puissance 5 »],
[30, « Mode diagnostique »],
[31, « Marche »],
[40, « Extinction »],
[41, « Refroidissement en cours »],
[42, « Nettoyage basse p. »],
[43, « Nettoyage haute p. »],
[44, « Debloquage vis sans fin »],
[45, « AUTO ECO »],
[46, « Standby »],
[48, « Diagnostique »],
[49, « CHARG. VIS SANS FIN »],
[50, « Erreur A01 - Allumage rate »],
[51, « Erreur A02 - Pas de flamme »],
[52, « Erreur A03 - Surchauffe du reservoir »],
[53, « Erreur A04 - Temperature des fumees trop haute »],
[54, « Erreur A05 - Obstruction conduit - Vent »],
[55, « Erreur A06 - Mauvais tirage »],
[56, « Erreur A09 - Defaillance sonde de fumees »],
[57, « Erreur A11 - Defaillance motoreducteur »],
[58, « Erreur A13 - Temperature carte mere trop haute »],
[59, « Erreur A14 - Defaut Active »],
[60, « Erreur A18 - Temperature d’eau trop haute »],
[61, « Erreur A19 - Defaut sonde température eau »],
[62, « Erreur A20 - Defaut sonde auxiliaire »],
[63, « Erreur A21 - Alarme pressostat »],
[64, « Erreur A22 - Defaut sonde ambiante »],
[65, « Erreur A23 - Defaut fermeture brasero »],
[66, « Erreur A12 - Panne controleur motoreducteur »],
[67, « Erreur A17 - Bourrage vis sans fin »],
[69, « Attente Alarmes securite »],
]],
[2,« Etat du ventilateur d’ambiance »,[
[0, « Desactive »],
[1, « Niveau 1 »],
[2, « Niveau 2 »],
[3, « Niveau 3 »],
[4, « Niveau 4 »],
[5, « Niveau 5 »],
[6, « Automatique »],
]],
[3,« Etat du ventilateur canalise 1 »,[
[0, « Desactive »],
[1, « Niveau 1 »],
[2, « Niveau 2 »],
[3, « Niveau 3 »],
[4, « Niveau 4 »],
[5, « Niveau 5 »],
[6, « Automatique »],
]],
[4,« Etat du ventilateur canalise 2 »,[
[0, « Desactive »],
[1, « Niveau 1 »],
[2, « Niveau 2 »],
[3, « Niveau 3 »],
[4, « Niveau 4 »],
[5, « Niveau 5 »],
[6, « Automatique »],
]],
[5,« Température des fumées »],
[6,« Température ambiante »],
[7,« Puffer Température »], # !=255 == Hydro
[8,« Température chaudiére »],
[9,« Température NTC3 »], # !=255 == Hydro
[10,« Etat de la bougie »],
[11,« ACTIVE - Set »],
[12,« RPM - Ventilateur fummées »],
[13,« RPM - Vis sans fin - SET »],
[14,« RPM - Vis sans fin - LIVE »],
[15,« Valve 3 voies »], # 1= Sani !1= Risc ==Hydro
[16,« Alimentation pompe »],
[17,« Brazero »,[
[0, « OK »],
[101, « Ouverture brazero »],
[100, « Fermeture brazero »],
]], # !==Matic
[18,« Profile »,[
[0, « Manuel »],
[1, « Dynamic »],
[2, « Overnight »],
[3, « Comfort »],
[4, « Power 110% »],
[10, « Mode Adaptatif »],
]],
[19,« Modbus address »],
[20,« Etat du mode Active »], #0: Désactivé, 1: Activé
[21,« ACTIVE - Live »],
[22,« Mode de régulation »,[
[0, « Manuelle »],
[1, « Dynamique »],
]],
[23,« Mode ECO »],
[24,« Silence »],
[25,« Mode Chronotermostato »],
[26,« TEMP - Consigne »],
[27,« TEMP - Boiler »],
[28,« TEMP - Carte mère »],
[29,« Puissance Active »,[
[11, « Puissance 1 »],
[12, « Puissance 2 »],
[13, « Puissance 3 »],
[14, « Puissance 4 »],
[15, « Puissance 5 »],
]],
[32,« Heure du poêle (0-23) »],
[33,« Minutes du poêle (0-59) »],
[34,« Jour du poêle (1-31) »],
[35,« Mois du poêle (1-12) »],
[36,« Année du poêle »],
[37,« Heures de fonctionnement total (s) »],
[38,« Heures de fonctionnement en puissance 1 (s) »],
[39,« Heures de fonctionnement en puissance 2 (s) »],
[40,« Heures de fonctionnement en puissance 3 (s) »],
[41,« Heures de fonctionnement en puissance 4 (s) »],
[42,« Heures de fonctionnement en puissance 5 (s) »],
[43,« Heures avant entretien »],
[44,« Minutes avant extinction »],
[45,« Nombre d’allumages »],
[46,« Temperature active »],
[47,« Farenheit »,[
[0, « Celcius »],
[1, « Farenheit »],
]],
[48,« Effet sonore »],
[49,« Etat effets sonores »],
[50,« Sleep »],
[51,« Mode »,[
[0, « Hiver »],
[1, « Ete »],
]],
[52,« Sonde wifi temperature 1 »],
[53,« Sonde wifi temperature 2 »],
[54,« Sonde wifi temperature 3 »],
[55,« Inconnu »], # !==Suppose que c’est le retour d info sur le niveau de pellet
[56,« Set Puffer »],
[57,« Set Boiler »],
[58,« Set Health »], # !==Hydro
[59,« Température retour »],
[60,« Antigele »],
]

Et dans le fichier maestro.py j’ai modifié les infos suivantes

if i == 5 or i == 6 or i == 7 or i == 8 or i == 9 or i == 26 or i == 27 or i == 28 or i == 46 or i == 52 or i == 53 or i == 54 or i == 59:

a la place de :
if i== 5 or i==26 or i==28:

Voilà

Hello, pensez vous que cela soit possible de fonctionner directement sur une VM installée sur la Freebox Delta ?
Je n’arrives pas à lancer l’installation du script via la commande sudo bash install ?
Si quelqu’un peut m’aider, je suis preneur. Merki d’avance.

Je publie un correctif, il s’avère que l’info en 47 n’est pas le Celcius ou le farenheit, il s’agit de la sonde à pellet, avec 3 valeurs, 1 pour sonde non activé, 10 pour niveau satisfaisant et 11 pour niveau faible.

RecuperoInfo=[
[1,« Etat du poêle »,[
[0, « Eteint »],
[1, « Controle du poele froid / chaud »],
[2, « Clean Froid »],
[3, « Load Froid »],
[4, « Start 1 Froid »],
[5, « Start 2 Froid »],
[6, « Clean Chaud »],
[7, « Load Chaud »],
[8, « Start 1 chaud »],
[9, « Start 2 chaud »],
[10, « Stabilisation »],
[11, « Puissance 1 »],
[12, « Puissance 2 »],
[13, « Puissance 3 »],
[14, « Puissance 4 »],
[15, « Puissance 5 »],
[30, « Mode diagnostique »],
[31, « Marche »],
[40, « Extinction »],
[41, « Refroidissement en cours »],
[42, « Nettoyage basse p. »],
[43, « Nettoyage haute p. »],
[44, « Debloquage vis sans fin »],
[45, « AUTO ECO »],
[46, « Standby »],
[48, « Diagnostique »],
[49, « CHARG. VIS SANS FIN »],
[50, « Erreur A01 - Allumage rate »],
[51, « Erreur A02 - Pas de flamme »],
[52, « Erreur A03 - Surchauffe du reservoir »],
[53, « Erreur A04 - Temperature des fumees trop haute »],
[54, « Erreur A05 - Obstruction conduit - Vent »],
[55, « Erreur A06 - Mauvais tirage »],
[56, « Erreur A09 - Defaillance sonde de fumees »],
[57, « Erreur A11 - Defaillance motoreducteur »],
[58, « Erreur A13 - Temperature carte mere trop haute »],
[59, « Erreur A14 - Defaut Active »],
[60, « Erreur A18 - Temperature d’eau trop haute »],
[61, « Erreur A19 - Defaut sonde température eau »],
[62, « Erreur A20 - Defaut sonde auxiliaire »],
[63, « Erreur A21 - Alarme pressostat »],
[64, « Erreur A22 - Defaut sonde ambiante »],
[65, « Erreur A23 - Defaut fermeture brasero »],
[66, « Erreur A12 - Panne controleur motoreducteur »],
[67, « Erreur A17 - Bourrage vis sans fin »],
[69, « Attente Alarmes securite »],
]],
[2,« Etat du ventilateur d’ambiance »,[
[0, « Desactive »],
[1, « Niveau 1 »],
[2, « Niveau 2 »],
[3, « Niveau 3 »],
[4, « Niveau 4 »],
[5, « Niveau 5 »],
[6, « Automatique »],
]],
[3,« Etat du ventilateur canalise 1 »,[
[0, « Desactive »],
[1, « Niveau 1 »],
[2, « Niveau 2 »],
[3, « Niveau 3 »],
[4, « Niveau 4 »],
[5, « Niveau 5 »],
[6, « Automatique »],
]],
[4,« Etat du ventilateur canalise 2 »,[
[0, « Desactive »],
[1, « Niveau 1 »],
[2, « Niveau 2 »],
[3, « Niveau 3 »],
[4, « Niveau 4 »],
[5, « Niveau 5 »],
[6, « Automatique »],
]],
[5,« Température des fumées »],
[6,« Température ambiante »],
[7,« Puffer Température »], # !=255 == Hydro
[8,« Température chaudiére »],
[9,« Température NTC3 »], # !=255 == Hydro
[10,« Etat de la bougie »],
[11,« ACTIVE - Set »],
[12,« RPM - Ventilateur fummées »],
[13,« RPM - Vis sans fin - SET »],
[14,« RPM - Vis sans fin - LIVE »],
[15,« Valve 3 voies »], # 1= Sani !1= Risc ==Hydro
[16,« Alimentation pompe »],
[17,« Brazero »,[
[0, « OK »],
[101, « Ouverture brazero »],
[100, « Fermeture brazero »],
]], # !==Matic
[18,« Profile »,[
[0, « Manuel »],
[1, « Dynamic »],
[2, « Overnight »],
[3, « Comfort »],
[4, « Power 110% »],
[10, « Mode Adaptatif »],
]],
[19,« Modbus address »],
[20,« Etat du mode Active »], #0: Désactivé, 1: Activé
[21,« ACTIVE - Live »],
[22,« Mode de régulation »,[
[0, « Manuelle »],
[1, « Dynamique »],
]],
[23,« Mode ECO »],
[24,« Silence »],
[25,« Mode Chronotermostato »],
[26,« TEMP - Consigne »],
[27,« TEMP - Boiler »],
[28,« TEMP - Carte mère »],
[29,« Puissance Active »,[
[11, « Puissance 1 »],
[12, « Puissance 2 »],
[13, « Puissance 3 »],
[14, « Puissance 4 »],
[15, « Puissance 5 »],
]],
[32,« Heure du poêle (0-23) »],
[33,« Minutes du poêle (0-59) »],
[34,« Jour du poêle (1-31) »],
[35,« Mois du poêle (1-12) »],
[36,« Année du poêle »],
[37,« Heures de fonctionnement total (s) »],
[38,« Heures de fonctionnement en puissance 1 (s) »],
[39,« Heures de fonctionnement en puissance 2 (s) »],
[40,« Heures de fonctionnement en puissance 3 (s) »],
[41,« Heures de fonctionnement en puissance 4 (s) »],
[42,« Heures de fonctionnement en puissance 5 (s) »],
[43,« Heures avant entretien »],
[44,« Minutes avant extinction »],
[45,« Nombre d’allumages »],
[46,« Temperature active »],
[47,« Sonde Pellet »,[
[0, « Sonde pas active »],
[10, « Niveau suffisant »],
[11, « Niveau presque vide »],
]],
[48,« Effet sonore »],
[49,« Etat effets sonores »],
[50,« Sleep »],
[51,« Mode »,[
[0, « Hiver »],
[1, « Ete »],
]],
[52,« Sonde wifi temperature 1 »],
[53,« Sonde wifi temperature 2 »],
[54,« Sonde wifi temperature 3 »],
[55,« Inconnu »], # !== Ne sait pas à quoi ça correspond
[56,« Set Puffer »],
[57,« Set Boiler »],
[58,« Set Health »], # !==Hydro
[59,« Température retour »],
[60,« Antigele »],
]
[/quote]

Bonjour,

Merci à @Anthony pour ce travail formidable !

De la même manière que @Mika59, je parviens à lire les informations mais la seule commande que je parviens à lancer, c’est d’activer ou couper le Son :roll_eyes:
Je ne parviens pas à changer la « température de consigne » ni même à basculer du mode Manuel à Dynamique… C’est dommage parce que ça perd de son intérêt.
Est-ce qu’il est possible que d’un poêle à l’autre les commandes ne soient pas les mêmes ? Voire que certains poêle bloque en écriture ?

À bientôt,
Patate
Ajout : Je précise que le bip de validation des commandes se fait entendre lorsque je donne un ordre via Jeedom ! Mais par contre, il n’est pas effectif.

J’ai réussi à me dépatouiller en relisant tous les messages dans ce fil de discussions qui parlent de l’interception de paquet. J’ai donc installé sur mon smartphone (celui qui exécute l’appli Maestro MCZ) l’outil tPacketCapture, puis j’ai capturé les trames en utilisant les fonctions de l’appli une par une.
Ensuite, à l’aide de WireShark, j’ai ouvert les fichiers de capture pour en décoder les contenus.
Je joins une capture d’écran pour vous indiquer la manip pour avoir les infos en claire :

  1. J’utilise le filtre « (ip.src==52.58.247.7 or ip.dst==52.58.247.7) and websocket »
  2. Je clique sur une des trames à destination du serveur MCZ (IP 52.58.247.7), pas la peine lire celles que je reçois.
  3. Je clique sur le format « Line-based texte data » pour obtenir un affichage texte… sinon, bonne chance pour décoder les trames si vous n’êtes pas l’élu :sweat_smile:
  4. Je récupère les codes des « ordres » comme l’a indiqué @EtienneME dans un de ses messages plus haut.

Et voilà :sunglasses:

Maintenant je me demande si les codes du programme de @Anthony pour la lecture des infos sont les bons ?! En tout cas, les infos semblent cohérentes…

Bonsoir
Je n’utilise pas jeedom mais je reçoit bien les données dans mqtt.
Mais comment recevoir dans le topic submcz que la température des fumées ?
Merci

Hello, @MoMoPouetFoFo @Chibald !

Avez-vous trouvé une solution pour homebridge / HomeKit ? Si ça vous dit de créer un GitHub pour partager ses projets ? Je vais déjà essayer avec le plugin « homebridge-mqttthing - npm »

Hi guys! Did you find a solution for homebridge / HomeKit? Can you create a GitHub to share your projects?