Moin, anliegend möchte ich auf das geniale Projekt BSB-LAN hinweisen:
Mit dem Projekt kann ich meine Broetje Heizung “regeln” und entsprechend visualisieren, bei mir läuft die ESP 32 Variante Handbuch zur BSB-LAN Hard- & Software | Handbuch zur BSB-LAN Hard- & Software (1coderookie.github.io)
[Handbuch zur BSB-LAN Hard- & Software | Handbuch zur BSB-LAN Hard- & Software (1coderookie.github.io)](https://BSB-Lan)
meine Einträge in der configuration.yaml
mqtt:
sensor:
# BSB-LAN
- name: "Gesamte Gasenergie für Heizen und Trinkwasser"
force_update: true
state_topic: "BSB-LAN/8380"
unit_of_measurement: kWh
device_class: energy
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Gesamte Gasenergie für Heizen"
force_update: true
state_topic: "BSB-LAN/8378"
unit_of_measurement: kWh
device_class: energy
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Gesamte Gasenergie für Trinkwasser"
force_update: true
state_topic: "BSB-LAN/8379"
unit_of_measurement: kWh
device_class: energy
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Außentemperatur Heizung"
force_update: true
state_topic: "BSB-LAN/8700"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Außentemperatur Heizung gedämpft"
force_update: true
state_topic: "BSB-LAN/8703"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Trinkwassertemperatur Istwert"
force_update: true
state_topic: "BSB-LAN/8830"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Trinkwassertemperatur-Sollwert aktuell"
force_update: true
state_topic: "BSB-LAN/8831"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Steilheit Heizkreis 1"
force_update: true
state_topic: "BSB-LAN/720"
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Parallelverschiebung Heizkreis 1"
force_update: true
state_topic: "BSB-LAN/721"
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:triangle-wave
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Vorlauftemperatur Istwert Heizkreis 1"
force_update: true
state_topic: "BSB-LAN/8743"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Vorlauftemperatur-Sollwert resultierend HK1"
force_update: true
state_topic: "BSB-LAN/8744"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Kesseltemperatur-Istwert"
force_update: true
state_topic: "BSB-LAN/8310"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Rücklauftemperatur-Istwert Kessel"
force_update: true
state_topic: "BSB-LAN/8314"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Kesseltemperatur-Sollwert"
force_update: true
state_topic: "BSB-LAN/8311"
unit_of_measurement: °C
device_class: temperature
value_template: "{{value | replace('---', '0.0', 1) | float}}"
icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Verbraucher - Wasserdruck"
force_update: true
state_topic: "BSB-LAN/9009"
unit_of_measurement: bar
device_class: pressure
value_template: "{{value | replace('---', '0.0', 1) | float}}"
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Brennermodualtion"
force_update: true
state_topic: "BSB-LAN/8326"
unit_of_measurement: "%"
#device_class: power
value_template: "{{value | replace('---', '0.0', 1) | float}}"
# icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Heizkreispumpe Drehzahl HK1"
force_update: true
state_topic: "BSB-LAN/8735"
unit_of_measurement: "%"
#device_class: power
value_template: "{{value | replace('---', '0.0', 1) | float}}"
# icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
- name: "Gebläsedrehzahl"
force_update: true
state_topic: "BSB-LAN/8323"
unit_of_measurement: "U/min"
#device_class: power
value_template: "{{value | replace('---', '0.0', 1) | float}}"
# icon: mdi:thermometer-chevron-up
qos: 0
availability:
- topic: "BSB-LAN/status"
payload_available: "online"
payload_not_available: "offline"
number:
- name: Komfortsollwert Heizkreis 1
unique_id: bsb_lan_heizkreis1_komfort_sollwert
state_topic: "BSB-LAN/710"
command_topic: "BSB-LAN"
availability_topic: "BSB-LAN/status"
command_template: >
S710={{ value }}
mode: box
min: 16
max: 22
step: 0.5
unit_of_measurement: °C
device_class: temperature
icon: mdi:radiator
- name: Raumtemperatur-Reduziertsollwert Heizkreis 1
#unique_id: bsb_lan_heizkreis1_komfort_sollwert
state_topic: "BSB-LAN/712"
command_topic: "BSB-LAN"
availability_topic: "BSB-LAN/status"
command_template: >
S712={{ value }}
mode: box
min: 16
max: 22
step: 0.5
unit_of_measurement: °C
device_class: temperature
icon: mdi:radiator
- name: Sommer_Wintergrenze Heizkreis 1
unique_id: bsb_lan_heizkreis1_sommer_wintergrenze
state_topic: "BSB-LAN/730"
command_topic: "BSB-LAN"
availability_topic: "BSB-LAN/status"
command_template: >
S730={{ value }}
mode: box
min: 5
max: 22
step: 0.5
unit_of_measurement: °C
device_class: temperature
icon: mdi:radiator
- name: TW_Nennsollwert
unique_id: bsb_lan_tw_nennsollwert
state_topic: "BSB-LAN/1610"
command_topic: "BSB-LAN"
availability_topic: "BSB-LAN/status"
command_template: >
S1610={{ value }}
mode: box
min: 45
max: 65
step: 0.5
unit_of_measurement: °C
device_class: temperature
switch:
- name: "Trinkwasserfreigabe Zeitprogramm"
state_topic: "BSB-LAN/1620"
state_on: "2 - Zeitprogramm 4"
state_off: "0 - 24h/Tag"
command_topic: "BSB-LAN"
payload_on: "S1620=2"
payload_off: "S1620=0"
availability_topic: "BSB-LAN/status"
icon: mdi:water-boiler
- name: "Heizbetrieb Heizkreis 1 (Temporaer)"
# unique_id: 30d66077-1ea6-4c9a-b1a3-6871d1133525
state_topic: "BSB-LAN/700" #Status vom Heizkreis, Achtung eine andere ID als für den eigentlich Befehl, der Status dient lediglich zur Anzeige des Schalters an oder aus
state_on: "114 - Heizbetrieb Komfort" #Status an vom Schalter soll der Zustand "Heizbetrieb Komfort" sein
state_off: "116 - Heizbetrieb Reduziert" # Status aus vom Schalter, soll der Zustand "Heizbetrieb Reduziert" sein
command_topic: "BSB-LAN" #Befehl, hier abweichend vom Status, da der Befehl temporär und der Status über die I 10026 erfolgt, die ID 10110 selbst gibt keine "Rückmeldung", versenden von MQTT nicht möglich
payload_on: "S10110=114"
payload_off: "S10110=0"
availability_topic: "BSB-LAN/status"
icon: mdi:water-boiler
button:
- name: Warmwasser Push
unique_id: bsb_lan_warmwasser_push
availability_topic: "BSB-LAN/status"
command_topic: "BSB-LAN"
payload_press: "S10019=1"
qos: 0
retain: false
select:
# 1600 Trinkwasser - Betriebsart
- name: Trinkwasser - Betriebsart
unique_id: bsb_lan_trinkwasser_betriebsart
state_topic: "BSB-LAN/1600"
command_topic: "BSB-LAN"
availability_topic: "BSB-LAN/status"
value_template: >
{% set mapping = {0: 'Aus', 1: 'Ein',2: 'Eco'} %}
{% set idx = value.split() | first | int %}
{{ mapping[idx] }}
command_template: >
{% set mapping = {'Aus': 0, 'Ein': 1, 'Eco':2} %}
S1600={{ mapping[value] }}
options:
- Aus
- Ein
- Eco
icon: mdi:list-box
- name: Heizkreis 1 Betriebszustand
unique_id: bsb_lan_heizkreis1_betriebszustand
state_topic: "BSB-LAN/700"
command_topic: "BSB-LAN"
availability_topic: "BSB-LAN/status"
# Example value: 1 - Automatik
value_template: >
{% set mapping = {0: 'Schutzbetrieb', 1: 'Automatik', 2: 'Reduziert', 3: 'Komfort'} %}
{% set idx = value.split() | first | int %}
{{ mapping[idx] }}
# Example payload: S700=1
command_template: >
{% set mapping = {'Schutzbetrieb': 0, 'Automatik': 1, 'Reduziert': 2, 'Komfort': 3} %}
S700={{ mapping[value] }}
options:
- Schutzbetrieb
- Automatik
- Reduziert
- Komfort
icon: mdi:list-box
# Wirkung Erzeugersperre:
- name: Wirkung Erzeugersperre
unique_id: bsb_lan_wirkung_erzeugersperre
state_topic: "BSB-LAN/2305"
command_topic: "BSB-LAN"
availability_topic: "BSB-LAN/status"
value_template: >
{% set mapping = {0: 'Keine', 1: 'Nur Heizbetrieb',2: 'Heiz- und Trinkwasserbetrieb'} %}
{% set idx = value.split() | first | int %}
{{ mapping[idx] }}
command_template: >
{% set mapping = {'Keine': 0, 'Nur Heizbetrieb': 1, 'Heiz- und Trinkwasserbetrieb':2} %}
S1600={{ mapping[value] }}
options:
- keine
- Nur Heizbetrieb
- Heiz- und Trinwasserbetrieb
icon: mdi:list-box
text:
- name: "Status Trinkwasser"
mode: "text"
command_topic: "BSB-LAN/10027"
state_topic: "BSB-LAN/10027"
icon: mdi:ab-testing
min: 2
max: 60
- name: "Status Heizkreis 1"
mode: "text"
command_topic: "BSB-LAN/10024"
state_topic: "BSB-LAN/10024"
icon: mdi:ab-testing
min: 2
max: 60
- name: "Heizkreis 1 Schnellabsenkung"
mode: "text"
command_topic: "BSB-LAN/780"
state_topic: "BSB-LAN/780"
icon: mdi:ab-testing
min: 2
max: 60





