Puissance affichée 0 si supérieure au maxi

Bonjour à tous

J’utilise le core dans sa dernière version 4.3.17 et j’ai des prises Blitzwolf BW-SHP13 sous zigbee.
Il y a déjà quelques mois, lors d’un changement de version du core, je m’étais rendu compte que les Watts consommés passaient directement avec un affichage en kW pour peu que ça dépasse les 1000W. Ça déjà c’est pas top, mais bon on fait avec.

Par contre, j’ai fait un second constat moins sympa. Sur les puissances, de sorte à calibrer l’affichage, on peut choisir un mini et un maxi pour la jauge.
Si jamais on a le malheur de mettre un maxi trop léger, qui peut être dépassé par la valeur réelle mesurée de l’équipement, et bien la valeur affichée passe à 0 !
Exemple, je mets 2000 en maxi, et si mon équipement consomme 2200w, l’affichage sur la tuile passe à 0.
C’est ballot non ?
N’y aurait-il pas moyen de corriger ça ?

Merci pour vos retours

PS: ce n’est peut-être pas propre au plugin zigbee, mais c’est le seul que j’utilise.

Il suffit d’ajouter un espace devant W pour nenplus avoir le changement en kW. Sujet abordé sur le forum.
Pour le deuxième point, je sais pas.

Antoine

Pour le second point, j’ai constaté ça aussi mais … ça m’arrange bien :grin: :grin:
Il te suffit de bien calibrer la valeur maxi que tu connais à l’avance (valeur maxi du circuit électrique utilisé)

@Tonio16 Oui je sais qu’on peut tricher, mais ça oblige à passer en revue tous les virtuels, et à les remettre en place si jamais ils corrigent.

@MaGoo Moi ça ne m’arrange pas, et bien calibrer n’est pas toujours évident de prime abord. Si on tape juste en dessous, ben raté :frowning:

Il n’y a pas mort d’homme, mais ces petits désagréments pourraient être corrigés.

Oui mais que par vous !
Modifiez le min/max de la commande…

Si, par exemple, ton équipement est sur un circuit électrique 16A, tu mets 3680W maxi (ou un tout petit peu plus), tu devrais jamais dépasser … normalement :grin:

Modifié par mes soins certes, mais il n’empêche que le min comme le max ne devraient affecter que l’affichage de la jauge et non pas la valeur relevée.
Au mieux que cette valeur reste affichée au max indiqué, mais qu’elle ne repasse pas à 0.

Bonjour,
je suis pas dans la tête des programmeurs, mais on peut raisonnablement supposé que cela à été fait à dessin !
Car… en moyen, les mecs ont l’air de réfléchir dur, dur, quand même…

Donc, par exemple, ce choix à pu être fait pour filtrer les valeurs !
Et avec ta proposition

Ça ne marche plus. Ça ne filtre plus…

Par exemple, chez moi (prises zigbee avec mesure de puissance de la marque NEO) quand le frigo se met en route (par exemple) l’appel de courant est fort, et me renvoie une valeur farfelu sur quelque seconde (5000 W par exemple). Ça fait des graphes tres bof…
Si je mets le max à 200 W. Plus de problème !

Donc, si les dev. choisissent de garder le Max que pour les jauges, il faudrait créer un nouveau paramètre « max pour les valeurs ». C’est possible, mais ça complique.


Heu… je croix que c’est exactement le cas !
Quand une nouvelle valeur est inférieur à Min, ou suppérieur à max, la valeur ne change pas / est conservé / ne repasse pas à zéro.

PS : Les prise NOUS sont très proche des NEO, mais n’ont pas ce problème… à Savoir.
PS2 : Le max à exactement le même effet dans un virtuel !

1 « J'aime »

Je peux confirmer que le concernant, la valeur ne reste pas au max, mais retourne à 0.
J’utilise le plugin Laundry Machines qui est supposé se déclencher au-delà d’une certaine consommation et j’ai cherché pendant plusieurs jours pourquoi sur une de mes prises cela ne fonctionnait pas. Les autres marchaient très bien.
J’ai fait plusieurs reset, réinclusions et toujours pareil. J’ai pensé à un moment que la prise était défectueuse puisque la puissance ne remontait pas, à contrario de la consommation globale qui croissait bien régulièrement au fil des utilisations.

Ce n’est que par hasard que j’ai constaté que j’avais mis un max de 2000W alors que mon équipement consomme 2100W.

Depuis que j’ai changé la valeur du max, mon plugin fonctionne correctement. Comme quoi cela n’affecte pas que l’affichage.

Après je ne critique pas le boulot des devs, mais ce genre de trucs peut être déconcertant si on ne saisit pas l’impact des valeurs écrites.

Il est clair que je serai plus vigilant à l’avenir.

Tu es certain ? : avec un max à 200

  • Si la puissance évolue en 0 / 100 / 1000
    Tu obtiens 0 / 100 / 0 ?

  • ou c’est plutot que la puissance évolue en 0 / 100 / 0 / 1000
    Et dans ce cas, tu vois bien 0 / 100 / 0 / 0
    et donc la dernière valeur inférieur au max…?

1 « J'aime »

Honnêtement je n’ai pas la réponse car je n’ai pas regardé en détail.
Je m’étais surtout focalisé sur un défaut matériel plutôt que logiciel.
Et malheureusement je n’avais pas historisé la valeur.

oki, merci pour le retour.
J’ai pas essayé non plus, mais disons que normalement c’est la logique Jeedom.
(j’en suis absolument certain pour les virtuels et sur une info du plugin z-wave, vous aurez bien
avec un max à 200
— si la puissance évolue en 0 / 100 / 1000 / 100 / 0 / 1000
— le virtuel sera : ------------- 0 / 100 / 100 / 100 / 0 / 0 )

Sur de toi :thinking: ?
Le min et le max sont des valeurs seuil d’une commande qui vise à exclure des résultats les valeurs anormalement hautes ou basses.
Si une valeur trop haute ou trop basse arrive, elle n’est juste pas prise en compte. Il n’y a pas de raison qu’elle réinitialise la valeur de la commande à 0

Et pour qu’il n’y ait pas d’incompréhension, c’est bien la valeur précèdent qui est conservée et pas la valeur max qui est prise en compte

Norbert

2 « J'aime »

Sûr, non. Mais il est certain que voyant mon scénario ne pas se lancer, lorsque je regardais la valeur affichée sur la tuile, elle était toujours à 0.

Après mes prises Blitzwolf n’affichent pas la puissance consommée en temps réel sous zigbee*.
Je suis contraint de forcer un refresh toutes les 5mn*.
Et quand cette valeur était à 0, j’avais beau forcer le refresh sur la tuile ou depuis les paramètres zigbee de l’équipement, et bien c’est toujours 0 qui était affiché.

C’est ce qui m’a fait faire fausse route, pensant que la prise était défectueuse.

** Il y a peut être moyen de mieux faire ?

Bonjour

Je déterre ce sujet car j’ai remarqué qu’il était toujours d’actualité, en tout cas j’ai fait le même constat.
Depuis le post d’origine je suis passé à Jeezigbee, mais cela ne change rien au constat effectué.

J’ai une pompe immergée raccordée sur une prise Blitzwolf BSHP-13 pour mesurer sa consommation et vérifier sa puissance consommée.
Cette pompe est donnée pour une consommation max de 80W, donc histoire d’avoir une jauge dans une taille proportionnée j’avais mis le max à 120W (virtuel et équipement Z2M)

Sur cette commande de puissance j’ai mis une alerte : si puissance = 0 pendant plus de 30mn → Notification.

Avec ces fortes chaleurs, ma pompe a sans doute tourné plus fort, plus longtemps, dans une eau plus chaude et j’avais fréquemment des notifications comme quoi la puissance était à 0 (suspicion de pompe HS ou coupée). Vérification faite sur place, la pompe fonctionnait très bien.

En fait c’est la limite fixée dans le MAX de la commande qui faisait passer la valeur à 0 en cas de dépassement

Sur cet historique on voit clairement que dès que les 120W étaient dépassés, la valeur tombait à 0, donc alerte.

J’ai donc remodifié le max pour le passer cette fois-ci à 150W, mais il faut reconnaitre que c’est piégeux.

Sitôt la valeur passée à 150W, j’ai pu voir que ma pompe consommait 123W, donc juste au-dessus du MAX renseigné. Alors oui on peut de suite mettre un MAX de 1500W, mais quel intérêt d’avoir des jauges qui ne collent pas avec l’équipement qu’elles surveillent.

Tout ça pour confirmer que si le max est dépassé, alors la valeur passe bien à 0 et ne reste pas à son max.

Hum en regardant le code de la classe cmd il me semble bien qu’il y a un problème

					if ($_value > $this->getConfiguration('maxValue', $_value) && $this->getConfiguration('maxValueReplace') == 1) {
						$_value = $this->getConfiguration('maxValue', $_value);
					}
					if ($_value < $this->getConfiguration('minValue', $_value) && $this->getConfiguration('minValueReplace') == 1) {
						$_value = $this->getConfiguration('minValue', $_value);
					}

Le problème c’est que minValueReplace et maxValueReplace ne me semblent définis nulle part puisque en faisant une recherche sur tout le code je ne trouve rien.
@Loic tu peux jeter un oeil à ce problème, c’est peut-être moi qui fait erreur ?

Je corrige un autre bug plus urgent et je regarde après.

Voila correction faite [BUG] If cmd value is greater than max value is 0 · Issue #2819 · jeedom/core · GitHub ca sera que en 4.4.11 ou 4.5 par contre ca a trop d’impact sur le fonctionnement actuelle pour passer en 4.4.10

1 « J'aime »

En 4.4.9 moi je ne reproduisais pas le soucis avec 2 commandes virtuelles, c’est normal ?

Valeurs sources : 0, 10, 50, 120, 130, 0, 130, 50
Valeurs maximisées à 100 : 0, 10, 50, 50, 50, 0, 0, 50

Je pense ça dépend du plugin aussi dans tous les cas il est normal que si on dépasse le max la valeur soit le max. Quoique en y réfléchissant pas toujours mais c’est la solution la plus courante.

1 « J'aime »