Script MCZ Maestro HA

Je ne suis pas sur jeedom mais sur home assistant mais j’utilise cette addon :ha-addons/maestro_gateway at main · SebLz/ha-addons · GitHub
qui est basé sur le travail de @pipolas

Désolé mais je ne sais pas t’aider sur cette version de script et de solution.

Salut,

Cette demande aurait très vraisemblablement plus sa place sur un forum Home Assistant que sur un forum Jeedom non ?

1 « J'aime »

Vu que l’addon en question est valable sur les deux plateformes je me suis permis de poser ma question ici aussi.
Mais bon à ce que je vois ça dérange …c’est un peut triste

Wouah pourtant j’y avais mis les formes !

Excuses moi de te décevoir mais tu poses une question sur un add-on Home Assistant en expliquant que tu n’utilises pas Jeedom mais Home Assistant il me semble qu’il y a de quoi se poser la question ?

Bonjour,

Bah non en fait, c’est un add-on pour ha, pas utilisable tel quel sur jeedom.

Alors évidement vu qu’avec jeedom on peut tout faire (comme sur ha sûrement, en tout cas en tant que dev), on pourrait s’inspirer de ce travail pour le porter sur jeedom… Mais c’est pas la question du sujet.

Bonjour à tous,
je cherche comme vous a pouvoir contrôler mon poêle MCZ Maestro mais j’ai un souci dans l’installation :scream:
Dans le Tuto d’origine de @Anthony dispo ici

Je suis la procédure mais je ne parviens pas à lancer le Daemon!!!
Le répertoire /etc/init.d ne contient pas « maestro » :sob:

Quelqu’un pourrait me dire ce qui ne va pas?

voici mon ssh d’install:

user@JeedomAtlas:~$ git clone https://github.com/Anthony-55/maestro.git
Clonage dans 'maestro'...
remote: Enumerating objects: 177, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 177 (delta 0), reused 0 (delta 0), pack-reused 173
Réception d'objets: 100% (177/177), 43.48 KiB | 1.89 MiB/s, fait.
Résolution des deltas: 100% (106/106), fait.
user@JeedomAtlas:~$ cd maestro
user@JeedomAtlas:~/maestro$ sudo bash install
[sudo] Mot de passe de jeedom : 
Installation des dépendances
Requirement already satisfied: paho-mqtt in /usr/local/lib/python3.7/dist-packages (1.6.1)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Requirement already satisfied: websocket-client in /usr/local/lib/python3.7/dist-packages (1.2.3)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
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:****)
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.***.* PORT:81)

et le contenu du répertoire /etc/init.d

user@JeedomAtlas:/etc/init.d$ dir
alsa-utils	     hostapd		rsync
apache2		     hwclock.sh		rsyslog
apache-htcacheclean  keyboard-setup.sh	screen-cleanup
atd		     kmod		selinux-autorelabel
avahi-daemon	     loadcpufreq	smartmontools
bluetooth	     mosquitto		ssh
chrony		     mysql		sudo
console-setup.sh     networking		sysfsutils
cpufrequtils	     network-manager	sysstat
cron		     ntp		udev
dbus		     openvpn		unattended-upgrades
fail2ban	     procps		vnstat
fake-hwclock	     resolvconf		x11-common
haveged		     rng-tools

Bonsoir,

Je suppose à la lecture de ton post que tu essaies de te connecter en local vers ton poêle via le wifi local du poêle via un pi dédicacé à cette tâche.
La commande sudo bash install n’installe pas un démon mais permet le fonctionnement en interactif.
Tu dois lire correctement le post.

Je n’ai pas suivi cette solution et ai écrit un plugin MCZ Remote pour une gestion du poêle en remote via les serveurs de MCZ.
Le plugin est actuellement en beta. Il est disponible sur le market mais tu dois activer beta.

1 « J'aime »

Un retour avec le résultat serait intéressant…

Dsl, j’ai pas mal de soucis généraux avec mon ATLAS, des erreurs, des PROBLÈMES de NOK sur le réseau interne, les Démon de Zigbee qui ne se lance pas, etc…
je reviens vers toi rapidement dès que j’aurais fait le menage dans les PROBLÈMES :wink: !

Bonnes recherches mais attention: Le script d’Anthony est pour fonctionner sur un pi dédié avec une carte LAN pour accéder au LAN avec Jeedom. Ce même pi a aussi une interface wifi pour dialoguer avec le poêle sur le wifi local du poêle.

1 « J'aime »

Hello, de retour après avoir réglé mes autres soucis :crazy_face:
Je suis sous Jeedom ATLAS Zigbee et la box ATLAS est « branché » au Wifi de mon Poêle MCZ Maestro.

Voici mes derniers Log, après avoir fait une Clean Install du Plugin d’ @Anthony

user@JeedomAtlas:~$ sudo rm -Rf /opt/maestro
user@JeedomAtlas:~$ cd /opt
user@JeedomAtlas:/opt$ dir
user@JeedomAtlas:~$ rm -r maestro
user@JeedomAtlas:~$ dir
user@JeedomAtlas:~$ git clone https://github.com/Anthony-55/maestro.git
Cloning into 'maestro'...
remote: Enumerating objects: 177, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 177 (delta 0), reused 0 (delta 0), pack-reused 173
Receiving objects: 100% (177/177), 43.48 KiB | 674.00 KiB/s, done.
Resolving deltas: 100% (106/106), done.
user@JeedomAtlas:~$ cd maestro
user@JeedomAtlas:~/maestro$ sudo bash install_daemon
Installation des dépendances
Requirement already satisfied: paho-mqtt in /usr/local/lib/python3.7/dist-packages (1.6.1)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Requirement already satisfied: websocket-client in /usr/local/lib/python3.7/dist-packages (1.2.3)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Requirement already satisfied: paho-mqtt in /usr/local/lib/python3.7/dist-packages (1.6.1)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Requirement already satisfied: websocket-client in /usr/local/lib/python3.7/dist-packages (1.2.3)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Copie des fichiers necessaires
Fin de l'installation, tapez sudo systemctl start maestro.service pour lancer le daemon
user@JeedomAtlas:~/maestro$ sudo systemctl start maestro.service
Job for maestro.service failed because the control process exited with error code.
See "systemctl status maestro.service" and "journalctl -xe" for details.
user@JeedomAtlas:~/maestro$ sudo systemctl enable maestro.service
user@JeedomAtlas:~/maestro$ sudo systemctl start maestro.service
Job for maestro.service failed because the control process exited with error code.
See "systemctl status maestro.service" and "journalctl -xe" for details.
user@JeedomAtlas:~/maestro$ journalctl -xe
-- Support: https://www.debian.org/support
-- 
-- A stop job for unit maestro.service has finished.
-- 
-- The job identifier is 5413 and the job result is done.
Jan 31 18:42:36 JeedomAtlas systemd[1]: maestro.service: Start request repeated 
Jan 31 18:42:36 JeedomAtlas systemd[1]: maestro.service: Failed with result 'exi
-- Subject: Unit failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- The unit maestro.service has entered the 'failed' state with result 'exit-cod
Jan 31 18:42:36 JeedomAtlas systemd[1]: Failed to start Passerelle Equipements M
-- Subject: A start job for unit maestro.service has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
-- 
-- A start job for unit maestro.service has finished with a failure.
-- 
-- The job identifier is 5413 and the job result is failed.
Jan 31 18:43:01 JeedomAtlas CRON[12783]: pam_unix(cron:session): session opened 
Jan 31 18:43:01 JeedomAtlas CRON[12784]: (www-data) CMD (/usr/bin/php /var/www/h
Jan 31 18:43:01 JeedomAtlas CRON[12783]: pam_unix(cron:session): session closed 
lines 1633-1655/1655 (END)

Tes messages d’erreurs ne disent pas grand chose. « Exi » ou « Exit-cod » mais rien après.
As tu un log de l’exécution du script ? Sur cette version du script, je crois qu’il devrait se trouver dans le directory /opt/maestro/
As tu essayer de lancer le script en interactif (foreground) avec « python3 /opt/maestro/maestro.py »
L’avantage, les messages sont visibles sur la console.

Je n’ai pas de fichier Log dans ce répertoire :sob:

JeedomAtlas:/opt/maestro$ dir
config.py data.py maestro.py pycache

sinon en interactif, ca marche, parfois (faible connexion wifi) … mais pas d’erreur d’execution ni d’install

Si cela fonctionne en interactif, cela doit fonctionner en tant que service.
En interactif, il n’y a pas de log.
Le nom du fichier de log est d’après le code activity.log. Par contre, je ne sais pas où il est placé.
Tu peux essayer de le trouver avec la commande find / -name activity.log

Bonsoir @henribi, après 36000 tentatives avec la version SSH d’ @Anthony , sans succès et après 3000 relectures des différents Post sur la communauté concernant MCZ, j’ai voulu tester ta solution de Plugin en version Beta!

Tout d’abord, Merci pour ton travail!!!

Je bloque actuellement sur le Démon qui refuse de se lancer;
je n’ai jusque là pas utilisé le MQTT, il n’est donc pas impossible que j’ai raté qq chose :scream:

  • JMQTT est installé:
  • Broker « Local » activé / Statut OK / Config OK
  • Identifiant/ClientId: MCZMaestro
  • IP: vide comme par défaut (Info localhost en gris)
  • Port: vide comme par défaut (Info 1883 en gris)
  • User et Pass: Vide
  • Equipement créer:
  • Nom: Poele MCZ
  • Broker associé: Local
  • Template appliqué: (Perso)MCZRemote

LOG Mczremote: Il me sort une erreur « mczremoted.py: error: argument --mqttpwd: expected one argument »

[2022-02-09 22:57:11]ERROR : Impossible de lancer le démon MCZ, vérifiez le log
[2022-02-09 23:00:06]ERROR : Attention je pense qu'il y a un soucis avec le démon que j'ai relancé plus de 3 fois consécutivement
usage: mczremoted.py [-h] [--mqttip MQTTIP] [--mqttport MQTTPORT]
[--mqttauth MQTTAUTH] [--mqttuser MQTTUSER]
[--mqttpwd MQTTPWD] [--topicpub TOPICPUB]
[--topicsub TOPICSUB] [--devserial DEVSERIAL]
[--devmac DEVMAC] [--urlmcz URLMCZ] [--loglevel LOGLEVEL]
[--pidfile PIDFILE] [--callback CALLBACK]
[--apikey APIKEY] [--socketport SOCKETPORT]
[--sockethost SOCKETHOST]
mczremoted.py: error: argument --mqttpwd: expected one argument

Bonsoir,

Désolé, j’ai été peu présent ce jour.
A la lecture de ton post, je dirais ceci.
Je n’ai jamais testé sans mqttuser et mqttpwd. Je dois vérifier l’appel du script.
Je suppose que les paramètres que tu mentionnes sont pour jMQTT.
Voila ma configuration de jMQTT

Pour le message d’erreur, c’est clairement l’appel du script python. Il ne traite pas le cas ou il n’y a pas de user/password. Je dois regarder.

Edit:
Je suis curieux de voir quels paramètres tu indiques au script python.
Si tu es en 4.1x, faire ceci avec Jeexplorer. Si tu es en 4.2.x le faire avec « Editeur de fichiers ».
Aller dans plugins/mczremote/core/class et éditer le fichier mczremote.class.php.
Aux environs de la ligne 162 ou 124 (Dépendant de la version), tu a la ligne
//log::add(‹ mczremote ›, ‹ debug ›, 'Lancement démon MCZremote : ’ . $cmd);
Tu enlèves le double // en début de ligne et tu sauves.
Ensuite, tu relances le démon. Tu auras maintenant la ligne d’appel du script python.
Tu masque DevSerial, DevMac et APIKey
Tu me la communiques.

Edit_2:
Je viens de pousser une adaptation sur le market pour éviter l’envoi des paramètres d’authentification s’il n’y en a pas.

1 « J'aime »

Bonsoir Henri,
ne t’excuse pas pour ton très court délai de réponse (-24h) !
Franchement, je n’en demandais pas tant :wink:

Alors j’ai re-testé avec un Nom d’utilisateur et un Mot de passe et, en effet, le Démon passe en « OK ».
J’avais scrupuleusement suivi la phrase de ton Doc « Utilisateur et Mot de passe: Ces informations sont optionnelles. Il faut les indiquer si votre serveur MQTT nécessite un utilisateur et mot de passe pour se connecter. »

J’ai également testé ton Update, qui règle le PB d’absence d’Identifiants.
Pareil, t’étais pas obligé d’être aussi efficace, alors MERCI, MERCI & MERCI!!!

Pas le temps d’aller plus loin ce soir, mais je te fais un retour.
MERCI!

Au 'Pi Zut… On s’en fout de l’heure :crazy_face:

SA MARCHEEEEE !!!
MeRcIIIII INFINIMENT !!!

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.