Interface pour entrer dates et heures

Pour l’heure il existe :

Que tu peux styliser :

Mais il n’y a pas de carte pour la sélection de date à moins de passer par input_datetime et son sélectionneur de date :

Merci Clemalex pour les liens
Pour l’instant le passage de ma supervision de Lifedomus à HA se passait bien (mon installation est full KNX) et je ne pensais pas que je bloquerais sur une fonction aussi basique (et très étonné qu’elle n’existe pas).
J’ai l’impression que je dois impérativement monter en compétences HA pour disposer d’une telle interface mais comme souvent c’est le temps qui manque !

J’ai ajouté une entities card :

type: entities
entities:
  - entity: input_datetime.heure_debut_chauffage
  - entity: input_datetime.heure_fin_chauffage
title: Circulateur sèche-serviettes

Ensuite ce code dans automation.yaml

# Heure mise à ON circulateur sèche-serviettes
- id: 'seche_serviette_on'
  alias: Chauffage ON
  trigger:
  - platform: time
    at: input_datetime.heure_debut_chauffage
  action:  
  - service: light.turn_on
    target:
     entity_id: light.bureau_meuble 

# Heure mise à OFF circulateur sèche-serviettes
- id: 'seche_serviette_off'
  alias: Chauffage OFF
  trigger:
  - platform: time
    at: input_datetime.heure_fin_chauffage
  action:  
  - service: light.turn_off
    target:
     entity_id: light.bureau_meuble 

J’ai bien la lampe qui est commandée entre les deux horaires que je saisis dans le dashboard
seche-serviette
mais je souhaiterais que cette automation soit exécutée uniquement entre deux dates saisis par l’utilisateur Je vois bien comment ajouter à lacard deux Entity « Date » mais pour le code ?

J’ai compris qu’il fallait créer un sensor dont la valeur sera impactée par les valeurs input_datetime.date puis le placer en condition dans le code ci-dessus mais un coup de main serait le bienvenu !

1 « J'aime »

Pas disponible ce soir, mais prêt à aider dès que possible.

Il faut aussi revoir ton automatisation de mise en marche et arrêt (en ajoutant un déclencheur et/ou conditions) car si tu as une coupure de courant / reprise, et que l’heure est passée, rien ne se déclenchera… :cold_face: :hot_face:

Dès que tu es dispo, je fais les modifs !

1 « J'aime »

@Argonaute a posté quelque chose qui pourrait t’intéresser peut être :

https://forum.hacf.fr/t/consigne-chauffage-differente-jour-nuit/3927/4?u=clemalex

Comme indiqué plus haut, j’ai testé mais ce n’est pas ce que je souhaite ; je veux une interface ergonomique avec avec un changement des paramètres (dates, heures) intuitif.

Pour résoudre le problème je regarde du côté de Node-Red pour écrire les heures et des dates dans les adresses de groupe d’un contrôleur logique évolué KNX qui gère la commande en fonction des heures et dates transmises par HA…

J’ai pu vérifier le fonctionnement pour les heures en sélectionnant dans Lovelace l’heure actuelle + 1 min mais comment faire pour vérifier que les dates sont bien transmises sans rester devant mon ordinateur à 00h00 (au changement de date) ? J’ai bien pensé à modifier l’heure de HA mais le seul paramètre modifiable dans le menu Configuration générale est la Time zone. Il y aurait une autre solution ?

Hello, j’utiliserai la même logique pour la date que pour l’heure :

Pour vérifier l’heure tu mets l’heure actuelle plus une minute dans ton automatisation pour vérifier que ça marche bien, tu modifies pas l’heure de ton système.

Pour la date pareil : essaie en mettant la date du jour : si ça marche c’est bon, ensuite, essaie en mettant une date qui ne correspond pas à la date du jour dans ta programmation : ça doit ne pas fonctionner.

Comme ça tu verras si la date est prise en compte.

J’ai fait une erreur car dans mon test l’écriture de l’heure dans l’adresse de groupe (en vert) se fait lorsque l’heure locale est égale à l’heure que j’ai entré via Lovelace dans une input_datetime.heure (en rose)
Il faut que je trouve un nœud qui envoie la valeur dans l’adresse de groupe dès qu’elle change dans lovelace ; idem pour la date.

Salut,
j’ai rien compris pour ma part :smiley:
Je comprends pas la différence entre ce que ça fait et ce que tu demandes, j’ai l’impression que c’est pareil ?
Tu veux dire que si tu modifies l’heure dans lovelace plus tard dans la journée ça ne prend pas en compte ta modification ?

Actuellement : lorsque j’entre une heure dans lovelace (dans une input_datetime.heure) elle est stockée dans le noeud Time (rose) et elle est transférée dans l’adresse de groupe KNX (en vert) lorsque l’heure réelle est égale à la valeur de l’heure dans le input_datetime.heure

Ce que je voudrais : dès que j’entre une heure dans Lovelace qu’elle soit transférée dans l’adresse de groupe KNX .

Est-ce plus clair ?

Si on est un peu pointilleux, ce n’est pas exactement ça… Le noeud « time » est exécuté à l’heure et date de ta variable et le payload qui prend cette valeur est envoyé au noeud KNX.

Donc, pour

Il suffit d’utiliser un noeud qui se déclenche quand la variable qui t’intéresse (le input_datetime.heure) change. Et ça, c’est le noeud trigger dans NR qui fait ça.
Le payload sera aussi la valeur de la variable et donc, le noeud KNX recevra cette valeur-là.

Ok je comprends mieux merci !
Du coup j’aurais répondu comme golfvert ^^

Merci pour cette précision qui m’aide à comprendre.

Merci beaucoup ! Je suis très content car j’y ai déjà passé quelques heures ! Je n’avais pas testé le trigger car dans la propriété « State Type », il n’y a que String, Number et Booleen.
Voici le flow


Les propriétés :

et les messages d’erreur dans le debug

Effectivement, ce n’est pas trigger mais events qu’il faut utiliser.
Comme ça, ça doit marcher:

[{"id":"a3cf98ae.3a9028","type":"debug","z":"e65df6a0.5d2a98","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"data.new_state.attributes.timestamp","targetType":"msg","statusVal":"","statusType":"auto","x":640,"y":1520,"wires":[]},{"id":"a3a706c7.c43878","type":"server-state-changed","z":"e65df6a0.5d2a98","name":"","server":"d28c9492.f419c8","version":1,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"input_datetime.test","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"unavailable","halt_if_type":"str","halt_if_compare":"is_not","outputs":2,"output_only_on_state_change":true,"for":0,"forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"x":280,"y":1520,"wires":[["a3cf98ae.3a9028"],[]]},{"id":"d28c9492.f419c8","type":"server","name":"hassio","legacy":false,"addon":false,"rejectUnauthorizedCerts":false,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true}]

Je ne sais pas ce que le noeud KNX veut en entrée… Mais, j’imagine que le timestamp sera plus facile à manipuler. Le debug montre comment y accéder.

Le noeud events fonctionne (dans ce cas je n’ai plus besoin du noeud time)

Il y a toujours des messages d’erreur dans le debug
HA-datetime8

Voici les propriétés du noeud KNX

Dans le noeud event il faut:

Là, je pense que tu as laissé le type string, qui est la valeur par défaut.

Et effectivement, il ne faut plus le noeud time. Il n’est pas fait pour ce que tu veux.

En fait, comme un c–, j’avais copié les noeuds de mon premier test dans un second flow et dans le debug « current node » n’était pas sélectionné !
Maintenant j’ai un beau message dans le debug ! :slightly_smiling_face:
HA-debug
Encore un grand merci pour ton aide très efficiente (pas de bla bla, du concret) :+1:

Bon, pour les heures c’est impeccable mais pour les dates, j’ai :

- créé deux input_datetime.date depuis Configuration / Helpers

- inséré les input_datetime.date dans une Carte Entities

- redémarré HA

Le problème c’est que les input_datetime.date n’apparaissent pas dans le champ de la propriété Entity ID du nœud évènements. Je dois oublier quelque chose ?