Aller au contenu

Messages recommandés

Posté(e) (modifié)

OK, dans ce cas on va conserver le comportement actuel qui utilise le pont Hue.

 

Pour les childs, on va ajouter des nouvelles options.

La luminosité devrait déjà pouvoir se régler de façon traditionnelle comme pour tout dimmer avec "Value" et la valeur en numérique, je pense que ça doit fonctionner :

GEA.add( {CONDITIONS}, 30, "", {"Value", 21, 50} )

 

Dans le JSON de ton child, je vois qu'il y a une méthode "setColor" avec 1 seul paramètre, mais je n'ai aucune idée de la valeur qu'il faut donner à se paramètre. Tu pourrais faire des tests directement en LUA avec fibaro.call(...) pour comprendre le fonctionnement ?

Il semble que la valeur soit stockée dans le champ properties.color.

Si ça se trouve, le paramètre à passer est littéralement la chaine "255,255,255,0" qui semble indique du blanc (les 3 composantes RGB à 255), mais que signifie le dernier paramètre à 0 ?

 

 

EDIT : laisse tomber, j'ai compris, c'est la même API que pour les modules RGBW.

Donc tu peux utiliser directement sur un child Hue :

 

GEA.add( {CONDITIONS}, 30, "", {"RGB", 21, 100, 0, 100, 100} )

 

 

Elle est géniale cette HC3, l'intégration native des modules externes, comme pour les modules Z-Wave, ça simplifie tout :D

 

Du coup je pense que je vais ajouter un alias pour "RGB" qui sera "Color", tout simplement, et ça sera plus parlant, et l'usage de l'un ou l'autre sera au choix de l'utilisateur :)

 

 

Je suis preneur d'autres suggestions bien sûr

 

Modifié par Lazer
Posté(e)

Bon,  je suis passé d'un scène bloc vers lua.

 

setColor prend bien 4 paramètres (R+G+B)+ ?, le quatrième n'a pas l'air d'influer énormément, mais je pense que c'est la saturation.

 

fibaro.call(23, 'setColor', 255,0,0,0)
fibaro.call(23, 'setValue',50)

 

le setValue correspond à la luminosité et fait l'objet d'une règle de trois, les 50 % demandés ici , deviennent 128

"brightness": 128,

L'espace colorimétrique est recalculé, le rouge demandé ci dessus devient

 "color": "1,27,255,0",

 

D'ailleurs, le child est bizarre, il est en deux parties, une première on/off avec couleur et luminosité, une seconde avec la saturation en plus, qui réagit avec retard (le polling du pont ?).

 

il y a d'autres possibilités, dont

fibaro.call(23, 'toggle')
fibaro.call(23, 'startLevelIncrease')

mais pas super utile.

 

donc si on sait positionner setColor et setValue avec 4 et 1 paramètres, on doit pouvoir s'en sortir.

 

Posté(e)
il y a 17 minutes, Dgille a dit :

fibaro.call(23, 'value',0) ne fait rien

Normal, il faut utiliser "setValue"

 

"value" n'est pas une fonction, c'est juste une propriété

Posté(e)

oui, j'avais compris, c'était pour bien préciser c'est c'était une propriété non gérée ici.

Je teste cela demain...

Posté(e)

Oui mais en fait pour une meilleure compréhension, ce qu'il faut retenir c'est que fibaro.call() est juste un passe-plat qui peut appeler n'importe quel fonction dans le module cible.

Les plugins Fibaro sont en fait des QuickApps.

 

Donc que tu développeras tes propres QuickApps, tu pourras créer tes propres fonctions et les appeler depuis n'importe où. L'intérêt est énorme, on n'a plus besoin de "cliquer" sur le boutons (avec leur fameux numéro qui change dès qu'on déplace ledit bouton), il suffit d'appeler la fonction qui est toujours accessible.

Exemple dans ton QuickApp :

function QuickApp:maSuperFonction(un, ou, plusieurs, paramètres)
	-- fait plein de choses
end
fibaro.call(ID, "maSuperFonction", "avec un paramètre", "et un autre")

 

Les propriétés (telles que value ou color), quant à elles, sont accessibles directement via le JSON du module, comme sur la HC2.

 

 

Ensuite, un module d'un certain type (par exemple les actionneurs dimmer (type com.fibaro.multilevelSwitch) ou un relai (type com.fibaro.binarySwitch) doivent toujours proposer certaines fonctions obligatoires, et notamment le fameux setValue()


Quand tu as compris tout ça, tu vois à quel point il est facile et puissance de faire interagir les QuickApps entre eux.... GEA n'était qu'un QuickApp parmi d'autres :) mais aussi via l'interface Web et l'Application, ou bien encore via l'API HTTP pour que les QuickApps soient accessible depuis l'extérieur (typiquement un IPX800 ou tout autre box domotique)

 

Posté(e) (modifié)

salut 

 

je pense avoir trouvée un bug avec CentralSceneEvent et le bouton de FIBARO

 

1 click  et 2 click   ne fonctionne pas

 

3 - 4 - 5 - maintenue fonctionne très bien 

 

-----BUTON JAUNE    
----1 click  
GEA.add({"CentralSceneEvent", id["BOUTON_JAUNE"], 1, "Pressed"},  -1, "1 click")
 ---2click
GEA.add({"CentralSceneEvent", id["BOUTON_JAUNE"], 1, "Pressed2"}, -1, "2 click")
----3 click      
GEA.add({"CentralSceneEvent", id["BOUTON_JAUNE"], 1, "Pressed3"}, -1, "3 click") 
----4 clicks
GEA.add({"CentralSceneEvent",  id["BOUTON_JAUNE"], 1, "Pressed4"},-1, "4 click") ---, {{.....
----5 clicks
GEA.add({"CentralSceneEvent",  id["BOUTON_JAUNE"], 1, "Pressed5"},-1, "5 click") ---, {{.....
 ----6  Maitenue
GEA.add({"CentralSceneEvent",  id["BOUTON_JAUNE"], 1, "HeldDown"},-1, "OFF Général", {{"Sleep", 30, {"QuickApp", 238, "p4"   }}} )

 

Modifié par 971jmd
Posté(e)
Il y a 18 heures, Lazer a dit :

Elle est étrange ton ancienne syntaxe, tu es certaine qu'elle était valide ?

Oui, cela fonctionnait très bien en V6.13 !

En fait, cela me permettait de recevoir les messages du debug GEA directement dans PUSHOVER, plutôt que de devoir passer par une option et un ordre spécifique.

 

Posté(e)

@Dragoniacs

OK en effet, j'ai compris.

Je ne connaissais tout simplement pas cette fonctionnalité. Tu m'a enduis d'erreur :P en parlant d'options, alors qu'en fait ce n'est pas une "options" au sens GEA du terme, donc je ne cherchais pas au bon endroit.

Mais c'est parfaitement décrit tout à la fin du document de @pepite

Citation

- GEA.output :
    -> A N"UTILISER" QUE LORSQUE les PUSHs de Fibaro ne fonctionnent pas
    -> Permet de recevoir les messages par SMS (dans l"exemple" ci-dessous, il est possible de faire différemment) en contournant les PUSHs

    -> Ajouter la fonction <GEA.output> dans <function config()> comme ci-dessous :

        function config()
               ...
               GEA.output = function(message) fibaro:setGlobal("FreeSMS", message) end
              ...
        end

    - > tous les messages "MESSAGE" de GEA.add({CONDITIONS}, duree, "MESSAGE", {ACTIONS}) seront redirigés vers la variable globale "FreeSMS".

 

J'ai retrouvé où ça se passe dans le code de GEA, je pense comprendre pourquoi ça plante, je vais préparer un correctif.

 

 

Il y a 9 heures, 971jmd a dit :

je pense avoir trouvée un bug avec CentralSceneEvent et le bouton de FIBARO

 

1 click  et 2 click   ne fonctionne pas 

 

3 - 4 - 5 - maintenue fonctionne très bien 

@971jmd

Je n'ai pas de bouton disponible pour reproduire le comportement chez moi.

Il faudrait que tu reproduises le bug après avoir activé le mode GEA.debug=true dans ton fichier de config :

function config(GEA)
	GEA.debug = true
	-- suite...
end

Et ensuite tu m'envoies le contenu des logs, qui devraient donner beaucoup d'informations.

Posté(e)

je pense que le bug vient de la HC3, car ce matin ça fonctionne ;) bizard

 

il arrive que je click j'ai 7 - 10 sec avant que l'action s'effectue  avec : SceneActivation  et  CentralSceneEvent

 

 

 

GEA.add({"CentralSceneEvent", id["BOUTON_JAUNE"], 1"Pressed"},  -1"1 click" , {{"OnOff", id["PLAN_TRAVAIL"] } })

 

[20.11.2020] [07:59:43] [TRACE] [QA_GEA_217]: --------------------------------------------------------------------------------
[20.11.2020] [07:59:43] [TRACE] [QA_GEA_217]: Démarrage par événement de GEA 7.02 (mode device [143])
[20.11.2020] [07:59:43] [TRACE] [QA_GEA_217]: --------------------------------------------------------------------------------
[20.11.2020] [07:59:43] [DEBUG] [QA_GEA_217]: @0s [Validation*] #18 [CentralSceneEvent, [143,1,"Pressed"]][On Off, [137]]
[20.11.2020] [07:59:43] [TRACE] [QA_GEA_217]:    [Démarrage] #18 [CentralSceneEvent, [143,1,"Pressed"]][On Off, [137]]
[20.11.2020] [07:59:43] [DEBUG] [QA_GEA_217]:         [action] [On Off, [137]]
[20.11.2020] [07:59:44] [DEBUG] [QA_GEA_217]: @0s [Validation] #19 [CentralSceneEvent, [143,1,"Pressed2"]]
[20.11.2020] [07:59:44] [DEBUG] [QA_GEA_217]: @0s [Validation] #20 [CentralSceneEvent, [143,1,"Pressed3"]]
[20.11.2020] [07:59:44] [DEBUG] [QA_GEA_217]: @0s [Validation] #21 [CentralSceneEvent, [143,1,"Pressed4"]]
[20.11.2020] [07:59:44] [DEBUG] [QA_GEA_217]: @0s [Validation] #22 [CentralSceneEvent, [143,1,"Pressed5"]]
[20.11.2020] [07:59:44] [DEBUG] [QA_GEA_217]: @0s [Validation] #23 [CentralSceneEvent, [143,1,"HeldDown"]][Sleep, [30,["QuickApp",238,"p4"]]]

 

Posté(e)

7 à 10 secondes de retard ?

Aie, ta HC3 est débordée ?

Que dit le monitoring CPU, tu n'aurais pas un module Z-Wave, un QuickApp, ou une scène, qui saturerait le système ?

Posté(e)

CPU normal quoi

(pour la RAM je suppose que tu as compté le cache, qui est de la mémoire libre...)

 

étrange cette lenteur, mais donc ce n'est pas lié à GEA, c'est le système qui met du temps à traiter l'événement ?

Posté(e)

Bonsoir,  @Lazer, effectivement, les Hue sont vues comme des RGB, cela passe avec la syntaxe GEA.add( {CONDITIONS}, 30, "", {"RGB", 21, 100, 0, 100, 100} ).    Oui, elle est géniale, et oui, on se complique la vie alors que les QA font le boulot....

  • Like 1
Posté(e)

Salut à tous!

Je suis encore dans les travaux de ma nouvelle maison et qu'est-ce-que je vois! Une version de GEA pour HC3!

J'ai vu qu'elle a débarquée fin octobre, trop cool.

Je n'ai pas encore attaqué la partie domotique mais j'ai hâte!

Merci @Lazer pour ce travail de titan.

Je suis pressé de vous retrouver plus régulièrement.

  • Like 3
Posté(e)

Hier j'ai importé mes 2 premiers modules dans la HC3 :60:

Mais paf, un bug pour les gérer dans GEA :mellow:

J'explique. J'ai détourné un capteur d'eau Everspring pour vérifier le niveau d'une cuve d'eau pour mon aquarium. S'il y a de l'eau, la petite pompe fonctionne, sinon, ca coupe ma prise connectée pour pas griller la pompe.

-- Gestion de l'osmolateur
    GEA.add({{"Value","Réserve Némo",1},{"Value","Osmolateur Némo",0}},30,"&-1&OSMOLATEUR : Mise en marche de l'osmolateur",{"turnOn","Osmolateur Némo"})
    GEA.add({{"Value","Réserve Némo",0},{"Value","Osmolateur Némo",1}},30,"&0&OSMOLATEUR : Réserve vide - Arrêt de l'osmolateur",{"turnOff","Osmolateur Némo"})

Problème : la pompe se coupe tout le temps, quelque soit l'état du capteur d'eau...

J'ai essayé d'inverser les 0 & 1, j'ai tenté un true/false... c'est tout pareil...

J'ai tenté de comprendre en regardant l'api du module (en passant, c'est pas mal cette fonctionnalité de la HC3)

{
    "id": 36,
    "name": "Réserve Némo",
    "roomID": 225,
    "view": [],
    "type": "com.fibaro.floodSensor",
    "baseType": "com.fibaro.lifeDangerSensor",
    "enabled": true,
    "visible": true,
    "isPlugin": false,
    "parentId": 35,
    "viewXml": false,
    "configXml": false,
    "interfaces": [
      "battery",
      "fibaroBreach",
      "zwave",
      "zwaveConfiguration",
      "zwaveWakeup"
    ],
    "properties": {
      "pollingTimeSec": 0,
      "wakeUpTime": 4000,
      "zwaveCompany": "Everspring",
      "zwaveInfo": "6,2,64",
      "zwaveVersion": "1.3",
      "batteryLevel": 100,
      "batteryLowNotification": true,
      "categories": [
        "remotes"
      ],
      "configured": true,
      "dead": false,
      "deadReason": "",
      "defInterval": 0,
      "deviceControlType": 0,
      "deviceIcon": 45,
      "emailNotificationID": 0,
      "emailNotificationType": 0,
      "endPointId": 0,
      "lastBreached": 1606982743,
      "log": "En attente du réveil",
      "logTemp": "TxtGreen",
      "manufacturer": "",
      "markAsDead": true,
      "maxInterval": 0,
      "minInterval": 0,
      "model": "",
      "nodeId": 2,
      "parametersTemplate": 22,
      "pendingActions": true,
      "productInfo": "0,96,0,11,0,1,1,3",
      "pushNotificationID": 0,
      "pushNotificationType": 0,
      "saveLogs": true,
      "serialNumber": "",
      "smsNotificationID": 0,
      "smsNotificationType": 0,
      "stepInterval": 0,
      "useTemplate": true,
      "userDescription": "",
      "value": true
    },
    "actions": {
      "getParameter": 1,
      "reconfigure": 0,
      "setInterval": 1,
      "setParameter": 2
    },
    "created": 1606924157,
    "modified": 1606924157,
    "sortOrder": 19
  },

 

Posté(e)

je vais peut être dire une bêtise, mais dans tes actions "turnOn" et "turnOff", tu ne spécifie pas l'ID du module qui pilote la pompe.


Et il me faudrait le log de GEA aussi au moment où l'événement se déclenche

Posté(e) (modifié)

Je n'ai pas de problème avec l'action qui est réalisée mais les conditions de déclenchement.

Et c'est bien le capteur d'eau qui pose problème.

[03.12.2020] [11:23:49] [DEBUG] [QA_GEA_26]: @30s [Validation*] #10 [Value, ["Réserve Némo",1]][Value, ["Osmolateur Némo",0]][TurnOn, ["Osmolateur Némo"]]

[03.12.2020] [11:23:49] [TRACE] [QA_GEA_26]:    [Démarrage] #10 [Value, ["Réserve Némo",1]][Value, ["Osmolateur Némo",0]][TurnOn, ["Osmolateur Némo"]]

[03.12.2020] [11:23:49] [DEBUG] [QA_GEA_26]:         [action] [TurnOn, ["Osmolateur Némo"]]

[03.12.2020] [11:23:49] [DEBUG] [QA_GEA_26]: @30s [Validation*] #11 [Value, ["Réserve Némo",0]][Value, ["Osmolateur Némo",1]][TurnOff, ["Osmolateur Némo"]]

[03.12.2020] [11:23:49] [TRACE] [QA_GEA_26]:    [Démarrage] #11 [Value, ["Réserve Némo",0]][Value, ["Osmolateur Némo",1]][TurnOff, ["Osmolateur Némo"]]

[03.12.2020] [11:23:49] [DEBUG] [QA_GEA_26]:         [action] [TurnOff, ["Osmolateur Némo"]]

Modifié par Dragoniacs
Posté(e)

@Dragoniacs j'ai identifié le bug, qui est particulièrement vicieux.... j'ai du mal à le corriger.

En fait je l'ai corrigé, mais ça a entrainé une cascade de nouveaux bugs !

Donc je planche dessus.... mais je vais y arriver... à suivre

 

  • Like 2
×
×
  • Créer...