maj avec codex

This commit is contained in:
2025-12-24 16:21:23 +01:00
parent 5b96063d16
commit 6213f548c5
9 changed files with 729 additions and 110 deletions

499
config/config.yaml.old Executable file
View File

@@ -0,0 +1,499 @@
mqtt:
host: "10.0.0.3"
port: 1883
user: ""
password: ""
topic_prefix: "froling/S3Turbo"
homeassistant:
autodiscovery: True
discovery_prefix: "homeassistant" # Préfixe par défaut pour l'autodiscovery
node_id: "froling" # Remplacer par l'identifiant unique du dispositif
modbus:
host: "10.0.0.12"
port: 502
unit_id: 2
timeout: 30
refresh_rate: 10 # Fréquence d'actualisation en secondes
device:
identifiers: "FrolingS3" # Remplacer par l'identifiant unique du dispositif
manufacturer: "Froling" # Remplacer par le fabricant du dispositif
model: "S3" # Remplacer par le modèle du dispositif
name: "Froling S3" # Remplacer par le nom du dispositif
sw_version: "1.0" # Remplacer par la version du logiciel du dispositif, si applicable
# configuration_url: "http://example.com" # Remplacer par l'URL de configuration ou de documentation du dispositif
# Ajout des paramètres pour l'état de l'installation et l'état de la chaudière
value_maps:
SystemStatus:
0: "Charge continue"
1: "Eau chaude sanitaire"
2: "Automatique"
3: "Fonctionnement au bois de chauffage"
4: "Nettoyage"
5: "Éteint"
6: "Chauffage supplémentaire"
7: "Ramoneur"
8: "Nettoyage2"
FurnaceStatus:
0: "DÉFAUT"
1: "Chaudière éteinte"
2: "Montée en température"
3: "Chauffage"
4: "Maintien du feu"
5: "Feu éteint"
6: "Porte ouverte"
7: "Préparation"
8: "Préchauffage"
9: "Allumage"
10: "Attente d'arrêt"
11: "Attente d'arrêt1"
12: "Arrêt_Alimentation1"
13: "Arrêt_Attente2"
14: "Arrêt_Alimentation2"
15: "Nettoyage"
16: "Attente_2h"
17: "Aspiration_Chauffage"
18: "Défaut_d'allumage"
19: "Prêt_à_l'emploi"
entities:
- name: "Etats systeme"
unique_id: "etats_systeme_sensor"
type: "sensor"
# device_class: "enum"
# state_class: "measurement"
icon: "mdi:radiator"
unit_of_measurement: ""
state_topic: "froling/S3Turbo/ETATS_SYSTEME/state"
value_template: "{{ value_json.etats_systeme_sensor }}"
input_type: "input_register"
address: 34001
offset: 30001
scale: 1
precision: 1
value_map: "SystemStatus"
signed: false
refresh: 1
refresh_unit: "m"
- name: "Etat Chaudiere"
unique_id: "etats_chaudiere_sensor"
type: "sensor"
# device_class: "enum"
# state_class: "measurement"
icon: "mdi:water-boiler-alert"
unit_of_measurement: ""
state_topic: "froling/S3Turbo/ETATS_CHAUDIERE/state"
value_template: "{{ value_json.etats_chaudiere_sensor }}"
input_type: "input_register"
address: 34002
offset: 30001
scale: 1
precision: 0
value_map: "FurnaceStatus"
signed: false
refresh: 1
refresh_unit: "m"
- name: "T° Chaudiere"
unique_id: "temperature_chaudiere_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:hydraulic-oil-temperature"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/TEMPERATURE_CHAUDIERE/state"
value_template: "{{ value_json.temperature_chaudiere_sensor }}"
input_type: "input_register"
address: 30001
offset: 30001
scale: 0.5
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "T° Fumee"
unique_id: "temperature_fumee_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:smoke"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/TEMPERATURE_FUMEE/state"
value_template: "{{ value_json.temperature_fumee_sensor }}"
input_type: "input_register"
address: 30002
offset: 30001
scale: 1
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "T° Board"
unique_id: "temperature_board_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:thermometer-lines"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/TEMPERATURE_BOARD/state"
value_template: "{{ value_json.temperature_board_sensor }}"
input_type: "input_register"
address: 30003
offset: 30001
scale: 0.5
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "O2 residuel"
unique_id: "o2_residuel_sensor"
type: "sensor"
device_class: "battery"
state_class: "measurement"
icon: "mdi:percent"
unit_of_measurement: "%"
state_topic: "froling/S3Turbo/O2_RESIDUEL/state"
value_template: "{{ value_json.o2_residuel_sensor }}"
input_type: "input_register"
address: 30004
offset: 30001
scale: 0.1
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "T° Exterieur"
unique_id: "temp_exterieur_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:home-thermometer-outline"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/TEMP_EXTERIEUR/state"
value_template: "{{ value_json.temp_exterieur_sensor }}"
input_type: "input_register"
address: 30005
offset: 30001
scale: 0.5
precision: 0
value_map: null
signed: true
refresh: 1
refresh_unit: "m"
- name: "Porte chaudiere"
unique_id: "porte_chaudiere_sensor"
type: "binary_sensor"
device_class: "door"
payload_on: "1"
payload_off: "0"
#state_class: "measurement"
icon: "mdi:door-open"
#unit_of_measurement: ""
state_topic: "froling/S3Turbo/PORTE_CHAUDIERE/state"
value_template: "{{ value }}"
input_type: "input_status"
address: 10001
offset: 10001
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "Air primaire"
unique_id: "air_primaire_sensor"
type: "sensor"
device_class: "battery"
state_class: "measurement"
icon: "mdi:air-filter"
unit_of_measurement: "%"
state_topic: "froling/S3Turbo/AIR_PRIMAIRE/state"
value_template: "{{ value_json.air_primaire_sensor }}"
input_type: "input_register"
address: 30006
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "Air Secondaire"
unique_id: "air_secondaire_sensor"
type: "sensor"
device_class: "Battery"
state_class: "measurement"
icon: "mdi:air-filter"
unit_of_measurement: "%"
state_topic: "froling/S3Turbo/AIR_SECONDAIRE/state"
value_template: "{{ value_json.air_secondaire_sensor }}"
input_type: "input_register"
address: 30007
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "Vitesse ventilateur"
unique_id: "vitesse_ventilateur_sensor"
type: "sensor"
# device_class: "None"
state_class: "measurement"
icon: "mdi:air-conditioner"
unit_of_measurement: "RPM"
state_topic: "froling/S3Turbo/VITESSE_VENTILATEUR/state"
value_template: "{{ value_json.vitesse_ventilateur_sensor }}"
input_type: "input_register"
address: 30008
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "Commande tirage"
unique_id: "commande_tirage_sensor"
type: "sensor"
# device_class: "None"
state_class: "measurement"
icon: "mdi:percent-box"
unit_of_measurement: "%"
state_topic: "froling/S3Turbo/COMMANDE_TIRAGE/state"
value_template: "{{ value_json.commande_tirage_sensor }}"
input_type: "input_register"
address: 30016
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "Consigne T° fumée"
unique_id: "consigne_temperature_fumee_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:temperature-celsius"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/CONSIGNE_TEMPERATURE_FUMEE/state"
value_template: "{{ value_json.consigne_temperature_fumee_sensor }}"
input_type: "input_register"
address: 30020
offset: 30001
scale: 1
precision: 0
value_map: null
signed: false
refresh: 1
refresh_unit: "m"
- name: "Consigne T° chauffage"
unique_id: "consigne_temperature_chauffage_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:temperature-celsius"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/CONSIGNE_TEMPERATURE_CHAUFFAGE/state"
value_template: "{{ value_json.consigne_temperature_chauffage_sensor }}"
input_type: "input_register"
address: 30023
offset: 30001
scale: 0.5
precision: 0
value_map: null
signed: false
refresh: 1
refresh_unit: "m"
- name: "Heure fonctionnement"
unique_id: "heure_fonctionnement_sensor"
type: "sensor"
device_class: "duration"
state_class: "total_increasing"
icon: "mdi:clock-time-eight-outline"
unit_of_measurement: "h"
state_topic: "froling/S3Turbo/HEURE FONCTIONNEMENT/state"
value_template: "{{ value_json.heure_fonctionnement_sensor }}"
input_type: "input_register"
address: 30099
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 1
refresh_unit: "m"
- name: "Heure de maintien de feu"
unique_id: "heure_maintien_de_feu_sensor"
type: "sensor"
device_class: "duration"
state_class: "total_increasing"
icon: "mdi:clock-time-eight-outline"
unit_of_measurement: "h"
state_topic: "froling/S3Turbo/HEURE MAINTIEN DE FEU/state"
value_template: "{{ value_json.heure_maintien_de_feu_sensor }}"
input_type: "input_register"
address: 30116
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 1
refresh_unit: "m"
- name: "Heure chauffage"
unique_id: "heure_chauffage_sensor"
type: "sensor"
device_class: "duration"
state_class: "total_increasing"
icon: "mdi:clock-time-eight-outline"
unit_of_measurement: "h"
state_topic: "froling/S3Turbo/HEURE CHAUFFAGE/state"
value_template: "{{ value_json.heure_chauffage_sensor }}"
input_type: "input_register"
address: 30222
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 1
refresh_unit: "m"
- name: "Tampon Haut"
unique_id: "tampon_haut_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:water-boiler"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/TAMPON_HAUT/state"
value_template: "{{ value_json.tampon_haut_sensor }}"
input_type: "input_register"
address: 30119
offset: 30001
scale: 0.5
precision: 0
value_map: null
signed: false
refresh: 1
refresh_unit: "m"
- name: "Tampon Bas"
unique_id: "tampon_bas_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:water-boiler"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/TAMPON_BAS/state"
value_template: "{{ value_json.tampon_bas_sensor }}"
input_type: "input_register"
address: 30121
offset: 30001
scale: 0.5
precision: 0
value_map: null
signed: false
refresh: 1
refresh_unit: "m"
- name: "T° depart chauffage"
unique_id: "temperature_depart_chauffage_sensor"
type: "sensor"
device_class: "temperature"
state_class: "measurement"
icon: "mdi:thermometer"
unit_of_measurement: "°C"
state_topic: "froling/S3Turbo/TEMPERATURE_DEPART_CHAUFFAGE/state"
value_template: "{{ value_json.temperature_depart_chauffage_sensor }}"
input_type: "input_register"
address: 30022
offset: 30001
scale: 0.5
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: "Charge tampon"
unique_id: "charge_tampon_sensor"
type: "sensor"
device_class: "battery"
state_class: "measurement"
icon: "mdi:percent-circle-outline"
unit_of_measurement: "%"
state_topic: "froling/S3Turbo/CHARGE TAMPON/state"
value_template: "{{ value_json.charge_tampon_sensor }}"
input_type: "input_register"
address: 30226
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 1
refresh_unit: "m"
- name: "pompe accumulateur"
unique_id: "pompe_accu"
type: "sensor"
device_class: "battery"
state_class: "measurement"
icon: "mdi:percent-circle-outline"
unit_of_measurement: "%"
state_topic: "froling/S3Turbo/pompe_accu/state"
value_template: "{{ value_json.pompe_accu }}"
input_type: "input_register"
address: 30141
offset: 30001
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
# Digital Outputs
# Function: Read Coil Status (FC=01)
- name: pompe circuit_chauffage
unique_id: "pompe_circuit_chauffage"
type: "binary_sensor"
icon: "mdi:pump"
state_topic: "froling/S3Turbo/pump_chauffage/state"
value_template: "{{ value }}"
input_type: "coil"
address: 0
offset: 0
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: cc_melangeur_ouvert
unique_id: "cc_melangeur_ouvert"
type: "binary_sensor"
icon: "mdi:pipe-valve"
state_topic: "froling/S3Turbo/cc_melangeur_ouvert/state"
value_template: "{{ value }}"
input_type: "coil"
address: 2
offset: 0
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"
- name: cc_melangeur_ferme
unique_id: "cc_melangeur_ferme"
type: "binary_sensor"
icon: "mdi:pipe-valve"
state_topic: "froling/S3Turbo/cc_melangeur_ferme/state"
value_template: "{{ value }}"
input_type: "coil"
address: 3
offset: 0
precision: 0
value_map: null
signed: false
refresh: 10
refresh_unit: "s"