Aller au contenu

OJC

Membres confirmés
  • Compteur de contenus

    390
  • Inscription

  • Dernière visite

  • Jours gagnés

    8

Tout ce qui a été posté par OJC

  1. OJC

    Dawn & Dusk Manager

    Merci Je suis en train d'essayer encore plus loin la logique de setTimeout(), mon joujou du moment... Concrètement, lorsque la 'boucle' principale a terminé le dernier trigger de la journée (Crépuscule Astronomique / Astro Dusk), elle s'arrête sans être relancée par un nouveau setTimeout(). C'est la 'boucle' secondaire qui s'occupe de la mise à jour des données qui relancera la 'boucle' principale après la mise à jour des données, avec un délai d'attente de 5 minutes pour ceux qui utilisent toujours un modem 56k ... C'est en phase de test... et le problème avec ce bouzin, c'est qu'un test complet prend 24 h
  2. Dawn & Dusk Manager Dawn & Dusk Manager est composé d'une Scène et d'un Module Virtuel destinés à permettre de déclencher des actions à l'aube et au crépuscule, en enrichissant les simples Sunrise et Sunset proposés nativement puisque sont disponibles les trois phases de l'aube et du crépuscule, ainsi que le midi solaire. * * * INSTALLATION N.B. : Ce programme a été conçu et testé sur la version 4.140 de la HC2. 1. Importer le Module Virtuel dans le Home Center 2 >>>> Panel for Dawn & Dusk Manager v. 1.3.0.vfib 2. Créer une scène en LUA en faisant un copier-coller du code >>>> Dawn & Dusk Manager v. 1.3.0.lua 3. Démarrer la scène. UTILISATION Le Module Virtuel Dawn & Dusk Panel permet de consulter les différents horaires, la mise à jour intervenant automatiquement tous les jours à 2 h du matin. D'un point de vue technique, c'est lui qui fournit à la scène les données horaires dont elle a besoin pour fonctionner. Pour déclencher l'exécution d'une scène, il suffit d'y insérer le trigger correspondant à l'horaire souhaité dans la zone %% globals : --[[ %% properties %% events %% globals onAstroDawn --Déclencheur Aube astronomique onNauticalDawn --Déclencheur Aube nautique onCivilDawn --Déclencheur Aube civile onSunrise --Déclencheur Lever du Soleil onSolarNoon --Déclencheur Midi solaire onSunset --Déclencheur Coucher du Soleil onCivilDusk --Déclencheur Crépuscule civil onNauticalDusk --Déclencheur Crépuscule nautique onAstroDusk --Déclencheur Crépuscule astronomique --]] ICONES Panel Manager * * * ASPECTS TECHNIQUES Ce programme est un exemple d'utilisation de la fonction setTimeout() en remplacement de la fonction fibaro:sleep(), l'asynchronicité étant utilisée depuis la version 1.1.0 pour créer deux 'boucles' indépendantes, l'une qui s'occupe de la mise à jour des données du Module Virtuel sur un cycle de 24 h, et l'autre qui s'occupe de mettre à jour à l'heure dite les variables globales faisant office de triggers suivant un cycle déterminé par les données récupérées dans le module virtuel. Avec la version 1.2.0, ces deux 'boucles' fonctionnent de manière enchaînée : lors la 'boucle' principale déclenche le dernier trigger, aucune instruction setTimeout() ne vient la relancer. C'est la 'boucle' de mise à jour qui le fera lors de la prochaine actualisation des horaires. Le code de la scène peut être consulté ci-dessous : * * *
  3. OJC

    Ma HC2 fait du Zapping

    Bonsoir à tous, Vu l'injonction de @Krikroff, j'ai repris le code de @Fred le ouf pour le faire fonctionner avec setTimeout, en ajoutant la possibilité de spécifier un intervalle supérieur à la minute. --[[ %% properties %% events %% globals --]] Interval = 60 -- Intervalle exprimé en secondes (min. 60 s.) StartSecond = nil -- Exécution lorsque les secondes = StartSecond ou nil si indifférent Initialize = true -- Pour caler la première exécution sur StartSecond function SceneRun() -- Initialisation if ((Initialize) and (StartSecond ~= nil)) then CurrentSecond = os.date('%S') if tonumber(CurrentSecond) < StartSecond then Delta = StartSecond - CurrentSecond elseif tonumber(CurrentSecond) > StartSecond then Delta = (60 - tonumber(CurrentSecond)) + StartSecond else Delta = 60 end fibaro:debug("Première exécution dans "..Delta.." s.") setTimeout(SceneRun,Delta * 1000) Initialize = false else -------------------------------------------------------------------- -- DEBUT des actions à réaliser à chaque nouvelle minute -------------------------------------------------------------------- fibaro:debug("Exécution en cours...") -------------------------------------------------------------------- -- FIN des actions à réaliser à chaque nouvelle minute -------------------------------------------------------------------- -- Mise en attente if (StartSecond ~= nil) then CurrentSecond = os.date('%S') if tonumber(CurrentSecond) < StartSecond then Delta = StartSecond - CurrentSecond elseif tonumber(CurrentSecond) > StartSecond then Delta = (60 - tonumber(CurrentSecond)) + StartSecond else Delta = 60 end else Delta = 0 end if (Interval < 60) then Interval = 60 end fibaro:debug("Prochaine exécution dans "..Delta + Interval.." s.") setTimeout(SceneRun,(Delta + Interval) * 1000) end end -------------------------------------------------------------------- -- LANCEMENT de la scène -------------------------------------------------------------------- SceneRun()
  4. OJC

    Mappage du réseau Z-Wave

    ah... mince... Je peux pas me contenter de mettre un nouveau mdp root dans ce cas... ça va faire désordre si j'ai besoin d'eux après...
  5. OJC

    Mappage du réseau Z-Wave

    Juste une précision, au cas où... en accès distant, Fibaro se connecte en root ou avec un user dédié ?
  6. OJC

    Mappage du réseau Z-Wave

    Bon... du coup, une petite Live USB, un écran et c'est pas bien compliquer de cracker un mdp root
  7. La version de Windows 10 était bien à jour, je venais de la terminer (la VBox ne tourne que rarement, donc il y avait du retard à ratttraper...) J'ai bien vu que cela ne venait pas du logiciel, puisqu'il tourne sans problème sur ma Surface Pro... Je vais réessayer sur un fresh install, sinon je suis bon pour ressortir la Surface
  8. OJC

    Mappage du réseau Z-Wave

    Sinon, il y a le Certified Installer Toolkit de la Z-Wave Alliance, mais faut être adhérent... et pour être adhérent, être un professionnel Je vais continuer à chercher, voir si l'équivalent n'existerait pas pour le grand public...
  9. OJC

    Mappage du réseau Z-Wave

    C'est ce qu'il m'avait semblé comprendre... Y'a moyen d'accéder à la HC en ssh pour aller voir en direct ce qu'on peut récupérer comme infos ?
  10. OJC

    Mappage du réseau Z-Wave

    Bonjour, Existe-t-il un moyen de mapper le réseau Z-Wave pour savoir par quel circuit les modules communiquent avec le HC ? Depuis que j'ai basculé d'openHAB/Razberry sur le Home Center 2, je me retrouve avec des noeuds morts et des soucis de remontée d'informations par les FGMS-001... Or, impossible via l'interface de la HC2 de se faire une idée concrète du maillage pour diagnostiquer le problème et mettre en oeuvre les correctifs. Ceci dit, je ne pensais pas que l'antenne de la HC2 serait moins performante que celle intégrée sur la carte Razberry 2 avec laquelle tous les modules discutaient en direct... Bref... Les informations sur le maillage doivent bien être enregistrées quelque part dans le Home Center. Comment y accéder ?
  11. OJC

    Mapper le réseau Z-Wave ?

    Bonjour, Existe-t-il un moyen de mapper le réseau Z-Wave pour savoir par quel circuit les modules communiquent avec le HC ? Depuis que j'ai basculé d'openHAB/Razberry sur le Home Center 2, je me retrouve avec des noeuds morts et des soucis de remontée d'informations par les FGMS-001... Or, impossible via l'interface de la HC2 de se faire une idée concrète du maillage pour diagnostiquer le problème et mettre en oeuvre les correctifs. Ceci dit, je ne pensais pas que l'antenne de la HC2 serait moins performante que celle intégrée sur la ca
  12. Bonjour, Auriez-vous une idée de la raison pour laquelle Hc2 Toolkit ne fonctionne pas sous VirtualBox faisant tourner Windows 10 sur un Ubuntu ? L'installation avorte avec un message d'erreur "255 Les attributs étendus (EA) sont incohérents."
  13. Bonsoir, Sur ce sujet, j'utilise le Qubino pour commander mes radiateurs via le fil pilote, avec asservissement à une sonde FGMS01, en utilisant le panneau de chauffage pour définir la température du consigne. Concrètement, j'ai créé un Virtual Device qui récupère la température de consigne résultant du panneau de chauffage en utilisant l'API (y compris lorsqu'on passe en mode manuel, d'où le fait que la mise à jour se fait en permanence). Il ne reste plus, ensuite, qu'à intercepter le changement de température de consigne pour lancer ou non le chauffage en fonction de la température remontée par le FGMS01 Le code pour récupérer la température de consigne actuelle est le suivant : HC2 = Net.FHttp("127.0.0.1", 80) HC2:setBasicAuthentication("admin", "admin") response = HC2:GET("/api/panels/heating?id=[METTRE ICI L'ID DU PANNEAU DE CHAUFFAGE UTILISE]") jsontable = json.decode(response) temp = jsontable.properties.currentTemperature Pour repérer l'ID du panneau de chauffage, il faut regarder dans la barre d'adresse du navigateur puisqu'il n'est pas visible dans l'interface (en tout cas sur la version 4.14). Et en pièce jointe, le Virtual Device en question (avec un code à optimiser, naturellement... je débute en LUA ) T°_de_Consigne.vfib
  14. Bonsoir à tous ! Je viens de mettre mon nouveau Home Center 2 à chauffer en remplacement d'un Raspberry Pi 3 qui tournait sous openHAB 2.0 et dont la carte RaZberry vient de me lâcher... Le budget de l'heure le permettant... Le changement de cerveau de la maison est donc en cours... et il me faut donc apprendre, d'où ma présence sur ce forum . Mon réseau : 3 Roller Shutter FGR-222 5 Dimmer FGD-212 avec des ByPass pour mettre des LED et se donner bonne conscience 7 Motion Sensor FGMS-001 4 Door/Window Sensor FGDW-002 1 CordSwitch 7 QUBINO ZMNHJD1 Le tout accompagné d'un Vero 4k et de quelques unités Sonos (1, 5, Bar et Sub)
×
×
  • Créer...