-
Compteur de contenus
4 434 -
Inscription
-
Dernière visite
-
Jours gagnés
201
Tout ce qui a été posté par Steven
-
Ok merci pour tes tests, je vais refaire des tests après un bon reboot, on ne sait jamais. ;-) Pour la persistance des labels, pourquoi c'est persister puisque ce n'est pas récupérer après un simple enregistrement du VD. Tu parles bien de la valeur d'un label et non pas du label lui-même ? Envoyé de mon GT-I9192 en utilisant Tapatalk
- 80 réponses
-
- Module Virtuel
- Bouton
-
(et 1 en plus)
Étiqueté avec :
-
Imaginons que j'ai une variable globale à1. Si je fait un setGlobal(..., 2) et de suite un getGlobal, j'ai 1 en retour. Par contre, si je temporise avec un sleep entre deux c"est tout bon. Ce qui me semble normal vu que les variables globales doivent être stockées ce qui nécessite un temps de traitement un peu plus lent. Traitement qui semble être effectué en asynchrone. Est-ce que vous avez le même comportement ? Envoyé de mon GT-I9192 en utilisant Tapatalk
- 80 réponses
-
- Module Virtuel
- Bouton
-
(et 1 en plus)
Étiqueté avec :
-
Malheureusement ce n'est pas possible 😞 Envoyé de mon GT-I9192 en utilisant Tapatalk
- 80 réponses
-
- Module Virtuel
- Bouton
-
(et 1 en plus)
Étiqueté avec :
-
En réalité, j'ai un gros module virtuel avec 13 sliders. Le script google va interroger le site de netatmo et manipuler les sliders. Après dans le main loop de mon module virtuel, je renseigne de plus petits modules virtuels que je vais disposé dans mes pièces. Ainsi je vais mettre le petit VD pluie et température Out dans la pièce "Jardin", température et co2 dans "Salon". J'ai pas vraiment d'avis entre PHP et Google Script. Le PHP tourne en local chez toi et Google Script sur un serveur de Google. Dans tout les cas, si tu n'as pas d'Internet tu ne pourras pas aller chercher les données. Donc local ou distant ... aucune importance. Après, j'ai pas regardé le PHP pour voir ce qu'il faisait, tout ce que je sais c'est que je pense avoir tout remonté comme données utile : Température intérieur Humidité intérieur CO2 Son Pression Température extérieur Humidité extérieur Etat de la pile Pluie (dernière heure) si capteur de pluie présent Pluie (dernier jour) si capteur de pluie présent Etat de la pile du capteur de pluie si présent Le désavantage du script google c'est que c'est du Google, donc du jour au lendemain ils peuvent décider de fermer ses scripts. A toi de voir.
-
Je confirme, le code ci-dessus fonctionne correctement avec le capteur de pluie ... faut juste être patient pour que ce dernier remonte une donnée.
-
Tes scènes fonctionnent bien car les "IF" sont bien fait et complet ainsi, même si tu passes 2 fois dans ta scène, le "IF" va stopper le deuxième passage. En règle général, le mode bloc se débrouille très bien par contre en LUA l'erreur est vite arrivée et peut être vicieuse à comprendre.
-
Je confirme, le mode bloc est un générateur ... pourri Voici de la lecture d'un précédent post, tu verras que le mode bloc "coche" tout et n'importe quoi et que cela pose de vrai problème. http://www.domotique-fibaro.fr/index.php/topic/899-capteur-de-position-zg8101-et-module-fgs-221/?p=10231 Exemple stupide de ce qu'il ne faut pas faire : --[[ %% properties 91 value %% globals --]] local porte = 91 local lumiere = 65 if (tonumber(fibaro:getValue(porte, "value")) > 0) and (tonumber(fibaro:getValue(lumiere, "value")) > -1) then if (tonumber(fibaro:getValue(lumiere, "value")) > 0) then fibaro:call(lumiere, "turnOff"); else fibaro:call(lumiere, "turnOn"); end end Ce code n'est pas méchant, si tu ouvre la porte (91) la lumière (65) s'allume. Par contre, si tu rajoutes l'ID 65 dans l'entête, c'est discothèque assurée tant que la porte est ouverte
-
OpenKarotz permet justement de le passer en Local (sauf le TTS si le texte n'est pas en cache), comme toi avec ton OpenJabNab Je fut en Wifi aussi avec beaucoup de soucis de connexion. Il me semble que maintenant le lapinou fait des ping et s'il n'arrive rien pinger pendant un certain temps : Il reboot. Je pense que c'est là ton soucis.
-
Ici : http://www.domotique-fibaro.fr/index.php/gallery/category/3-album-des-ic%C3%B4nes-fibaro/ Je crois que oui, tu peux les modifier avec la HCLite.
-
Paramètre 16 Module On / Off après une coupure de courant Je viens d'en installer un hier soir pour brancher l'électro-vanne que @Moicphil m'a fournis
-
Il est en Wifi ton lapin ?
-
Pas de soucis, il faut un module virtuel sur la HC2 et un script Google qui pilote tout cela. Je devrais recevoir mon détecteur de pluie ce soir donc si cela ne dérange pas, je teste cela entre ce soir et demain avec le détecteur et je vous fournit le script. Si vous souhaitez pas attendre et déjà le mettre en place (le code pour le détecteur de pluie y est déjà mais j'ai aucune idée s'il va fonctionner). 1) Créer un application sur http://dev.netatmo.com/ ... c'est juste pour obtenir une clé d'accès 2) Importer le module virtuel ci-joint 3) Copier le script ICI sur votre Google Drive 4) Modifier les premières lignes du script 5) Créer un déclencheur comme ceci Attendez 5 minutes et regarder la magie opérer. Le script pilote donc les sliders du module virtuel. Ainsi, il est aisé de récupéré la valeur dans vos codes sans pour autant surchargé les variables globales. Exemple : local tempInt = fibaro:getValue(<id_vd_passerelle_netatmo>, "ui.sIntTemp.value") local tempExt = fibaro:getValue(<id_vd_passerelle_netatmo>, "ui.sExtTemp.value") local humInt = fibaro:getValue(<id_vd_passerelle_netatmo>, "ui.sIntHum.value") local humExt = fibaro:getValue(<id_vd_passerelle_netatmo>, "ui.sExtHum.value") local co2 = fibaro:getValue(<id_vd_passerelle_netatmo>, "ui.sIntCo2.value") ... La qualité de l'air n'est pas renseignée car les API Netatmo ne fournissent pas l'information. Je cherche une alternative ou un simple calcul basé sur le C02, la température et l'humidité. Passerelle_Netatmo.vfib
-
Tu es donc entrain de dire que pour que GEA fonctionne, tu as du rajouter tout tes ID dans l'entête ? Et ceci chez tout le monde Ce n'est pas parce que tu vérifies l'état d'un module que ce dernier doit être dans l'entête, cela n'a rien à voir. Les ID déclaré dans l'entête sont les ID qui vont déclenché le scénario. Dans le cas de DeuxG il ne veux pas que le scénario ce lance quand la luminosité change, l'ID 43 est donc inutile. Il veux que le scénario se lance quand le déclencheur change. Un "if" mal fait avec trop de déclencheurs dans l'entête provoque facilement des soucis. Donc pour éviter ce genre de problème, les gens ajoute un code bizarre et inutile dans 99% des cas : if (fibaro:countScenes() > 1) then fibaro:abort() end; Qui signifie ... si je me suis planté dans mes déclencheurs, fait en sorte que la scène ne se lance pas 2 fois en même temps Fait des tests et tu verras
-
Dans le code ci-dessus, non, il ne sert à rien. Le {"Repeat"} est nécessaire uniquement si l'on veux répété une opération toutes les X secondes alors que le périphérique n'a pas changé d'état pendant les dernières 30 secondes. Exemple, une porte qui reste ouverte et on souhaite être informé toutes les X minutes. Ou une pompe de piscine allumée tardivement et l'on souhaite recevoir un push toutes les 10 minutes jusqu'à ce qu'on l’éteigne pour de bon. Sinon, si le périphérique change d'état, cela ne sert à rien car GEA va géré cela automatiquement.
- 12 330 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Reçu ce matin, intégré dans la HC2 cet après-midi via un Script Google hébergé sur Google Drive ... ben oui, moi, j'ai pas de serveur PHP àla maison
-
Un concours ... avec obligation d'achat ? En Suisse, c'est illégale
-
@moicphil Dans ton exemple de scénario, id value id armed ce n'est pas une condition, c'est que le scénario va s'exécuter quand ton ID va changer de valeur (porte ouverte ou fermée) mais aussi quand l'ID va être armé ou désarmé.
-
Je vais me permettre de contre-dire. Dans l'entête du script il faut mettre "les déclencheurs du script". Dans le cas de DeuxG, uniquement l'ID 40 car c'est lorsque son détecteur va changer de valeur que le script doit s’exécuter. En ajoutant l'ID 43, le script va s'exécuter chaque fois que la luminosité va changer ce qui n'a aucun sens. Il devait juste y avoir un petit bug dans ton code. Je l'ai repris et voici un script qui fonctionne parfaitement. Je l'ai testé dans la même configuration mais avec mes IDs. --[[ %% properties 40 value %% globals --]] local detection = fibaro:getValue(40, "value") local lux = fibaro:getValue(43, "value") local dt = os.date("%H:%M") fibaro:debug("début du script à : ".. os.date("%H:%M")) fibaro:debug("état du capteur : ".. detection) fibaro:debug("luminosité : ".. lux) if ( tonumber(detection) == 1 and tonumber(lux) < 9 ) then fibaro:call(34, "turnOn") fibaro:debug("J\'allume la lumière à : "..os.date("%H:%M")) fibaro:sleep(30*1000) -- attendre 2 minutes fibaro:call(34, "turnOff") fibaro:debug("Lumière éteinte à : "..os.date("%H:%M")) end
-
je vais voir cela.
- 905 réponses
-
- SCRIPT LUA
- Contrôle
-
(et 1 en plus)
Étiqueté avec :
-
Premièrement c'est le code de Hansolo, je n'ai fait que de le compléter pour mes besoins personnels. Rendons àCésar ce qui appartient àCésar Deuxièmement, non, ce n'est pas suffisant. En ajoutant ce code tu créé une méthode supplémentaire, reste àl'appeler au bon endroit. J'ai pas de PC sous la main. Si Hansolo est encore debout ? Tu peux déjàcopier cette méthode et changer les dates pour prendre de l'avance. Envoyé de mon GT-I9192 en utilisant Tapatalk
-
Commandé
-
Il y a aussi ce "joly"* article frais de ce matin qui est sympa. http://domotique-info.fr/2014/06/choisir-baie-informatique-residentielle/ Joly car c'est un article de Sébastien Joly
-
Et pour répondre àla condition du math.floor, il va falloir que tu ouvres ta porte àdes moments très précis pour que cela fonctionne
-
Peau de lapin et poisson ? Tu laisses cela macérer pendant très longtemps ... c'est infecte, ça pue ... mais ça colle. Sinon, les araignées ont une soie naturelle très collante et résistante à l'humidité mais, entre nous, je trouve que c'est un peu délicat à manipuler, tu en as vite plein les doigts, les cheveux, la bouche ... beurrrk. Plus sérieusement, "Ni Clou Ni Vis" ... pour l'instant, je n'ai pas été déçu par ce produit, j'en dispose une petite couche directement sur le ruban pour les surfaces lisses. Sur le béton, j'applique une plus grosse couche, je met en contact le ruban et le béton 2-3 secondes, je retire le ruban, remet une couche sur le ruban et applique une dernière fois.
-
Imaginons un détecteur (a), une porte || et un autre détecteur (b) maisona || b jardin a étant l'intérieur de la maison, b le jardin On joue avec une variable globale "provenance" pour connaitre le sens (difficile avec une HCL) C'est du pseudo-code pour donnée une idée. Scénario a exécuter sur la détection du module "b", if ("provenance" == "a") then -- quelqu'un est entrain de sortir dans le jardin end "provenance" = "b" Scénario a exécuter sur la détection du module "a" if ("provenance" == "b") then -- quelqu'un est entrain de rentrer end "provenance" = "a" Scénario a exécuter sur la fin de détection du module "b" if ("provenance" == "b") then "provenance" = "" end Scénario a exécuter sur la fin de détection du module "a" if ("provenance" == "a") then "provenance" = "" end Un détecteur de porte ne sert à rien, il faut juste que les détecteurs de mouvements soient bien placé et une durée de détection assez courte.