Donc pour tout ce qui est du texte ‹ dynamique ›, la seule solution est de générer ce texte via un sensor ?
Dommage qu’il n’existe pas une carte texte qui se compose dynamiquement
Je me permet d’ajouter un point de vue entre Sensor et carte Markdown.
Si le but est uniquement d’afficher un texte suivant une valeur dans l’UI, alors il faut passer par la carte Markdown.
Si par contre le texte doit être utilisé dans autre chose (un test, une intégration, etc), là le Sensor a son intérêt !
Pourquoi ce choix ? Et bien la carte Markdown est uniquement un élément d’interface (donc traitée dans le navigateur web ou app mobile) alors que le Sensor est une instance qui sera créé sur le serveur, donc une empreinte et une ressource de plus.
L’objectif : afficher dans HA la plage horaire de filtration de la piscine en cours.
Cette plage horaire qui dépend de la température de l’eau est déterminée par l’intermédiaire d’un contrôleur logique KNX qui écrit une valeur comprise entre 1 et 11 dans une adresse de groupe (GA) ; il y a 10 plages horaires différentes ( le 11 est renvoyé lors de l’arrêt de la filtration).
type: entity
entity: sensor.filtration_profil_en_cours
name: 'Plage horaire de filtration en cours :'
card_mod:
style: |
ha-card{height: 80px !important;}
.header .name{font-size: 15px;}
.info .value{font-size: 15px;}
Fichier configuration.yaml
# KNX
knx: !include_dir_merge_named knx/
# Filtration piscine - affichage plage horaire en cours
- platform: template
sensors:
filtration_profil_en_cours:
unique_id: filtration_profil_en_cours
friendly_name: "Filtration : Profil Horaire Sélectionné"
value_template: >-
{% if is_state('sensor.sensor_horaires_filtration_piscine', '1') %}
De 11h à 16h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '2') %}
De 8h à 16h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '3') %}
De 8h à 17h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '4') %}
De 8h à 18h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '5') %}
De 8h à 19h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '6') %}
De 8h à 20h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '7') %}
De 8h à 22h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '8') %}
De 8h à 23h et de 1h à 3h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '9') %}
De 8h à 23h et de 1h à 5h
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '10') %}
De 8h à 0h et de 0h30 à 7h30
{% elif is_state('sensor.sensor_horaires_filtration_piscine', '11') %}
Filtration à l'arrêt
{% else %}
oups
{% endif %}
Fichier knx_sensor.yaml
#Filtration piscine - chiffre de la plage horaire (1 à11)
- name: sensor.horaires_filtration_piscine
state_address: "2/5/5"
type: "tariff"
sync_state: every 30
J’ai un soucis a peut près similaire a celui ci concernant l’état d’un sensor sur un capteur d’énergie connecté a mon tableau de distribution.
Ce capteur me renvoi via un sensor un “ mot " , il me renvoi « Forward » quand je tire du courant et « Reverse “ quand je renvoie sur le réseau.
Tout cela s’affiche dans une carte élément d’image, mais je souhaiterais afficher s’implement un + quand je tire de l’énergie et un - quand je renvoi sur le réseau.
Pour info je suis débutant sur Home Assistant donc si quelqu’un saurait m’orienté svp.