Modifier l'affichage des informations de température et de taux d'humidité

Posez ici vos questions d'utilisation, de configuration de Domoticz, de bugs, de conseils sur le logiciel lui même dans son utilisation et son paramètrage Concernant le Raspberry ou les scripts de toute nature des forums spécifiques sont ouverts
Répondre
Kyrille
Messages : 18
Enregistré le : 23 juin 2019, 16:12

Modifier l'affichage des informations de température et de taux d'humidité

Message par Kyrille » 01 déc. 2019, 00:21

Bonjour,

J'ai une question et je ne sais pas si elle concerne Domoticz ou les contrôleurs qui permettent d'interfacer avec mes sondes RF (RFXCOM) ou Zigbee (Conbee 2).

Je vous mets une capture d'écran de la situation actuelle pour que ça soit plus clair.

Image

Dans le cas de mes sondes Otio et Oregon gérées par le RFXCOM, j'ai un regroupement élégant de la température et du taux d'humidité au niveau de l'affichage (T°C Salon : 19.4°C / 41%) mais j'ai un tas d'infos qui ne m'intéressent pas (point de rosée, le fait que l'humidité soit normale, etc...).

Dans le cas de mes sondes Aqara, la température, le taux d'humidité et la pression sont des devices différents et donc sont affichés en plusieurs capteurs indépendants (malgré le fait qu'il ne s'agisse que d'un seul objet physique), et les valeurs sont données avec deux chiffres après la virgule (T°C Bureau de 18.86°C par exemple), ce qui n'est ni utile ni joli (surtout en version mobile).

Du coup, j'ai plusieurs questions :
- existe-t-il un moyen de me limiter à un chiffre après la virgule pour les valeurs renvoyées par les sondes Aqara ?
- existe-t-il un moyen de me débarrasser des infos de rosée, ainsi que du caractère sec, normal ou autre pour les sondes RF ?
- est-ce possible de regrouper les infos de température et humidité pour mes sondes Aqara afin d'avoir le même affichage que pour mes sondes RF (afin d'avoir un joli T°C Bureau : 18.9°C / 49%) ?

Merci d'avance.

Cordialement.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


lmet
Messages : 222
Enregistré le : 30 juin 2017, 18:16
Localisation : Val d'Oise
Contact :

Re: Modifier l'affichage des informations de température et de taux d'humidité

Message par lmet » 01 déc. 2019, 16:59

Salut,
C'est faisable en utilisant un "dummy" de type "Température+Humidité" et un petit script lua.
En gros :
Création du "dummy"
img_007.jpg
img_007.jpg (34.29 Kio) Vu 213 fois
Tu peux récupérer la température et l'humidité (dans ton cas):

Code : Tout sélectionner

local temp = tostring(round (otherdevices_temperature['T°C Bureau'],1))
local hum = tostring(otherdevices_humidity['Humidité Bureau'])
Pour ne garder qu'une décimale tu as ce type de fonction :

Code : Tout sélectionner

function round(num, dec)
local mult = 10^(dec or 0)
return math.floor(num * mult + 0.5) / mult
end
Par exemple :

Code : Tout sélectionner

commandArray = {}
valeur = tostring(round (18.88,1)) – Une décimale renvoie 18.8 dans cet exemple
print ("Valeur renvoyée : " .. valeur)   
…
return commandArray
Ensuite tu envoies ce type de commande vers le "dummy" créé commande prélevée ici
/json.htm?type=command&param=udevice&idx=IDX&nvalue=0&svalue=TEMP;HUM;HUM_STAT

IDX = id of your device (This number can be found in the devices tab in the column "IDX")
TEMP = Temperature
HUM = Humidity (0-100 %)
HUM_STAT = Humidity status

HUM_STAT can be one of:
0=Normal
1=Comfortable
2=Dry
3=Wet
A ma connaissance pas moyen de s'affranchir d'informations que tu juges inutiles comme le point de rosée, normal …
Je peux développer un peu plus si tu souhaites te lancer :)
Domoticz : V4.10717
Zigate : V4.11230 plugin:4.5.4 firmware:031a
Mon petit blog domotique

Kyrille
Messages : 18
Enregistré le : 23 juin 2019, 16:12

Re: Modifier l'affichage des informations de température et de taux d'humidité

Message par Kyrille » 01 déc. 2019, 17:10

Merci beaucoup ! J'ai bien l'intention de me lancer, et ta réponse me semble un excellent point de départ !

Tant pis pour le point de rosée et la stat d'humidité, au moins tout sera homogène entre mes différents capteurs.

J'essaie ça le plus vite possible.

Merci !

Envoyé depuis mon téléphone en utilisant Tapatalk


Kyrille
Messages : 18
Enregistré le : 23 juin 2019, 16:12

Re: Modifier l'affichage des informations de température et de taux d'humidité

Message par Kyrille » 02 déc. 2019, 23:41

Mission accomplie !!! A partie des infos "T°C Bureau" et "Humidité Bureau" envoyées par mon capteur Xiaomi (et qui correspondent chacune à un idx différent dans Domoticz), j'ai recréé une sonde Aqara virtuelle qui regroupe les deux infos, comme pour mes autres capteurs RF, avec un seul chiffre après la virgule.

Image

Par contre, en creusant un peu LUA, je suis rapidement tombé sur le slogan officiel : "DzVents: next generation LUA scripting". Du coup, je suis parti là-dessus.

J'ai récupéré une fonction arrondi et une autre qui calcule le statut d'humidité selon sa valeur.

Voici le code

Code : Tout sélectionner

-- round function needs to be defined in each sript...
local round = function(x, n)
        n = math.pow(10, n or 0)
        x = x * n
        if x >= 0 then
                x = math.floor(x + 0.5)
        else
                x = math.ceil(x - 0.5)
        end
        return x / n
end

-- Humidity status is calculated locally, based on humididty value
local humidity_status = function(hum)
        if hum == nil  then hum_status = nil
        else
                if ((hum >= 46) and (hum <= 70)) then hum_status = "1" -- comfortable
                elseif (hum < 46)                then hum_status = "2" -- dry
                elseif (hum > 70)                then hum_status = "3" -- wet
                else                                  hum_status = "0" end
        end
return hum_status
end


local aqara_devices = {'T°C Bureau','Humidité Bureau'}

return {
        active = true,
        on = {
                devices = aqara_devices
        },
        execute = function(dz, device)
                local temperature = round(dz.devices('T°C Bureau').temperature,1)
                local humidity = dz.devices('Humidité Bureau').humidity
                local status = humidity_status(humidity)
                dz.devices('Aqara Bureau').updateTempHum(temperature,humidity,status)
        end
}
La dernière difficulté est maintenant de rendre ce code un peu plus générique car j'ai en tout 5 capteurs Aqara (soit 15 idx au total quand on compte les infos de T°C, d'humidité et de pression). Comment pourrais-je mettre à jour le bon capteur virtuel selon l'évènement qui a déclenché le script une fois que j'aurais mis à jour la liste de "on devices" (salon, véranda, chambre, etc...) ? Cela me permettrait de voir facilement quelle sonde virtuelle n'a plus été mise à jour depuis un certain temps (à cause d'un capteur qui n'est plus détecté par exemple).

Merci d'avance.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Kyrille
Messages : 18
Enregistré le : 23 juin 2019, 16:12

Re: Modifier l'affichage des informations de température et de taux d'humidité

Message par Kyrille » 03 déc. 2019, 11:00

Pour rendre mon script plus générique, j'ai trouvé le lien parfait dans le bus ce matin ! :-)

https://pon.fr/dzvents-gestion-des-sond ... cz-deconz/

C'est bien le plugin Domoticz-deCONZ (qui accompagne la clé Conbee II) qui fait un peu différemment de Zigate ou de RFXCOM.

Le lien direct vers le GitHub où se trouve le script mis à jour :

https://github.com/papo-o/domoticz_scri ... ensors.lua

Merci @lmet, ça parait facile après coup mais tu m'as permis de prendre la bonne direction.

lmet
Messages : 222
Enregistré le : 30 juin 2017, 18:16
Localisation : Val d'Oise
Contact :

Re: Modifier l'affichage des informations de température et de taux d'humidité

Message par lmet » 03 déc. 2019, 19:33

Salut,
Pas de quoi :)
Content pour toi. Effectivement la solution de papoo correspond pile-poil à ton cahier des charges.
Domoticz : V4.10717
Zigate : V4.11230 plugin:4.5.4 firmware:031a
Mon petit blog domotique

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Répondre