Condition ALL qui ne fonctionne pas

Bonjour la communauté,
J’aurais besoin de vos lumières, j’ai un flow pour gérer mes zones de pompe à chaleur + mes vannes thermostatiques. Pour finaliser mon flow, j’ai ajouté une condition ALL pour qu’une fois la température atteinte dans les deux chambres, lors seulement après, la zone nuit de ma pompe à chaleur s’arrête. Mes vannes (l’étape juste avant) se coupent bien quand la température cible est atteinte, en revanche la pompe à chaleur ne se coupe pas. J’en déduis que c’est la condition ALL qui ne fonctionne pas, mais je ne comprend pas pourquoi. Est-ce que quelqu’un aurait une idée de mon erreur ?
Un grand merci d’avance, voici le flow :

Salut,
je ne sais pas si ça traite ton problème (j’ai renoncé à comprendre ton flow) mais j’ai appris à mes dépens que les actions/conditions ne s’exécutent qu’une seule fois dans un flow. Tes actions après le délai de 300mn et le ALL ne s’exécuteront que la première fois (selon que si les 300mn s’écoulent avant que le ALL se vérifie ou pas).
J’imagine qu’en mode test tu devrais y voir plus clair

1 Like

Un conseil : je n’utiliserais pas un délai supérieur à quelques minutes. J’utilise l’app Chronograph pour cela.
En effet, le délai intégré disparaît après une coupure de courant ou un redémarrage de Homey. Ainsi, votre flow ne continue jamais jusqu’à ce qu’il soit à nouveau déclenché.


Ajoutez également des cartes Timeline ou, mieux encore, des cartes « Simple Log » à vos flow. Vous pourrez ainsi revenir plus facilement sur ce qui s’est passé et sur ce qui ne s’est pas passé.

(traduit avec deepl)

3 Likes

Hello et merci pour ta réponse, c’est le but d’avoir ces deux conditions, soit les températures sont atteintes, soit quoi qu’il en soit ça se coupe après 300mins. Mais le souci ne vient de ça car c’est très souvent avant les 300 mins que les températures sont atteintes :cry:

Hello et merci pour ton aide, effectivement je n’avais pas pensé à la coupure de courant et/ou internet (j’ai un onduleur mais ça ne tiendra pas bien longtemps…). Je vais étudié les deux app ! Un grand merci :wink:

1 Like

J’ai finalement un peu regardé ton flow. Sous réserve que j’aie pigé : le ALL (qui n’est pas un AND) ne peut se déclencher que si les 2 branches en entrée sont simultanément vérifiées. Il me semble que chacune de tes branches est actionnée par un trigger différent donc ce ne serait jamais simultané.
Suggestion annexe : tu devrais mettre tes températures de consigne dans des variables plutôt qu’en “dur”. Ca te permettra de les modifier à un seul endroit plutôt que de devoir faire le tour de tes flows pour les modifier au risque d’en louper :innocent:

Merci, pour ce qui est du ALL, c’est tout l’intérêt pour moi, je souhaite que la pompe à chaleur se coupe une fois que les températures souhaités dans les chambres soient atteintes. Les deux chambres ne chauffent pas, ni à la même heure (elle se chevauche mais d’une heure uniquement), ni à la même température (mon fils dort dans un lit mezzanine, la chaleur monte donc température plus basse souhaité). Donc le flow coupe dans un premier temps une vannes puis une autre et ce n’est qu’une fois que les deux conditions sont atteintes que le général (la zone nuit de ma PAC) doit être coupé. Pour ce qui est de la variable, je ne connais pas cette méthode, je vais donc de ce pas me renseigner car c’est très intéressant. En tout cas, merci pour ton aide !!!

ok. Donc tu as ta réponse. Le ALL ne fonctionne que si les 2 entrées sont actionnées SIMULTANEMENT (cad en même temps) donc jamais dans ton cas. Tu es bon pour définir un booléen qui bascule lorsque la 1ere vanne se ferme et que tu vérifies (fonction logique) quand la 2nde se ferme pour couper ta pac

1 Like

Merci beaucoup pour ton aide, je pensais que le ALL attendait que toutes les conditions soient remplies, peu importe le temps entre chacune, pour continuer le flow.

Pour moi, les températures sont déjà dans des tags, qui pour moi sont des “variables” des objets (je ne saisi pas la différence entre celles que je crée et celles déjà possibles via les tags)

J’ai donc créé une variable booléen par radiateur (y a peut être plus simple ?) J’ai ensuite défini que lorsqu’un radiateur s’allume, elle soit défini sur OUI puis lorsqu’un radiateur se coupe sur NON. Le tout avec ANY vérifié et ensuite ALL vers la suite du flow. Ca a l’air de fonctionner, encore un grand merci pour ton aide !!!

Ca doit effectivement fonctionner mais il y a plus simple:
Tu peux remplacer ça (pas besoin du ALL ni ANY)


par un truc de ce genre

P.S. Pense à remplacer ton Delay de 300mn (app countdown ou chronograph)qui va te poser des pb. Ne jamais l’utiliser pour plus de qq mn, c’est trop risqué

1 Like

@ricercar Un très grand merci pour ton aide très pédagogique et ta grande connaissance de notre box favorite ! J’adore ajouter un peu plus de connaissance et ainsi revenir sur tous mes flow pour les optimiser (j’ai ajouté variables et countdown partout où je le pensais nécessaire). Bref ça fonctionne à merveille et je comprend un peu plus la logique du système :grin:
Voici la version finale :

1 Like