Ce capteur virtuel élaboré de mémoire avec l’aide de @WarC0zes permet de récupérer la T° de ma sonde extérieure si celle de Meteo France est défaillante.
Problème, ce capteur n’envoie rien tant que la T° ne bouge pas, alors que mon régulateur Siemens Synco700 demande visiblement un rafraîchissement régulier de la T° extérieure qu’il reçoit (la sonde de toiture envoie une info toutes les 2 minutes et ça fonctionne bien).
Quel code faudrait-il rajouter au Template pour que ce capteur virtuel envoie sur le bus KNX une info toutes les 2 minutes.
Merci pour vos conseils,
patrickp78
J’ai créé mon template dans HA comme une entrée/template/sensor.
Est-ce que je dois mettre le code indiqué dans FileEditor et dans ce cas que devient l’entrée template ?
Salut,
tu ne peux pas créer de trigger template par le UI, c’est quand YAML. Tu dois le faire soit dans ton configuration.yaml ou ton template.yaml si tu as découper la configuration.
Donc je mets le code dans File Editor dans configuration.yaml (je n’ai que deux templates donc pas besoin pour l’instant de dossier spécifique) et je supprime l’entrée, c’est bien ça ?
@armavi le code ne provoque pas un rafraichissement de l’entité toutes les 2 minutes. Peut-être une erreur de syntaxe ?
Si l’on pouvait également le compléter pour qu’il donne une décimale… (4.1°C au lieu de 4°C). J’ai beau relire la page Template de HA et son Formating Sensor States, j’ai toujours des messages d’erreur !
Dans ma réponse, j’ai repris la partie sécurisation en ne rajoutant que le trigger.
Je suis sur de mon trigger, même si on pourrait surement l’améliorer.
Pour la partie sécurisation, il y a des problèmes à mon avis mais qui n’explique pas nécessaire tes ennuis.
Si tu as des messages d’erreur, il faudrait les copier coller.
Par ailleurs il faudrait tester en allant dans la partie développement> modèles et donner les résultats pour :
Merci @WarC0zes !
Du coup, j’ai supprimé le template au-dessus du trigger parce que j’avais déjà celui de la lune au-dessus. C’est bon ?
A checker aussi les deux sensor avec et sans tirets
toute facon ton entité metéo france sensor.rambouillet_temperature est actualisé toutes les heures si je dit pas de bétisse.
tu devrais investir dans un bon capteur de temp.
J’ai déjà un bon capteur de température (Schneider Electric KNX Réf. MTN663991 - mise à jour toutes les 2 min). Le problème n’est pas là. Il est installé trop près de la toiture qui fausse la mesure (actuellement 10.7°c pour 7°C sur Open Meteo*) et difficile à déplacer.
Le but est donc de récupérer Open Meteo local (mise à jour toutes les 15 min) et de l’envoyer sur le KNX, sauf si Open Meteo est défaillant (c’est ce que tu m’avais aidé à mettre en place).
Il faut donc que mon capteur virtuel renvoie une donnée toutes les 2 min maxi sur le bus, même s’il s’agit de la même valeur. nb : pour le moment je fais avec Meteo France et je basculerai ensuite sur l’API d’Open Meteo
Voici, à toutes fins utiles, le code de l’automatisation qui permet d’envoyer toutes les 2 minutes sur le bus KNX la valeur de T° extérieure de Open-Meteo (ou celle de la sonde extérieure KNX en cas de défaillance de Open-Meteo. nb : Open Meteo envoie une valeur toutes les 15 min et/ou quand cette valeur change, mais le régulateur Synco 700 des réseaux de chauffage radiateurs et plancher chauffant perd cette valeur de T° si elle n’est pas rafraîchie régulièrement.
Merci à Chat GPT pour son aide…
id: temp_ext_open_meteo_vers_bus_knx
alias: "KNX - Température extérieure avec secours (Open-Meteo → Sonde Toiture)"
description: "Envoie la température Open-Meteo sur KNX, avec repli sur temp_ext_toiture si indisponible"
mode: single
trigger:
- platform: time_pattern
minutes: "/2"
action:
- choose:
# Cas 1 : Open-Meteo disponible
- conditions:
- condition: template
value_template: >
{{ states('sensor.temp_open_meteo') not in ['unknown', 'unavailable'] }}
sequence:
- service: knx.send
data:
address: "0/0/18"
payload: "{{ states('sensor.temp_open_meteo') | float }}"
type: temperature
# Cas 2 : Open-Meteo indisponible, capteur toiture OK
- conditions:
- condition: template
value_template: >
{{ states('sensor.temp_open_meteo') in ['unknown', 'unavailable'] and
states('sensor.temp_ext_toiture') not in ['unknown', 'unavailable'] }}
sequence:
- service: knx.send
data:
address: "0/0/18"
payload: "{{ states('sensor.temp_ext_toiture') | float }}"
type: temperature