Bonjour à tous,
J’ai actuellement des sensors météo qui fonctionnent en 433 Mhz avec un dongle sdr et les modules complémentaires rtl_433 (next) & rtl_433 MQTT Auto Discovery (next), le problème que je rencontre c’est comment je peux continuer à recevoir des datas via mqtt sans le module complémentaire rtl_433 MQTT Auto Discovery (next) , car « je récupère » l’ensemble des sensors autour de moi .faut-il définir en manuel chaque sensors qui m’intéresse dans un fichier yaml ?
comment faites vous ?
Cela dépend surtout avec quoi tu les récupère maintenant !
MQTT avec auto-discovery ?
Attention au écritures en couleur suivant fond
Oui toujours avec rtl_433 MQTT Auto Discovery (next) , si je stoppe le service d’Auto Discovery plus de valeurs qui remonte dans HA
Normal il te fait le message de définition pour MQTT !
Il te faut regarder ce qui remonte dans MQTT, si tu arrêtes l’auto Discovery !
Récupérer le Topic et le décoder !
Celui qui est surligné , si tu vas à droite tu as son Topic, copier si appuie !
rtl_433/9b13b3f4-rtl433/devices/Bresser-6in1/2/589300510/temperature_C
Ok, et donc dans mqtt je dois mettre en écoute le / les topic qui m’intéresse ?
tu peux passer par MQTT dans HA
Tu verras les topic, il faut cerner ceux que tu veux !
Si je mets
rtl_433/9b13b3f4-rtl433/devices/Bresser-6in1/2/589300510
il faut surtout regarder si le format est OK !
Puis dans un template, tu vas chercher le topic!
C’est pour cela qu’il a fait l’auto Discovery
Mais c’est assez rapide suivant les sensors que tu veux, c’est de la copie !
tu aurais un exemple de syntax pour le template ? j’ai dans mon fichier config.yaml
mqtt: !include mqtt.yaml
sensor: !include sensors.yaml
sensor ou mqtt ?
Tu peux faire un
mqtt:
sensor: !include mqtt.yaml
sera plus facile pour t’y retrouver !
Il faut créé le fichier ensuite mqtt.yaml dans /homeassistant/mqtt.yaml
et dedans un truc du type
- state_topic: "rtl_433/9b13b3f4-rtl433/events"
name: "Mise à jour info rtl"
unique_id: sensor.mise_a_jour_info_rtl
value_template: "{{ as_timestamp(value_json.time) | timestamp_custom('%d/%m/%Y %T', 1) }}"
- state_topic: "rtl_433/9b13b3f4-rtl433/states"
name: "Fréquence en cours"
unique_id: sensor.frequence_en_cours
value_template: "{{value_json.center_frequency}}"
- state_topic: "rtl_433/9b13b3f4-rtl433/states"
name: "Changement Fréquence "
unique_id: sensor.changement_frequence
value_template: "{{value_json.hop_times}}"
Exemple Pour MyElectriCaldata avec définition des classes !
- state_topic: "myelectricaldata/1234567891011/consumption/annual/2024/thisMonth/hc/Wh"
name: "HC mois en cours"
unique_id: sensor.hc_mois_en_cours
unit_of_measurement: Wh
device_class: energy
state_class: total
- state_topic: "myelectricaldata/1234567891011/consumption/annual/2024/thisMonth/hp/Wh"
name: "HP mois en cours"
unique_id: sensor.hp_mois_en_cours
unit_of_measurement: Wh
device_class: energy
state_class: total
Tu peux t’en servir, il faut ajouter ce que tu veux, voir exemple au dessus !
Merci avec ton exemple je pense m’en sortir . dans mon exemple je récupére une tension de ma tesla mais la valeur à vide est incorrecte (2 volts), je voudrais transformer cette valeur via un template une valeur à 0 mais je bute avec la syntaxe
tu fais un test sur la valeur si = x Volts , toi 2, tu transformes en 0 !
oui mais je m’en sors pas …