-
Compteur de contenus
25 851 -
Inscription
-
Dernière visite
-
Jours gagnés
1 254
Tout ce qui a été posté par Lazer
-
Mon installation photovoltaïque en autoconsommation
Lazer a répondu à un(e) sujet de Lazer dans Mon installation domotique
Je n'ai pas changé le profil, uniquement injecté la 1ère fois. Et je sais que le profil n'est injecté vers le micro-onduleur que si la communication CPL est correcte (et qu'il y a du soleil pour alimenter l'onduleur via le panneau) Du coup je suppose que pour changer le profil c'est pareil, dans l'application Toolkit, et il va le pousser vers les micro-onduleurs avec lesquels il communique... ça prend quelques minutes.- 986 réponses
-
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
Si, mais est-ce pertinent ? Alourdir la doc de trucs évidents ce n'est pas forcément pertinent... sinon tu vas devoir le faire pour l'ensemble des options qui proposent de comparer la valeur avec les paramètres + - et ! Une fois qu'on a compris et décrit le principe avec l'option la plus utilisée "Value", "Value+", "Value-", "Value!", c'est bon, les gens ont saisit la logique. Crée des QuickApp thermostats dans la HC3 et tu vas comprendre la différence entre les 2. Heating et Cooling sont les opposés, l'un pour chauffer, l'autre pour climatiser. Tout ça en coordination avec le panneau de climat (qui n'a plus grand chose à voir avec le panneau de chauffage que tu as connu sur HC2) Non parce que justement il faut spécifier si on parle de la consigne de chauffage ou de climatisation. Cela correspond à des types de modules bien spécifiques, avec des propriétés différentes. Et bien non justement, en vertu de ce que j'ai écris au dessus. Il faut que tu prennes le temps de créer plein de QA bidons, de chaque type, regarder leurs propriétés (JSON), tu verras les différences et tout ce que ça implique. Les différents types de thermostats sont particulièrement intéressants, ça n'a plus rien à voir avec ce qu'on a connu sur la HC2.... c'était tout pourri en comparaison. Disons plus "limité" (c'est moins politiquement incorrect) -
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
ça dépend de la télécommande utilisée. Par exemple sur une Remotec ZRC90 j'utilise les keyAttribute suivants : Pressed Pressed2 HeldDown Les noms parlent d'eux même. Comme souvent pour connaitre les valeurs disponible, il faut aller voir le JSON du module via l'API : "centralSceneSupport": [ { "keyAttributes": [ "Pressed", "Released", "HeldDown", "Pressed2" ], "keyId": 1 }, { "keyAttributes": [ "Pressed", "Released", "HeldDown", "Pressed2" ], "keyId": 2 }, On voit bien les valeurs possibles pour chaque bouton keyId de la télécommande, autant qu'il y a de boutons. -
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
Donc ne la change pas. Perso je ne la maitrise tout simplement pas du tout... encore une de plus ! -
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
Vu que ces 2 options sont codées différemment en LUA, elles doivent avoir des différences... probablement assez subtiles. Je m'abstiens donc de les fusionner. Si tu es curieux tu peux regarder le code de GEA, dans le fichier main du QuickApp. Et voilà encore 2 options que je n'ai jamais utilisé ! -
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
Les filtres possibles sont ceux de la box Fibaro, donc il faut être très rigoureux dans la syntaxe. En théorie je suppose qu'on peut ajouter turnOn, tu devrais le tester avant de l'ajouter dans la doc. Mais attention, pas TurnOn et TurnOff (à cause de la majuscule) Voilà typiquement une option que je n'ai jamais utilisé... -
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
En fait les exemples sont complets, il n'y a rien de plus à ajouter. Le paramètre est juste un nombre, qui donne le numéro du programme à exécuter. On les retrouve dans l'API JSON du module : Ou bien plus simplement dans l'interface Web, dans l'ordre : Par exemple le programme n°5 c'est la police, ça fait son petit effet en cas d'intrusion -
Quick App - DomoCharts - Graphiques sur NAS pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
Ce qui serait plus logique je pense, c'est de pouvoir fixer l'unité sur le litre. Ainsi il serait pris en charge par GEA comme un compteur d'eau (ce que c'est en réalité) et affiché dans le graph idoine. Le seul souci, c'est que je ne pense pas que tu puisses changer le ratio de l'entrée analogique du module RGBW. Par exemple, afin que 100% corresponde à .... disons 1234 litres si ta cuve fait ce volume. Sinon il faudrait passer par un QuickApp intermédiaire avec le bon type et la bonne unité, qui fait la conversion propre.- 408 réponses
-
- domocharts
- hc3
-
(et 1 en plus)
Étiqueté avec :
-
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
Il faut bien comprendre que plusieurs options ont été créées par Steven à la demande des utilisateurs... donc parfois une option a été utilisée par une seule personne, et qui a peut-être quitté le forum entre temps. Lors du portage sur HC3 je me suis efforcé de garder le maximum d'options par souci de rétrocompatibilité, mais ça ne veut pas dire que c'est utile. Les rares options qui ont disparu, sont celles spécifiques à la HC2 et qui n'ont plus lieu d'être sur HC3. Ou bien elle ont été remplacé par un équivalent adapté à la HC3. La 1ère page du topic résume ces changements. Bref, si tu veux vraiment te pencher sur l'utilité et les cas d'usage de chaque option, il faudra que tu fouilles le forum, tu trouveras les réponses dans les profondeurs des quelques sujets dédiés à GEA. C'est le cas de la fonction StringToAlpha de MAM78, mais aussi de OnOff, etc... perso je ne les ai jamais utilisé. Oui évidemment, sinon il ne se passera jamais rien. -
Et oui, c'est d'un pénible.... Comme beaucoup de choses sur cette application... J'ai peur que la seule solution soit de s'y habituer, vu que Fibaro considère que c'est une nouveauté et que c'est mieux ainsi. Tu peux toujours tenter de les harceler...
-
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
@jojo j'ai déplacé tous tes messages ici, et non pas sur le topic du Support GEA, car je considère que ce sont des questions d'intérêt général liées à la rédaction de la documentation de GEA. Je répondrai à celles qui sont pertinentes et/ou pour lesquelles j'ai une réponse à apporter. Les questions du type "à quoi sert cette option" seront ignorées, en principe du bon vieux "si tu ne sais pas ce que c'est, alors c'est que tu n'en as pas besoin" -
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
"performance" c'est un terme générique qui ne veut pas dire grand chose si on ne précise pas le contexte. 2 exemples : si on cherche à réduire l'utilisation CPU de la box, alors il vaut mieux ne pas utiliser de déclenchement instantané (avec durée = -1), car c'est plus ou moins l'équivalent de démarrer une nouvelle instance de GEA (un peu comme une nouvelle instance de scène à l'époque de la HC2), car il va relire la config, analyser les règles, etc... Mais attention je tiens à modérer mon propos, ce que je dis dans la phrase précédente est très théorique. La HC3 est vraiment très puissante, il ne faut surtout pas se prendre la tête pour ça, ce n'est pas l'ajout de règles dans GEA qui va changer quoi que ce soit à l'utilisation CPU de la box... il faudrait vraiment des milliers de règles pour commencer à ressentir quelque chose. si on cherche à réduire la latence de déclenchement d'une action, évidemment la durée = -1 est à privilégier. Et c'est bien là que ce situe le choix. On veut réagir immédiatement à un événement (une fenêtre vient de s'ouvrir tandis que l'alarme est activée => alors déclenchement de la sirène), ou bien après un certains temps (une fenêtre est ouverte depuis 5 minutes tandis que le chauffage est allumé => alors extinction du chauffage). Donc ce n'est pas tant un problème de performance (terme qui n'a pas trop de sens ici), mais c'est la logique du scénario désiré qui prime sur la configuration, il ne faut pas se poser plus de question que ça. Je pensais que c'était des notions que tu maitrisais déjà, ancien utilisateur de GEA sur HC2. La logique générale n'a pas changée. -
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
Dans ce cas fait un copier/coller de mon explications Parce que dans le 1er exemple, "Value" n'est pas entre parenthèses, donc c'est un trigger, donc cette condition fera un déclenchement instantané de GEA à chaque changement de la valeur du module (c'est à dire à chaque fois que la température varie de 0.1°C). Rien de compliqué, c'est juste le fonctionnement de base de GEA en fait. Parce que tu peux très bien vouloir déclencher une notification, une action, lorsqu'une des condition est le trigger, alors que les autres conditions ne sont que des ... conditions ! Typiquement dans mon exemple, la porte s'ouvre (c'est le trigger), selon si la température est négative (une simple condition, mais pas un trigger) Je suis persuadé que quand tu avait tes 700 règles sur GEA pour HC2 tu avais des cas similaires, tellement c'est élémentaire. Pas sûr de comprendre, mais n'oublie pas les fondamentaux de GEA : - durée >= 0 : les actions sont déclenchées quand toutes les conditions de la règles sont validées depuis X secondes (avec X >= 0 donc)... tout en n'oubliant pas que GEA fait un cycle de vérification toutes les 30 secondes. - durée = -1 : les actions sont déclenchées instantanément lorsque le (ou les) trigger(s) change de valeur, et que toutes les autres conditions sont également valides Bah c'est pas bon, tu as oublié les parenthèses justement.... cf mes explications, il faut prendre ce réflexe, sinon j'en connais qui vont avoir des mauvaises surprises lors des prochaines versions de GEA. Donc puisque tu mets à jour la doc de syntaxe, autant aller jusqu'au bout de la logique, et écrire les choses correctement Sinon on reviendra sans cesse dessus... Je ne comprend pas la question de la performance, les 2 modes de fonctionnement n'ont juste rien à voir, tu choisis la durée en fonction de tes besoins. Si l'instantané n'est pas indispensable, dans ce cas tu as ta réponse dans tes question, utilise le mode par intervalle (appelé mode automatique par Steven) -
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
Je viens de vérifier dans le code, et c'est strictement supérieur (>) et strictement inférieur (<) Pour ton 1er exemple, c'est effectivement impossible, à cause des 2 conditions Time différentes. La seconde écriture, avec les 2 règles distinctes, est donc correcte. En alternative, on peut utiliser "Or", ce qui permet de tout écrire en 1 seule ligne : GEA.add({17, {"(Days)","Monday,Tuesday,Thursday,Friday"}, {"(Or)", {"(Time)","11:30","13:30"}, {"(Time)","16:30","18:30"}}}, -1, "Porte ouvertes le #date# à #time#") On notera que j'ai ajouté des parenthèses autour des conditions "Days", "Or" et "Time" afin de ne pas qu'elles soient considérées comme des triggers, du fait du mode de déclenchement instantané choisi pour cette règle (durée = -1) Dans le cas présent c'est inutile car ces 3 conditions ne peuvent pas être utilisées comme Trigger, mais : - il n'est pas exclu qu'elles le soient dans une prochaine version, ce qui pourrait provoquer des effets indésirables sur les règles existantes. - c'est une bonne habitude à prendre pour écrire ses propres règles, trop de fois j'ai vu des gens se plaindre du comportement inattendu de GEA, car ils avaient un peu trop de triggers... Exemple : GEA.add({18, {"Value-", 19, 0}}, -1, "Ouverture fenêtre alors qu'il gêle dehors") En réalité, cette règle se déclenchera lorsque la fenêtre est ouverte, mais également à chaque fois que le température change d'un dixième de degrés tout en restant sous les 0°C.... et cela même si la fenêtre est fermée.... ça va faire beaucoup de notifications ! Avec les parenthèses c'est OK : GEA.add({18, {"(Value-)", 19, 0}}, -1, "Ouverture fenêtre alors qu'il gêle dehors") Je pense que tu peux ajouter cette remarque sur les parenthèses et les déclencheurs instantanés dans la doc, car je ne suis pas certain que ça y figure déjà, et l'erreur est courante. A noter que GEA sur HC2 fonctionnait déjà de la sorte, mais bien souvent le problème passait inaperçu car il fallait déclarer manuellement les triggers dans l'entête de la scène. Ce n'est plus le cas sur HC3 car GEA détecte maintenant automatiquement les triggers, donc les parenthèses sont plus que jamais importantes. Évidemment tout cela ne concerne par les règles classiques à déclenchement sur durée >= 0 (par exemple 30, 60, etc) -
Tu as bien protégé toutes les fonctions à risque avec un pcall() ? httpClient, json, etc
-
OK.... ça reste un grand mystère alors. En tout cas c'est résolu
-
Il a toujours parfaitement fonctionné le SRT321 chez moi, c'est étrange ton comportement, l'inclusion s'était peut être mal passée ? @ericl78 ça par contre c'est très embêtant :( Du coup pas de mise à jour en prod, merci pour l'avertissement. Tu l'as bien remonté à Fibaro sur le forum ?
-
Aucun souci pour ma part sur ma HC3 de test. J'ai presque envie de l'installer en production, car il y a un bug résolu qui m'embêtait pour les QuickApps : "Slider ignores min/max values from the API" Cette amélioration : "Z-Wave : Improved devices adding process" pourrait être intéressante pour l'inclusion des modules Qubino Fil Pilote... sait-on jamais, c'est à tester.
-
Quick App - Gestionnaire d'Événements Automatique - GEA pour HC3
Lazer a répondu à un(e) sujet de Lazer dans Quick App Developpeur
En effet, c'est clair, seul le 1er ID est contrôlé. Merci ça fera un autre correctif à apporter à la prochaine version. Mais en attendant, je pense que c'est sans impact, tant que tes ID sont bons. Et quand bien même le 2nd (ou 3ème...) ID serait mauvais, ça serait sans impact sur le fonctionnement de GEA, vu que le mauvais ID n'existe pas, il demandera à la HC3 d'exécuter une fonction d'un QA qui n'existe pas, donc il ne se passera rien. -
HC3 & HC3L - 5.111.48 - BETA - 03/06/2022 Thank you for using our gateway! Be sure to update to the latest version to enjoy new features and improvements. Main features: 1. Completely new and redesigned process of first gateway configuration in WebUi. 2. Added possibility to test newly added Z-Wave devices during first configuration. What's new: Dashboard Added possibility to use Hold (start move) and Release (stop move) actions on buttons in sidebar for roller shutters. Devices Device roles now visible on the Settings/Devices page. Added missing support for devices which works on HC2/HCL platforms. Added channel designation in the target device selector in Z-Wave association configuration. Slider for level change for roller shutter with role "Device without positioning" removed from control dialog in mobile application. Parameter names are now displayed for Z-Wave devices.** Improved virtual power consumption algorithm for Color Controllers. Elero* Improvements in pairing process. JA Pulse device support added. Nice* Changed default devices names to be more understandable. Improved calibration mechanism for BiDi-Shutter and BiDi-Awning. Improved error handling during pairing processes. UI improvements. Improved removal of disconnected devices. Other Device location (room) added to e-mail and push notifications templates. Updated system packages for performance and stability. Profiles Improved saving for actions in profiles. Quick Apps Added support for Headers in Websocket connections. Scenes Added possibility to rename scenes from within the open editor. Safeguards have been added to prevent incorrect values being entered in Scenarios conditions. Performance improvements related to loading elements in Block Scenes. Added translations for modes and actions for thermostats. Z-Wave Added background polling for sleeping devices**. Improved devices adding process. Updated SDK to v7.17.2 for Yubii Home and Home Center 3 Lite. Performance improvements. Bug fixes: Dashboard Redirection to specific device settings not always works correctly. Elero* Issue with controlling Awnings in some cases (reversed states and/or actions). Energy Wrong rounding up the percentage of summary consumption for devices list in Savings tab. Issue with "Rest" graph in Detailed Consumption graph in General Tab if main energy meter is set. Gateway Connection Empty Z-Wave device templates after downloading them from Slave gateway. Network Listing available networks not always works correctly if the currently connected network has poor quality. Nice* Added device summary shows default names instead of configured ones. It is impossible to control old revision of Era Fit BD and Next Fit BD devices. Inconsistent device renaming during adding wizard in case of different protocols. Other Duplicated scrollbar in WiFi search window. Every logging into the system using mobile application generates redundant events to History. Profiles Wrong unit for Sprinklers watering time. Rooms Drag and drop the rooms not always works correctly. Quick Apps Slider ignores min/max values from the API. Scenes Impossible to edit or create scenes using thermostats in Czech language in some cases. Missing favorite positions condition and trigger for Elero devices. Z-Wave ZW300 devices update fails in some cases. Global polling not always works correctly. Known issues: Z-Wave Engine 3.0 Some Z-Wave devices are not fully compatible with the new version of Z-Wave engine. Gateway connection is not available in the new Z-Wave engine version. * - does not apply to HC3L (Home Center 3 Lite) ** - applies only to Z-Wave Engine 3.0
-
Si, la variable child retournée par createChildDevice() pointe bien sur le module enfant, enfin sa représentation en mémoire (= une instance de l'objet, cf discussion sur le nouveau topic du QA pour les débutants) Tu peux l'exploiter comme bon te semble, mais c'est de courte durée, car au démarrage suivant du QA, la mémoire est perdue. Donc il faut recréer ton tableau de child, d'où mon message précédent, il te faut un moyen d'identifier simplement les child autrement que par leur ID. La variable stockée dans chaque child est le meilleur moyen à mon avis.
-
Cool Pour l'ID des enfants, ce qu'il faut faire c'est se construire un tableau dynamique des modules enfants, reconstitué à chaque démarrage, afin d'identifier facilement les enfants. De mémoire la doc Fibaro indique de procéder comme cela. Après la façon de le mettre en œuvre varie selon les gens. Perso lors de la création de chaque module enfant, je leur affecte une variable (variable de quickapp, donc visible dans l'onglet idoine du module) qui contient un identifiant unique (la forme de cet identifiant est très variable selon le but recherché... parfois c'est un ID numérique, parfois c'est juste du texte). Puis lors du démarrage du QA, je vais charger cette variable pour chaque enfant, et me construire une table utilisée dans le code LUA.
-
Génial, bravo et merci J'ai épinglé ton message du coup, il restera en haut de la page de cette section tutoriels. Juste 2 ou 3 précisions : Les "onglets" du QuickApp qui nous permettent d'organiser notre code LUA, sont en réalité appelés des fichiers. Pour les développeurs, c'est exactement comme quand on réalise un programme avec plusieurs fichiers, qui sont ensuite compilés et liés ensemble avant l'exécution. Le QuickApp lui-même est un programme, qui s'exécute dans un processus géré par le système d'exploitation (Linux) Si tu vas voir le JSON de tes modules QuickApp via l'API HTTP (ou après exportation du QuickApp sur ton PC avec l'extension FQA), tu verras que ces fichiers apparaissent dans le champ files, qui est bien la traduction anglaise de fichier. Le fait de créer un second fichier "tools" pour reprendre ton exemple n'a rien à voir avec le fait d'appeler ses fonctions avec tools:xxx(). Le nom du fichier n'a aucune importance dans l'exécution du programme LUA. En revanche, lors du développement de mes QA, j'ai choisi comme bonne pratique de nommer mes fichiers de la même façon que la librairie qu'elle comporte. Mes librairies, sont en réalité des tables au sens LUA du terme, c'est à dire un tableau qui comprend des fonctions. Basiquement : tools = {} function tools:maFonction(...) -- Fait des trucs end Et c'est bien le nom de la table tools qui importe, car c'est ainsi qu'elle sera connue dans tout le programme LUA (c'est à dire dans l'ensemble des fichiers, ou onglets, du QuickApp) LUA n'est pas un vrai langage de programmation orienté objet, néanmoins Fibaro a construit les QuickApps avec une approche objet. "QuickApp" est assimilable à une classe, donc la représentation théorique de l'objet. "quickApp" (sans la majuscule donc) est assimilable à l'instanciation d'un objet à partir de la classe QuickApp. Et le mot clé self permet d'accéder aux éléments de l'objet en cours. Donc si on est dans une fonction de QuickApp, alors self pointe également sur quickApp, ça revient au même. En pratique on n'a pas besoin d'utiliser quickApp (sans la majuscule), sauf quelques cas particuliers, notamment la communication d'un Child Device vers le QuickApp parent. Et donc justement, il est peu important de comprendre ces notions quand on développe un QuickApp "célibataire", mais il devient primordial d'assimiler ces concepts quand on commence à élever des enfants.
-
Mon installation photovoltaïque en autoconsommation
Lazer a répondu à un(e) sujet de Lazer dans Mon installation domotique
Ah yes, pas mal le format réduit d'ailleurs- 986 réponses