Aller au contenu

ROBBEJP

Membres confirmés
  • Compteur de contenus

    115
  • Inscription

  • Dernière visite

  • Jours gagnés

    9

Tout ce qui a été posté par ROBBEJP

  1. ROBBEJP

    std:exception: 'Timeout'

    Réponse de FIBARO: On Home Center 3 there is a watchdog which reboots your gateway automatically if some services are not working for 10 minutes. That is why Home Center 3 may just reboot without your knowledge. Je suppose donc qu'un des services à planté ... avec juste 2 pauvres scènes en service... Aieeeee. Pas question de basculer pour le moment me concernant Une idée ? Dites moi si votre HC3 reboot également votre coté ou si votre usagetime dépasse les 15jours.
  2. ROBBEJP

    std:exception: 'Timeout'

    Bon, des news ... à ce jour tout marchait nickel. Je me suis aperçu ce matin que la HC3 avait comme rebooté. La nuance toutefois, la scène fonctionne toujours (ce qui n'était pas le cas avec mon code qui ne fonctionnait plus après ce reboot) Ma question: est-ce que ce "reboot" (peut-être purement web server et non système complet) n'est pas pareil chez tout le monde ?
  3. ROBBEJP

    std:exception: 'Timeout'

    Niveau CPU, c'est calme. Donc nous ne somme pas dans une boucle sans attente entre chaque itération. J'ai toutefois ouvert un case chez FIBARO concernant le while et les sleep. Ils me confirme il y avoir un bug entre LUA et le fibaro.sleep. Par contre, j'adore leur suggestion de faire cela en scène bloc ... no comment "Please try deleting this scenario and adding it again as a regular block scene. Sometimes on LUA might happen some bug that is hard to catch. Exception timeout means basically that time period in which a kind of interruption might show up has past. So it has something to do with this function "fibaro.sleep(time)". this is probably a reason but I would relly recommend just doing it on block senes. Instead of Fibaro.sleep use regular delay in block scenes and it should work." Je vais surveiller la stabilité de la scène sur les jours à venir. Merci encore @jjacques68
  4. ROBBEJP

    std:exception: 'Timeout'

    ça marche nickel, pinaise, trop fort, du premier coup Merci encore et bonne soirée !! Bye.
  5. ROBBEJP

    std:exception: 'Timeout'

    Ok good, je vais creuser ça Par contre, tu pourrais m'ajouter dans le code le fait de rallumer 5s après stp ? J'ai cherché ... et j'avoue encore avoir un peu de mal à comprendre le concept... En tous cas, grâce à toi, j'ai déjà bien avancé. Merci !!
  6. ROBBEJP

    std:exception: 'Timeout'

    Car la prise Fibaro se trouve sur un temporisateur qui fait boitier de démarrage de la pompe. Il est réglé à 15min d'attente (le temps que le forage se remplisse) puis la pompe se relance jusqu'à avoir remplis le ballon tampon réglé à 4,5 bar. A cette pression, le contacteur manométrique coupe l'alimentation (contacteur manométrique situé en coupure entre le boitier de démarrage et la pompe. En gros: Pompe ==> Contacteur manométrique ==> Boitier de démarrage ==> Prise Fibaro ==> Prise de courant. Concernant cette fonction mainloop, peut-on faire des boucle imbriquées. J'en fais sur ma HC2 comme du genre: while true do code boucle 1 while true do code boucle 2 break end end Comment on code ça avec la fonction mainloop, aussi, l'équivalent du break (pour sortir de la seconde boucle et retomber dans la première). Merci encore !
  7. ROBBEJP

    std:exception: 'Timeout'

    Merci @jjacques68, Je viens de tester dans une nouvelle scène (j'ai désactivé l'ancienne) et ça marche nickel. Je vais surveiller si elle tiens plus que 5 jours celle-ci En tous cas, grand merci !! sincèrement. Juste pour comprendre comment on utilise cette fonction mainloop. Pourrais tu commenter les lignes car j'ai du mal à saisir le concept d'écriture comme le mainloop() à la fin par exemple. Merci encore !
  8. ROBBEJP

    std:exception: 'Timeout'

    Bonjour @jjacques68, Merci de m'avoir répondu. C'est effectivement une scène qui se lance automatiquement au démarrage de la HC3. La condition de démarrage est celle-là: { conditions = { { isTrigger = true, operator = "==", property = "start", type = "se-start", value = true } }, operator = "all" } Après reboot, la scène est bien UP. Donc sur ce point, je dirais ... pas de soucis. Quant au multi-instance, je ne souhaite pas justement. La boucle While permet de s'en affranchir. Moi je pense qu'il y a comme un cleanup de process qui s'exécute 1 fois par semaine car mes scènes sont down précisément 5 jours après. Pour le settimeout, pas glop avec une boucle car l'attente est liée au process que tu souhaite différer, mais pas à la boucle. Si je fais un truc du genre (si le module est ON alors OFF au bout de 5s): while true do fibaro.setTimeout(5000, function() local deviceValue1 = fibaro.get(23, "value") if deviceValue1 == true then fibaro.call(23, "turnOff") end end) end Je me retrouve avec un cœur CPU à donf (au point, je pense, de finir par planter la HC3 si je n'arrete pas la scène) car rien dans le code me permettra d'indiquer à la boucle d'attendre 1s entre chaque itération (sauf si j'ai mal écris qqch... ce qui peut être possible). Pour finir, concernant les QA, j'avoue ne pas maitriser suffisamment le sujet. Si une âme sensible pourrait me "réécrire" mon code de protection pompe, cela me permettrais d'en prendre exemple afin de mieux appréhender la façon dont fonctionne le truc. J'avais fais comme ça avec mes débuts LUA ... je pompais du code et si et là puis de fil en aiguille, j'ai fini par comprendre la philo... Merci !
  9. Bonjour à tous, HC3 montée et en test, juste 3 modules installés (Vanne Danfoss, FGS-222, Wall plug). Le WallPlug me permet (en test sur cette HC3) de faire office de capteur manque d'eau pour ma pompe de forage (j'ai peu d'eau dans le puis, et il se trouve à sec très souvent). Mon capteur manque d'eau à sonde n'est pas fiable car les électrodes sont souvent encrassée ... rien de mieux qu'un système qui détecte la conso car quand la pompe, pompe de l'air, la conso électrique chute de 50%. Bref, cela marche depuis 4 ans sur ma HC2 sans pb. Sur la HC3, j'ai repris mon code LUA (avec quelques adaptations) et marche nickel aussi... sauf que (sinon, je ne ferais pas ce POST), au bout d'1 semaine la HC3 semble comme "rebooté" (mais pas un vrai reboot car toutes mes scènes ne sont pas relancée) et j'ai un message d'erreur sur les scènes censées être en cours. Double question: Ces messages d'erreur sont-ils une conséquence au "reboot" ? ou est-ce la source du problème ? A noter, ce "problème" n'arrive qu'au bout d'une semaine. La scène fonctionne parfaitement bien toute la semaine. Pour répondre d'avance sur la boucle while: Je n'utilise pas les trigger car c'est un moteur de pompe très "instable" niveau consommation. Les retours d'état de consommation sont très fréquents (et volontairement augmenté depuis les paramètres) car il me faut une réactivité sans faille sinon ma pompe peu cramer ... (1200 balles quand même) Quand j'utilisais les triggers, même avec un KillOtherInstance, celà arrivait que certain retour d'état passe à la trappe... j'avais à l'époque configuré un autre scénario de secours qui m'alertait si la conso n'était pas normal durant un laps de temps et je réagissait avec un pétard au cul ... mais même 1min de pompage d'air et la pompe souffre dangereusement. Depuis que j'ai fais cette boucle, nickel confiance total en HC2 jamais eu de soucis. Principe du code (somme toute basic): Je vérifie toutes les secondes si la conso (dans l'exemple j'ai mis une lampe. Donc les valeurs de conso ne sont pas celles de la pompe) si elle se trouve dans la fourchette. Si tel est le cas (car au démarrage de la pompe, la consommation peut se trouver dans cette fourchette), j'attends 1,5s pour revérifier une seconde fois ==> 1,5 s est le temps pour la pompe de stabiliser sa consommation électrique. Double check, mais là je coupe le WallPlug car c'est que la pompe ne pompe plus d'eau. Le code: while true do fibaro.sleep(1000) local ConsoForage1 = fibaro.getValue(33, "power") if tonumber(ConsoForage1) >= 20 and tonumber(ConsoForage1) <= 50 then fibaro.sleep(1500) local ConsoForage2 = fibaro.getValue(33, "power") if tonumber(ConsoForage2) >= 20 and tonumber(ConsoForage2) <= 50 then fibaro.call(33, "turnOff") fibaro.sleep(5000) fibaro.call(33, "turnOn") end end end Merci pour votre avis.
  10. ROBBEJP

    réglage jardin

    Hello, Je confirme également, inexploitable. Il y a trop peu de paramètres possibles pour en tirer quelque chose. Je vais reprendre le code que j'avais fait sur ma HC2 et l'adapter sur ma HC3... dommage car pas compliqué de faire un truc sympa d'autant qu'il ont vraiment voulu intégrer cette fonction d'arrosage comptes tenus des modules spécifique à ajouter. Bye.
  11. Re, Merci pour ta réponse. Celà fonctionne effectivement. Je n'ai jamais utilisé les API et viens de download la doc. Merci pour ta réponse .. et dsl pour cette question basic mais qui m'a quand même fait avancer Bon weekend.
  12. Merci pour ta réponse, Mais je fais comment pour vérifier le champ isRunning ? Si je tape ce code: local maScene = api.get("/scenes/ID") print (maScene) Le résultat fournis n'est que l'ID de scene. Je suppose qu'il faut reqeter autre chose pour chopper le champ dont tu parles, mais j'avoue ne pas savoir comment [21.05.2021] [18:13:42] [DEBUG] [SCENE16]: Merci !
  13. Bonjour à tous, Je suis en train de commencer à me recoder mes anciennes scènes HC2 vers ma nouvelle HC3. Dans un de mes scripts, j'ai besoin de connaitre l'état d'exécution d'une scène avant de la lancer (en gros, si elle tourne, je ne fais rien). j'utilisais fibaro:countScenes et faisait un vulgaire == 0 then ... J'ai bien conscience que sur HC3: - Les scènes sont maintenant mono-instance - Nous avons la possibilité de la protéger ou non une nouvelle exécution auquel cas (si je ne la protège pas), l'exécution en cours sera killé (%%killOtherInstance sur HC2). Je vois que le fibaro:countScenes n'est plus disponible, je peux donc utiliser quoi à la place ? Merci !
  14. Je m'appelle Henri ... heu non, en fait je m'appelle Jean-Philippe. Mon métier est DBA d'étude sous SQL server. Mon quotidien étant la perf et l'optimisation de grosses bases de données client situé un peu partout en France et un peu dans le monde. Je suis sur FIBARO depuis maintenant 3 ans (HC2), au départ, je ne souhaitais uniquement que piloter mes têtes thermostatiques. Puis, de fil en aiguilles, j'ai voulu plus, puis encore plus. A ce jour, je pilote une grande partie de ma maison et dénombre (au dernier décompte du backup HC2) 105 devices ZWAVE. Je ne suis pas un expert en LUA, mais me débrouille comme je peux ... et, bien sûr, tout en respectant la perf de la boi-boite... qui, je l'avoue, commence à me faire serrer les fesses au fil de sa monté en charge. Je viens d'acquérir la HC3 car souhaite migrer en douceur. Voilà pour ma présentation. Inutile de vous dire que votre Forum m'a permis de trouver solution à quelque uns de mes problèmes, donc c'est aussi l'occasion pour moi pour vous remercier. A bientôt.
×
×
  • Créer...