Page 1 sur 1

[Tuto] Compteur pellets pour poele Palazzetti

Publié : 20 déc. 2016, 23:28
par Viand0x
J'ai modestement écrit un bout de code pour compter les pellets consommés par mon poele. Il s'agit d'un poele de marque Palazzetti modèle Lola. Il est possible de récupérer pas mal de données de l'appareil grâce à un boitier vendu par le fabricant et qui dispose d'une API très bien renseignée, détaillée sur ce forum dédié : http://palazzetti.lola.free.fr/forum/vi ... t=25#p2364
Mon serveur Domoticz se trouve sur un Raspberry Pi 3

Pré-requis : - Connection Box installée, connectée au réseau (au moins local)

Dans Domoticz :
Créer un compteur virtuel -> Réglages/Matériel : ajouter un périphérique virtuel (Dummy)
Sur ce matériel virtuel -> créer capteurs virtuels -> compteur (donnez le nom que vous voulez)
Il apparait dans la page des dispositifs, on peut y récupérer l'IDX (premier chiffre à gauche)

Sur le Pi via la console :
Installation de jq (je ne sais pas s'il existe une version windows)
Jq est un programme qui permet de filtrer et extraire des données : https://stedolan.github.io/jq/manual/

Code : Tout sélectionner

sudo apt-get update

Code : Tout sélectionner

sudo apt-get install jq
Sur le pi via Winscp ou la console :
Le script à copier ou vous voulez. Personnellement je ne l'ai pas mis dans le répertoire /home/pi/domoticz/scripts (Peut-être ai-je tord mais je me dis que c'est pour les scripts utilisés directement par domoticz). Je l'ai installé dans /home/pi

Code : Tout sélectionner

#!/bin/bash
# On récupère la variable :
var_pellet=$(curl -s "http://IP_DU_POELE/sendmsg.php?cmd=GET%20ALLS" | jq '. | ."All Data".PELLET_QTUSED')

# La commande n'est pas très réactive, on attend 10 sec
sleep 10

# On envoi la variable vers le compteur domoticz :
curl -s "http://IP_DOMOTICZ:PORT/json.htm?type=command&param=udevice&idx=IDX&svalue=$var_pellet"
on rend le script exécutable :

Code : Tout sélectionner

chmod +x nom_du_script
on l'installe dans le crontab

Code : Tout sélectionner

crontab -e
J'ai mis une vérification toutes les 10 minutes, c'est rapide mais ça permet de voir les moments ou le poêle consomme le plus.

Code : Tout sélectionner

*/10 * * * * /home/pi/nom_du _script
Lors de la première exécution chez moi le compteur a fait un bond, il est passé de 0 à 1539 Kg, forcément ça fait plus d'un an qu'il tourne...
Pour y remédier (je n'ai pas trouvé dans domoticz l'endroit ou l'on renseigne la valeur de départ du compteur) j'ai modifié la valeur directement dans la base de données.
Pour cela j'ai installé dans firefox l'extension SQL lite Manager : https://addons.mozilla.org/fr/firefox/a ... e-manager/
Comme indiqué dans ce sujet : viewtopic.php?t=250#p1645

On arrête Domoticz :

Code : Tout sélectionner

sudo service domoticz stop
A l'aide de winscp on récupère la bdd en local sur le pc. On l'ouvre avec l'extension firefox.
Dans la liste des tables on cherche Meter_Calendar, on repère l'IDX dans la colonne DeviceRowId, puis on modifie la valeur value (soit on la mets soit à 0 soit à la même valeur que la suivante, ou autre chose à vous de voir!)
On renomme la base de donnée originale sur le Pi en .old, puis on colle la base modifiée.
On relance Domoticz :

Code : Tout sélectionner

sudo service domoticz start
Et voilà!!
Étant novice je suis sûr qu'il y a des choses à améliorer, n'hésitez pas à me faire vos remarques!!

Re: Compteur pellets pour poele Palazzetti

Publié : 30 déc. 2016, 21:51
par jeje_sat
bonjour Viand0x

Merci pour ton script, :D

je l'ai installé sur un synology sous dsm 6, fonctionne nickel pour avoir la conso de mon poêle Palazetti Andres, du coup, je pense que vais chercher à inclure des fonctions marche/arrêt, etc...

Re: Compteur pellets pour poele Palazzetti

Publié : 30 déc. 2016, 22:50
par jeje_sat
pour les commandes on/off, c'est plutôt simple, on crée un interrupteur virtuel on ajoute dans
- Action On:

Code : Tout sélectionner

http://IP DE LA CONNBOX/sendmsg.php?cmd=CMD+ON
- Action Off:

Code : Tout sélectionner

http://IP DE LA CONNBOX/sendmsg.php?cmd=CMD+OFF
sur le même principe en modifiant ton script, pour récupérer la température ambiante:

Code : Tout sélectionner

#!/bin/bash
# On récupère la variable :
var_temp=$(curl -s "http://IP DE LA CONNBOX/sendmsg.php?cmd=GET%20ALLS" | jq '. | ."All Data".TMP_ROOM_IDRO')

# La commande n'est pas très réactive, on attend 10 sec
sleep 10

# On envoi la variable vers le compteur domoticz :
curl -s "http://IP domoticz:PORT/json.htm?type=command&param=udevice&idx=CAPTEUR VIRTUEL&svalue=$var_temp"

Re: Compteur pellets pour poele Palazzetti

Publié : 30 déc. 2016, 23:20
par jeje_sat
allez un petit ajout à ton script, j'ai rajouté le coût,avec les lignes suivantes:

Code : Tout sélectionner

depense=$((($var_pellet/POIDS DU SAC DE PELLETS)*COÛT DU SAC EN EURO)

curl -s "http://IP DOMOTICS:PORT/json.htm?type=command&param=udevice&idx=CAPTEUR VIRTUEL COÛT PELLETS&svalue=$depense"

Re: Compteur pellets pour poele Palazzetti

Publié : 01 janv. 2017, 17:59
par mickaelr30
bonjour,
je possède le modèle Inès et l'avantage avec celui-ci est qu'il me comptabilise déjà la consommation des pellets donc j'ai juste eu à créer un device counter

Re: Compteur pellets pour poele Palazzetti

Publié : 13 janv. 2017, 22:48
par coolplay54
Bonsoir,

Pocesseur d'un poêle Palazzetti Inès, je souhaiterai aussi être averti du niveau de pellets et pouvoir l'allumer à distance (l'appli officielle étant très capricieuse!!)

Une idée pour communiquer avec le poêle?

Merci d'avance

Re: Compteur pellets pour poele Palazzetti

Publié : 15 janv. 2017, 11:40
par Viand0x
Oui, grace à l'API. Si tu as l'appli, tu as la connection box. Personellement je l'ai connecté en ethernet. J'ai déporté le boitier dans ma baie info. L'ensemble n'est pas moins réactif que lorsque la box est juste derrière le poêle mais ce n'est de toute façon pas super rapide!! D’où les "sleep" dans les scripts... Ensuite même si ce n'est pas rapide, c'est relativement fiable.
Pour ce que tu veux faire, le niveau de pellet ne fais pas partie des infos disponibles dans l'API. Il y a juste la quantité totale brulée. En injectant ça dans un compteur on peut savoir à peu près ce qu'il reste dans la trémie.
Pour l'allumage à distance je n'ai jamais testé n'en ayant pas l'utilité mais la commande existe :

Code : Tout sélectionner

http://xxx.xxx.xxx.xxx/sendmsg.php?cmd=CMD%20ON

Re: Compteur pellets pour poele Palazzetti

Publié : 03 mars 2017, 09:50
par coolplay54
Bonjour,
Merci pour les infos.
La commande ON/OFF depuis Domoticz fonctionne ( et c'est COOL!!!), donc maintenant j'essaye le compteur.

Re: Compteur pellets pour poele Palazzetti

Publié : 07 mars 2017, 13:53
par mickaelr30
bonjour,
comment fais-tu pour envoyer un ordre ON, chez moi le OFF fonctionne bien mais le ON ne marche jamais

Re: Compteur pellets pour poele Palazzetti

Publié : 28 nov. 2019, 00:57
par les2v
La syntaxe a change avec la derniere palazetti box.
la nouvelle URL est : http://IPConnexionBox/cgi-bin/sendmsg.lua?cmd=