Intégration du "sensirion VOC index"

Bonjour,

Le capteur IKEA Vindstyrka permet de mesurer l’humidité, température, PM2.5 ainsi qu’un indice VOC.

Cette dernière mesure est reportée par le « Sensirion VOC index » dans zigbee2mqtt :
L’indice a une échelle de 0 à 500 avec pour valeur de référence 100 qui représente la qualité moyenne de l’air au cours des 24h dernières heures.
Une mesure inférieure à 100 indique une amélioration de la qualité de l’air, et au-dessus une dégradation.

Cette mesure n’est pas prise en charge par Gladys. Est-il possible de l’intégrer dans gladys ?

Merci

Bonjour @wtuxii,

Je pense plutôt qu’il faudrait travailler sur l’intégration de ce capteur, mais le « VOC » (ou COV en Français) est déjà supporté.
image

Je ne sais plus qui avait travaillé là dessus, @pierre-gilles ou @cicoub13 ?

Est-ce que les VOC = voc_index ?

On gère déjà les VOC dans Zigbee2mqtt, mais je trouve ça étonnant qu’IKEA ait créé une variable différente, est-ce que c’est vraiment la même unité ?

Cf :

Bonne question, je n’avais pas pensé que c’était peut être différent, my bad.

La marque explique :

The VOC Index describes the current VOC status in a room relative to the sensor’s
recent history. In this way, the VOC Index behaves like a human nose

Effectivement, ce sont bien deux types différents.

Le VOC retourne une valeur absolue alors que le voc_index est en fait plutôt une dérivée.

Pour l’intégration dans l’UI on pourrait interpréter sa valeur par des flèches comme le fait l’écran du capteur :
:arrow_upper_right: dégradation de la qualité de l’air
:arrow_right: stable
:arrow_lower_right: amélioration de la qualité de l’air

Exposer la valeur numérique est aussi utile pour les scènes, par exemple régler la puissance d’un purificateur

1 « J'aime »

On peut le faire avec les couleurs dans Gladys (rouge => pas bien, etc…)

Quelle serait la règle pour ce capteur ? Si quelqu’un fait le développement ici, il faut pré-mâcher le travail :slight_smile:

On pourrait se baser sur la doc :

0 - 150 : vert
150 - 250 : jaune
250 - 400 : orange
400 - 500 : rouge

1 « J'aime »

Ok :slight_smile: Je laisse les gens voter pour ce développement alors, n’hésite pas à voter toi même @wtuxii, on priorise les développements en fonction des votes !

@wtuxii,
Est-ce que cela te conviens?

image

image

image

image

Es tu prêt pour installer une image de test et tester en réel?

4 « J'aime »

l’image pour test
willde71/gladys-test:voc_index

@pierre-gilles, la PR

nickel :ok_hand:

Est-il possible de changer la couleur de la flèche dans le graphique ?
:arrow_upper_right: rouge :arrow_lower_right: vert

idem pour les PM2.5

1 « J'aime »

Dans les graphiques c’est un développement a part. Car il n’y a pas que ces données a inverser je crois.
Le mieux c’est de faire une demande de développement

2 « J'aime »

Il y a un paramètre dans le front Gladys dans les charts pour indiquer si une donnée est « positive » ou « négative » pour mettre la flèche en rouge ou vert :slight_smile: Tu peux regarder dans le component de Chart tu devrais le trouver facilement !

Si c’est pas le cas dis moi :slight_smile:

Ok je regarde et je te redit

Edit: J’ai trouvé!
image
Le seul hic c’est que la valeur de voc_index n’a pas d’unité! Pour les autres données pas de souci.

ah ! il va falloir modifier le code alors ^^

ou alors créer un type unit « sans unité » sans modifier le code dans les charts.
Preneur du idée sinon.

On pourrais peut-être faire un sujet spécifique (et un PR) pour la modification des données dans les graphiques?
Car pour l’instant il n’y a que DEVICE_FEATURE_UNITS.WATT_HOUR qui est inversé.

si cela peut aider

Non je pense pas que ce soit une bonne idée, il faut modifier le code !

Oui carrément

Ok dans ce cas tu pourras déjà faire une review de cette PR.

Je regarde pour faire une autre PR pour la modification dans les charts.

1 « J'aime »

Merci pour la PR @_Will_71 ! :slight_smile: Je t’ai fais un retour:

1 « J'aime »