- split up esphome yaml file into muliple pieces for better overview (packages)
- switched to ESP32 board (esp8266 reached OOM) - added few new entities - added Graphical Dashboard "Heizkörper"
This commit is contained in:
207
ESPHome/froeling.yaml
Normal file
207
ESPHome/froeling.yaml
Normal file
@@ -0,0 +1,207 @@
|
|||||||
|
esphome:
|
||||||
|
name: froeling
|
||||||
|
|
||||||
|
esp32:
|
||||||
|
board: wemos_d1_mini32
|
||||||
|
|
||||||
|
# Enable logging
|
||||||
|
logger:
|
||||||
|
baud_rate: 0
|
||||||
|
level: INFO
|
||||||
|
|
||||||
|
# Enable Home Assistant API
|
||||||
|
api:
|
||||||
|
encryption:
|
||||||
|
key: ""
|
||||||
|
|
||||||
|
ota:
|
||||||
|
password: ""
|
||||||
|
|
||||||
|
wifi:
|
||||||
|
ssid: !secret wifi_ssid
|
||||||
|
password: !secret wifi_password
|
||||||
|
|
||||||
|
web_server:
|
||||||
|
port: 80
|
||||||
|
|
||||||
|
substitutions:
|
||||||
|
name: froeling
|
||||||
|
modbus_controller_id: froeling
|
||||||
|
|
||||||
|
uart:
|
||||||
|
- id: uartfroeling
|
||||||
|
|
||||||
|
tx_pin: 1
|
||||||
|
rx_pin: 3
|
||||||
|
baud_rate: 57600
|
||||||
|
data_bits: 8
|
||||||
|
stop_bits: 1
|
||||||
|
parity: NONE
|
||||||
|
|
||||||
|
modbus:
|
||||||
|
id: modbus1
|
||||||
|
uart_id: uartfroeling
|
||||||
|
|
||||||
|
modbus_controller:
|
||||||
|
- id: froeling
|
||||||
|
address: 2
|
||||||
|
modbus_id: modbus1
|
||||||
|
setup_priority: -10
|
||||||
|
update_interval: "60s"
|
||||||
|
command_throttle: "50ms"
|
||||||
|
|
||||||
|
switch:
|
||||||
|
- platform: restart
|
||||||
|
name: "Restart ESP"
|
||||||
|
|
||||||
|
packages:
|
||||||
|
austragung: !include froeling/austragung.yaml
|
||||||
|
boiler_01: !include froeling/boiler_01.yaml
|
||||||
|
heizkoerper: !include froeling/heizkoerper.yaml
|
||||||
|
kessel: !include froeling/kessel.yaml
|
||||||
|
puffer_01: !include froeling/puffer_01.yaml
|
||||||
|
zirkulationspumpe: !include froeling/zirkulationspumpe.yaml
|
||||||
|
|
||||||
|
number:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Bei welcher RL Temperatur an der Zirkulationsleitung soll die Pumpe ausschalten"
|
||||||
|
id: ${name}_Bei_welcher_RL_Temperatur_an_der_Zirkulationsleitung_soll_die_Pumpe_ausschalten
|
||||||
|
address: 600
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: 20
|
||||||
|
max_value: 120
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Kessel-Solltemperatur"
|
||||||
|
id: ${name}_Kessel_Solltemperatur
|
||||||
|
address: 0
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: 70
|
||||||
|
max_value: 90
|
||||||
|
|
||||||
|
text_sensor:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Anlagenzustand"
|
||||||
|
id: ${name}_Anlagenzustand
|
||||||
|
register_type: read
|
||||||
|
address: 4000
|
||||||
|
raw_encode: HEXBYTES
|
||||||
|
lambda: |-
|
||||||
|
uint16_t value = modbus_controller::word_from_hex_str(x, 0);
|
||||||
|
switch (value) {
|
||||||
|
case 0: return std::string("Dauerlast");
|
||||||
|
case 1: return std::string("Brauchwasser");
|
||||||
|
case 2: return std::string("Automatik");
|
||||||
|
case 3: return std::string("Scheitholzbetrieb");
|
||||||
|
case 4: return std::string("Reinigen");
|
||||||
|
case 5: return std::string("Ausgeschaltet");
|
||||||
|
case 6: return std::string("Extraheizen");
|
||||||
|
case 7: return std::string("Kaminkehrer");
|
||||||
|
case 8: return std::string("Reinigen");
|
||||||
|
default: return std::string("----");
|
||||||
|
}
|
||||||
|
return x;
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Kesselzustand"
|
||||||
|
id: ${name}_Kesselzustand
|
||||||
|
register_type: read
|
||||||
|
address: 4001
|
||||||
|
raw_encode: HEXBYTES
|
||||||
|
lambda: |-
|
||||||
|
uint16_t value = modbus_controller::word_from_hex_str(x, 0);
|
||||||
|
switch (value) {
|
||||||
|
case 0: return std::string("STÖRUNG");
|
||||||
|
case 1: return std::string("Kessel Aus");
|
||||||
|
case 2: return std::string("Anheizen");
|
||||||
|
case 3: return std::string("Heizen");
|
||||||
|
case 4: return std::string("Feuererhaltung");
|
||||||
|
case 5: return std::string("Feuer Aus");
|
||||||
|
case 6: return std::string("Tür offen");
|
||||||
|
case 7: return std::string("Vorbereitung");
|
||||||
|
case 8: return std::string("Vorwärmen");
|
||||||
|
case 9: return std::string("Zünden");
|
||||||
|
case 10: return std::string("Abstellen Warten");
|
||||||
|
case 11: return std::string("Abstellen Warten1");
|
||||||
|
case 12: return std::string("Abstellen Einschub1");
|
||||||
|
case 13: return std::string("Abstellen Warten2");
|
||||||
|
case 14: return std::string("Abstellen Einschub2");
|
||||||
|
case 15: return std::string("Abreinigen");
|
||||||
|
case 16: return std::string("2h warten");
|
||||||
|
case 17: return std::string("Saugen / Heizen");
|
||||||
|
case 18: return std::string("Fehlzündung");
|
||||||
|
case 19: return std::string("Betriebsbereit");
|
||||||
|
case 20: return std::string("Rost schließen");
|
||||||
|
case 21: return std::string("Stoker leeren");
|
||||||
|
case 22: return std::string("Vorheizen");
|
||||||
|
case 23: return std::string("Saugen");
|
||||||
|
case 24: return std::string("RSE schließen");
|
||||||
|
case 25: return std::string("RSE öffnen");
|
||||||
|
case 26: return std::string("Rost kippen");
|
||||||
|
case 27: return std::string("Vorwärmen-Zünden");
|
||||||
|
case 28: return std::string("Resteinschub");
|
||||||
|
case 29: return std::string("Stoker auffüllen");
|
||||||
|
case 30: return std::string("Lambdasonde aufheizen");
|
||||||
|
case 31: return std::string("Gebläsenachlauf I");
|
||||||
|
case 32: return std::string("Gebläsenachlauf II");
|
||||||
|
case 33: return std::string("Abgestellt");
|
||||||
|
case 34: return std::string("Nachzünden");
|
||||||
|
case 35: return std::string("Zünden Warten");
|
||||||
|
case 36: return std::string("FB: RSE schließen");
|
||||||
|
case 37: return std::string("FB: Kessel belüften");
|
||||||
|
case 38: return std::string("FB: Zünden");
|
||||||
|
case 39: return std::string("FB: min. Einschub");
|
||||||
|
case 40: return std::string("RSE schließen");
|
||||||
|
case 41: return std::string("STÖRUNG: STB/NA");
|
||||||
|
case 42: return std::string("STÖRUNG: Kipprost");
|
||||||
|
case 43: return std::string("STÖRUNG: FR-Überdr.");
|
||||||
|
case 44: return std::string("STÖRUNG: Türkont.");
|
||||||
|
case 45: return std::string("STÖRUNG: Saugzug");
|
||||||
|
case 46: return std::string("STÖRUNG: Umfeld");
|
||||||
|
case 47: return std::string("FEHLER: STB/NA");
|
||||||
|
case 48: return std::string("FEHLER: Kipprost");
|
||||||
|
case 49: return std::string("FEHLER: FR-Überdr.");
|
||||||
|
case 50: return std::string("FEHLER: Türkont.");
|
||||||
|
case 51: return std::string("FEHLER: Saugzug");
|
||||||
|
case 52: return std::string("FEHLER: Umfeld");
|
||||||
|
case 53: return std::string("FEHLER: Stoker");
|
||||||
|
case 54: return std::string("STÖRUNG: Stoker");
|
||||||
|
case 55: return std::string("FB: Stoker leeren");
|
||||||
|
case 56: return std::string("Vorbelüften");
|
||||||
|
case 57: return std::string("STÖRUNG: Hackgut");
|
||||||
|
case 58: return std::string("FEHLER: Hackgut");
|
||||||
|
case 59: return std::string("NB: Tür offen");
|
||||||
|
case 60: return std::string("NB: Anheizen");
|
||||||
|
case 61: return std::string("NB: Heizen");
|
||||||
|
case 62: return std::string("FEHLER: STB/NA");
|
||||||
|
case 63: return std::string("FEHLER: Allgemein");
|
||||||
|
case 64: return std::string("NB: Feuer Aus");
|
||||||
|
case 65: return std::string("Selbsttest aktiv");
|
||||||
|
case 66: return std::string("Fehlerbeh. 20min");
|
||||||
|
case 67: return std::string("FEHLER: Fallschacht");
|
||||||
|
case 68: return std::string("STÖRUNG: Fallschacht");
|
||||||
|
case 69: return std::string("Reinigen möglich");
|
||||||
|
case 70: return std::string("Heizen - Reinigen");
|
||||||
|
case 71: return std::string("SH Anheizen");
|
||||||
|
case 72: return std::string("SH Heizen");
|
||||||
|
case 73: return std::string("SH Heiz/Abstell");
|
||||||
|
case 74: return std::string("STÖRUNG sicher");
|
||||||
|
case 75: return std::string("AGR Nachlauf");
|
||||||
|
case 76: return std::string("AGR reinigen");
|
||||||
|
case 77: return std::string("Zündung AUS");
|
||||||
|
case 78: return std::string("Filter reinigen");
|
||||||
|
case 79: return std::string("Anheizassistent");
|
||||||
|
case 80: return std::string("SH Zünden");
|
||||||
|
case 81: return std::string("SH Störung");
|
||||||
|
case 82: return std::string("Sensorcheck");
|
||||||
|
default: return std::string("----");
|
||||||
|
}
|
||||||
|
return x;
|
||||||
54
ESPHome/froeling/austragung.yaml
Normal file
54
ESPHome/froeling/austragung.yaml
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
sensor:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Fuellstand im Pelletsbehaelter"
|
||||||
|
id: ${name}_Fuellstand_im_Pelletsbehaelter
|
||||||
|
register_type: read
|
||||||
|
address: 21
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
accuracy_decimals: 1
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.0048309178743961
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Resetierbarer kg-Zaehler"
|
||||||
|
id: ${name}_Resetierbarer_kg_Zaehler
|
||||||
|
register_type: read
|
||||||
|
address: 81
|
||||||
|
unit_of_measurement: "kg"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Resetierbarer t-Zaehler"
|
||||||
|
id: ${name}_Resetierbarer_t_Zaehler
|
||||||
|
register_type: read
|
||||||
|
address: 82
|
||||||
|
unit_of_measurement: "t"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Pelletverbrauch Gesamt"
|
||||||
|
id: ${name}_Pelletverbrauch_Gesamt
|
||||||
|
register_type: read
|
||||||
|
address: 83
|
||||||
|
unit_of_measurement: "t"
|
||||||
|
accuracy_decimals: 1
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.1
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Pelletlager Restbestand"
|
||||||
|
id: ${name}_Pelletlager_Restbestand
|
||||||
|
register_type: holding
|
||||||
|
address: 319
|
||||||
|
unit_of_measurement: "t"
|
||||||
|
accuracy_decimals: 1
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.1
|
||||||
43
ESPHome/froeling/boiler_01.yaml
Normal file
43
ESPHome/froeling/boiler_01.yaml
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
sensor:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Boiler 1 Temperatur oben"
|
||||||
|
id: ${name}_Boiler_1_Temperatur_oben
|
||||||
|
register_type: read
|
||||||
|
address: 1630
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Boiler 1 Pumpe Ansteuerung"
|
||||||
|
id: ${name}_Boiler_1_Pumpe_Ansteuerung
|
||||||
|
register_type: read
|
||||||
|
address: 1632
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
number:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Boiler 1 Gewünschte Boilertemperatur"
|
||||||
|
id: ${name}_Boiler_1_Gewuenschte_Boilertemperatur
|
||||||
|
address: 1631
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: 10
|
||||||
|
max_value: 100
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Boiler 1 Nachladen, wenn Boilertemperatur unter"
|
||||||
|
id: ${name}_Boiler_1_Nachladen_wenn_Boilertemperatur_unter
|
||||||
|
address: 1632
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: 1
|
||||||
|
max_value: 90
|
||||||
134
ESPHome/froeling/heizkoerper.yaml
Normal file
134
ESPHome/froeling/heizkoerper.yaml
Normal file
@@ -0,0 +1,134 @@
|
|||||||
|
sensor:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Vorlauf-Isttemperatur"
|
||||||
|
id: ${name}_HK1_Vorlauf_Isttemperatur
|
||||||
|
register_type: read
|
||||||
|
address: 1030 #Wrong ?
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Vorlauf-Solltemperatur"
|
||||||
|
id: ${name}_HK1_Vorlauf_Solltemperatur
|
||||||
|
register_type: read
|
||||||
|
address: 1031 #Wrong ?
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Aussentemperatur"
|
||||||
|
id: ${name}_Aussentemperatur
|
||||||
|
register_type: read
|
||||||
|
address: 1000
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
binary_sensor:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Pumpe AN AUS"
|
||||||
|
id: ${name}_HK1_Pumpe_AN_AUS
|
||||||
|
register_type: coil
|
||||||
|
#address: 999 # Heizkreispumpe 0
|
||||||
|
address: 1029 # Heizkreispumpe 1 - wrong ?
|
||||||
|
|
||||||
|
number:
|
||||||
|
# not correct yet ?
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Gewünschte Vorlauf-temperatur bei -10°C Außentemperatur"
|
||||||
|
id: ${name}_HK1_Vorlauf_Temperatur_minus_10C_Aussentemperatur
|
||||||
|
address: 1032
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: 10
|
||||||
|
max_value: 110
|
||||||
|
|
||||||
|
# not correct yet ?
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Gewünschte Vorlauf-temperatur bei +10°C Außentemperatur"
|
||||||
|
id: ${name}_HK1_Vorlauf_Temperatur_10C_Aussentemperatur
|
||||||
|
address: 1031
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: 10
|
||||||
|
max_value: 110
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Heizkreispumpe ausschalten wenn Vorlauf Soll kleiner ist als"
|
||||||
|
id: ${name}_HK1_Heizkreispumpe_ausschalten_wenn_Vorlauf_Soll_kleiner_ist_als
|
||||||
|
address: 1039
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: 10
|
||||||
|
max_value: 30
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Absenkung der Vorlauftemperatur im Absenkbetrieb"
|
||||||
|
id: ${name}_HK1_Absenkung_der_Vorlauftemperatur_im_Absenkbetrieb
|
||||||
|
address: 1033
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: 0
|
||||||
|
max_value: 70
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Außentemperatur, unter der die Heizkreispumpe im Heizbetrieb
|
||||||
|
einschaltet"
|
||||||
|
id: ${name}_HK1_Aussentemperatur_unter_der_die_Heizkreispumpe_im_Heizbetrieb_einschaltet
|
||||||
|
address: 1036
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: -20
|
||||||
|
max_value: 50
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Außentemperatur, unter der die Heizkreispumpe im Absenkbetrieb
|
||||||
|
einschaltet"
|
||||||
|
id: ${name}_HK1_Aussentemperatur_unter_der_die_Heizkreispumpe_im_Absenkbetrieb_einschaltet
|
||||||
|
address: 1037
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: -20
|
||||||
|
max_value: 50
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Frostschutztemperatur"
|
||||||
|
id: ${name}_HK1_Frostschutztemperatur
|
||||||
|
address: 1038
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
multiply: 2
|
||||||
|
min_value: -10
|
||||||
|
max_value: 20
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} HK1 - Temp. am Puffer oben ab der der Überhitzungsschutz aktiv wird"
|
||||||
|
id: ${name}_HK1_Temp_am_Puffer_oben_ab_der_der_Ueberhitzungsschutz_aktiv_wird
|
||||||
|
address: 1047
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
min_value: 60
|
||||||
|
max_value: 120
|
||||||
135
ESPHome/froeling/kessel.yaml
Normal file
135
ESPHome/froeling/kessel.yaml
Normal file
@@ -0,0 +1,135 @@
|
|||||||
|
sensor:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Kesseltemperatur"
|
||||||
|
id: ${name}_Kesseltemperatur
|
||||||
|
register_type: read
|
||||||
|
address: 0
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Abgastemperatur"
|
||||||
|
id: ${name}_Abgastemperatur
|
||||||
|
register_type: read
|
||||||
|
address: 1
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Verbleibende Heizstunden bis zur Asche entleeren Warnung"
|
||||||
|
id: ${name}_Verbleibende_Heizstunden_bis_zur_Asche_entleeren_Warnung
|
||||||
|
register_type: read
|
||||||
|
address: 86
|
||||||
|
unit_of_measurement: "h"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Saugzug - Ansteuerung"
|
||||||
|
id: ${name}_Saugzug_Ansteuerung
|
||||||
|
register_type: read
|
||||||
|
address: 12
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Saugzugdrehzahl"
|
||||||
|
id: ${name}_Saugzugdrehzahl
|
||||||
|
register_type: read
|
||||||
|
address: 6
|
||||||
|
unit_of_measurement: "rpm"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Sauerstoffregler"
|
||||||
|
id: ${name}_Sauerstoffregler
|
||||||
|
register_type: read
|
||||||
|
address: 16
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Restsauerstoffgehalt"
|
||||||
|
id: ${name}_Restsauerstoffgehalt
|
||||||
|
register_type: read
|
||||||
|
address: 3
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
accuracy_decimals: 1
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.1
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Rücklauffühler"
|
||||||
|
id: ${name}_Ruecklauffuehler
|
||||||
|
register_type: read
|
||||||
|
address: 9
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Primärluft"
|
||||||
|
id: ${name}_Primaerluft
|
||||||
|
register_type: read
|
||||||
|
address: 11
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Sekundärluft"
|
||||||
|
id: ${name}_Sekundaerluft
|
||||||
|
register_type: read
|
||||||
|
address: 13
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Betriebsstunden"
|
||||||
|
id: ${name}_Betriebsstunden
|
||||||
|
register_type: read
|
||||||
|
address: 20
|
||||||
|
unit_of_measurement: "h"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Stunden seit letzter Wartung"
|
||||||
|
id: ${name}_Stunden_seit_letzter_Wartung
|
||||||
|
register_type: read
|
||||||
|
address: 55
|
||||||
|
unit_of_measurement: "h"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Betriebsstunden in der Feuererhaltung"
|
||||||
|
id: ${name}_Betriebsstunden_in_der_Feuererhaltung
|
||||||
|
register_type: read
|
||||||
|
address: 24
|
||||||
|
unit_of_measurement: "h"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
binary_sensor:
|
||||||
|
- platform: template
|
||||||
|
name: "${name} Kesselzustand Heizen"
|
||||||
|
id: ${name}_Kesselzustand_Heizen
|
||||||
|
lambda: |-
|
||||||
|
if (id(${name}_Kesselzustand).state == "Heizen") {
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
62
ESPHome/froeling/puffer_01.yaml
Normal file
62
ESPHome/froeling/puffer_01.yaml
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
sensor:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Puffer 1 Temperatur oben"
|
||||||
|
id: ${name}_Puffer_1_Temperatur_oben
|
||||||
|
register_type: read
|
||||||
|
address: 2000
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Puffer 1 Temperatur mitte"
|
||||||
|
id: ${name}_Puffer_1_Temperatur_mitte
|
||||||
|
register_type: read
|
||||||
|
address: 2001
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Puffer 1 Temperatur unten"
|
||||||
|
id: ${name}_Puffer_1_Temperatur_unten
|
||||||
|
register_type: read
|
||||||
|
address: 2002
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Puffer 1 Ladezustand"
|
||||||
|
id: ${name}_Puffer_1_Ladezustand
|
||||||
|
register_type: read
|
||||||
|
address: 2006
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Puffer 1 Pufferpumpen Ansteuerung"
|
||||||
|
id: ${name}_Puffer_1_Pufferpumpen_Ansteuerung
|
||||||
|
register_type: read
|
||||||
|
address: 2003
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
binary_sensor:
|
||||||
|
- platform: template
|
||||||
|
name: "${name} Puffer 1 Pufferpumpen Ansteuerung AN AUS"
|
||||||
|
id: ${name}_Puffer_1_Pufferpumpen_Ansteuerung_AN_AUS
|
||||||
|
lambda: |-
|
||||||
|
if (id(${name}_Puffer_1_Pufferpumpen_Ansteuerung).state > 0) {
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
28
ESPHome/froeling/zirkulationspumpe.yaml
Normal file
28
ESPHome/froeling/zirkulationspumpe.yaml
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
sensor:
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Ruecklauftemperatur an der Zirkulations Leitung"
|
||||||
|
id: ${name}_Ruecklauftemperatur_an_der_Zirkulations_Leitung
|
||||||
|
register_type: read
|
||||||
|
address: 711
|
||||||
|
unit_of_measurement: "°C"
|
||||||
|
value_type: U_WORD
|
||||||
|
filters:
|
||||||
|
- multiply: 0.5
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Strömungsschalter an der Brauchwasser Leitung"
|
||||||
|
id: ${name}_Stoemungsschalter_an_der_Brauchwasser_Leitung
|
||||||
|
register_type: read
|
||||||
|
address: 600
|
||||||
|
value_type: U_WORD
|
||||||
|
|
||||||
|
- platform: modbus_controller
|
||||||
|
modbus_controller_id: ${modbus_controller_id}
|
||||||
|
name: "${name} Drehzahl der Zirkulations Pumpe"
|
||||||
|
id: ${name}_Drehzahl_der_Zirkulations_Pumpe
|
||||||
|
register_type: read
|
||||||
|
address: 710
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
value_type: U_WORD
|
||||||
15
README.md
15
README.md
@@ -2,20 +2,20 @@
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
### ESHome RS232 to TTL - ESP8266 - Read data from Froeling / Lambdatronic 3200
|
### ESHome RS232 to TTL - ESP32 - Read data from Froeling / Lambdatronic 3200
|
||||||
|
|
||||||
I'm testing this with my Fröling SP Dual. But I assume it should also work for other models that have the Lambdatronic 3200 control unit. Feedback appreciated.
|
I'm testing this with my Fröling SP Dual. But I assume it should also work for other models that have the Lambdatronic 3200 control unit. Feedback appreciated.
|
||||||
|
|
||||||
#### Parts:
|
#### Parts:
|
||||||
Wemos D1 Mini ESP8266:
|
Wemos D1 Mini ESP32:
|
||||||
https://www.amazon.de/dp/product/B0CB85Q78G
|
https://www.amazon.de/dp/product/B08BTRQNB3
|
||||||
|
|
||||||
MAX3232 DB9 RS232 TTL converter:
|
MAX3232 DB9 RS232 TTL converter:
|
||||||
https://www.amazon.de/gp/product/B0BNQ41QKQ
|
https://www.amazon.de/gp/product/B0BNQ41QKQ
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
| Wemos | D7 | D8 | 5V | G |
|
| Wemos | TX | RX | 5V | G |
|
||||||
|---|---|---|---|---|
|
|---|---|---|---|---|
|
||||||
| MAX3232 | RX | TX | VCC | GND |
|
| MAX3232 | RX | TX | VCC | GND |
|
||||||
|
|
||||||
@@ -34,4 +34,9 @@ Connect a RS232 (DB9) cable between "MAX3232 DB9 RS232 TTL converter" and you bo
|
|||||||
- https://experiencelovelace.github.io/ha-floorplan/
|
- https://experiencelovelace.github.io/ha-floorplan/
|
||||||
- copy all files from /ha_dashboard/* to your Home assistant instance /config/www/froeling/*
|
- copy all files from /ha_dashboard/* to your Home assistant instance /config/www/froeling/*
|
||||||
- create a card in your dashboard and add the content of "ha_dashboard.yaml"
|
- create a card in your dashboard and add the content of "ha_dashboard.yaml"
|
||||||
<span style="color:red">!! Currently, only one Panel is provided!!</span> I'm working on the rest. An update will follow.
|
<span style="color:red">!! Currently, only two panels are provided!!</span> I'm working on the rest. An update will follow.
|
||||||
|
|
||||||
|
#### ESPHome
|
||||||
|
For an better overview I've splittet up the yaml file into multiple pieces and included them in the main file as a package.
|
||||||
|
|
||||||
|
Copy all files from ESPHome/* into you ESPHome config directory and just flash the froeling.yaml. - All other files will be included.
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 798 KiB After Width: | Height: | Size: 1.1 MiB |
503
froeling.yaml
503
froeling.yaml
@@ -1,503 +0,0 @@
|
|||||||
esphome:
|
|
||||||
name: froeling
|
|
||||||
friendly_name: froeling
|
|
||||||
|
|
||||||
esp8266:
|
|
||||||
board: d1_mini
|
|
||||||
|
|
||||||
# Enable logging
|
|
||||||
logger:
|
|
||||||
level: INFO
|
|
||||||
|
|
||||||
# Enable Home Assistant API
|
|
||||||
api:
|
|
||||||
encryption:
|
|
||||||
key: ""
|
|
||||||
|
|
||||||
ota:
|
|
||||||
password: ""
|
|
||||||
|
|
||||||
wifi:
|
|
||||||
ssid: !secret wifi_ssid
|
|
||||||
password: !secret wifi_password
|
|
||||||
|
|
||||||
web_server:
|
|
||||||
port: 80
|
|
||||||
|
|
||||||
substitutions:
|
|
||||||
name: froeling
|
|
||||||
modbus_controller_id: froeling
|
|
||||||
|
|
||||||
uart:
|
|
||||||
- id: uartfroeling
|
|
||||||
tx_pin: 15
|
|
||||||
rx_pin: 13
|
|
||||||
baud_rate: 57600
|
|
||||||
data_bits: 8
|
|
||||||
stop_bits: 1
|
|
||||||
parity: NONE
|
|
||||||
|
|
||||||
modbus:
|
|
||||||
id: modbus1
|
|
||||||
uart_id: uartfroeling
|
|
||||||
|
|
||||||
modbus_controller:
|
|
||||||
- id: froeling
|
|
||||||
address: 2
|
|
||||||
modbus_id: modbus1
|
|
||||||
setup_priority: -10
|
|
||||||
update_interval: "15s"
|
|
||||||
command_throttle: "50ms"
|
|
||||||
|
|
||||||
switch:
|
|
||||||
- platform: restart
|
|
||||||
name: "Restart $friendly_name"
|
|
||||||
|
|
||||||
sensor:
|
|
||||||
##### Kessel #####
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Kesseltemperatur"
|
|
||||||
id: Kesseltemperatur
|
|
||||||
register_type: read
|
|
||||||
address: 0
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Abgastemperatur"
|
|
||||||
id: Abgastemperatur
|
|
||||||
register_type: read
|
|
||||||
address: 1
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Verbleibende Heizstunden bis zur Asche entleeren Warnung"
|
|
||||||
id: Verbleibende_Heizstunden_bis_zur_Asche_entleeren_Warnung
|
|
||||||
register_type: read
|
|
||||||
address: 86
|
|
||||||
unit_of_measurement: "h"
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Saugzug - Ansteuerung"
|
|
||||||
id: Saugzug_Ansteuerung
|
|
||||||
register_type: read
|
|
||||||
address: 12
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Restsauerstoffgehalt"
|
|
||||||
id: Restsauerstoffgehalt
|
|
||||||
register_type: read
|
|
||||||
address: 3
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.1
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Rücklauffühler"
|
|
||||||
id: Ruecklauffuehler
|
|
||||||
register_type: read
|
|
||||||
address: 9
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Primärluft"
|
|
||||||
id: Primaerluft
|
|
||||||
register_type: read
|
|
||||||
address: 11
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Sekundärluft"
|
|
||||||
id: Sekundaerluft
|
|
||||||
register_type: read
|
|
||||||
address: 13
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
#### Heizkörper HK1 #####
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "HK1 - Vorlauf-Isttemperatur"
|
|
||||||
id: HK1_Vorlauf_Isttemperatur
|
|
||||||
register_type: read
|
|
||||||
address: 1030
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
# - platform: modbus_controller
|
|
||||||
# modbus_controller_id: ${modbus_controller_id}
|
|
||||||
# name: "HK1 - Vorlauf-Solltemperatur"
|
|
||||||
# id: HK1_Vorlauf_Solltemperatur
|
|
||||||
# register_type: read
|
|
||||||
# address: 1031
|
|
||||||
# unit_of_measurement: "°C"
|
|
||||||
# value_type: U_WORD
|
|
||||||
# filters:
|
|
||||||
# - multiply: 0.5
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Aussentemperatur"
|
|
||||||
id: Aussentemperatur
|
|
||||||
register_type: read
|
|
||||||
address: 1000
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
##### Boiler 1 #####
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Boiler 1 Temperatur oben"
|
|
||||||
id: Boiler_1_Temperatur_oben
|
|
||||||
register_type: read
|
|
||||||
address: 1630
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Boiler 1 Pumpe Ansteuerung"
|
|
||||||
id: Boiler_1_Pumpe_Ansteuerung
|
|
||||||
register_type: read
|
|
||||||
address: 1632
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
##### Puffer 1 #####
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Puffer 1 Temperatur oben"
|
|
||||||
id: Puffer_1_Temperatur_oben
|
|
||||||
register_type: read
|
|
||||||
address: 2000
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Puffer 1 Temperatur mitte"
|
|
||||||
id: Puffer_1_Temperatur_mitte
|
|
||||||
register_type: read
|
|
||||||
address: 2001
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Puffer 1 Temperatur unten"
|
|
||||||
id: Puffer_1_Temperatur_unten
|
|
||||||
register_type: read
|
|
||||||
address: 2002
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Puffer 1 Ladezustand"
|
|
||||||
id: Puffer_1_Ladezustand
|
|
||||||
register_type: read
|
|
||||||
address: 2006
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Puffer 1 Pufferpumpen Ansteuerung"
|
|
||||||
id: Puffer_1_Pufferpumpen_Ansteuerung
|
|
||||||
register_type: read
|
|
||||||
address: 2003
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
##### Austragung #####
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Fuellstand im Pelletsbehaelter"
|
|
||||||
id: Fuellstand_im_Pelletsbehaelter
|
|
||||||
register_type: read
|
|
||||||
address: 21
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.0048309178743961
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Resetierbarer kg-Zaehler"
|
|
||||||
id: Resetierbarer_kg_Zaehler
|
|
||||||
register_type: read
|
|
||||||
address: 81
|
|
||||||
unit_of_measurement: "kg"
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Resetierbarer t-Zaehler"
|
|
||||||
id: Resetierbarer_t_Zaehler
|
|
||||||
register_type: read
|
|
||||||
address: 82
|
|
||||||
unit_of_measurement: "t"
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Pelletverbrauch Gesamt"
|
|
||||||
id: Pelletverbrauch_Gesamt
|
|
||||||
register_type: read
|
|
||||||
address: 83
|
|
||||||
unit_of_measurement: "t"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.1
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Pelletlager Restbestand"
|
|
||||||
id: Pelletlager_Restbestand
|
|
||||||
register_type: holding
|
|
||||||
address: 319
|
|
||||||
unit_of_measurement: "t"
|
|
||||||
accuracy_decimals: 1
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.1
|
|
||||||
|
|
||||||
# #### Zirkulations Pumpe #####
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Ruecklauftemperatur an der Zirkulations Leitung"
|
|
||||||
id: Ruecklauftemperatur_an_der_Zirkulations_Leitung
|
|
||||||
register_type: read
|
|
||||||
address: 711
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
filters:
|
|
||||||
- multiply: 0.5
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Strömungsschalter an der Brauchwasser Leitung"
|
|
||||||
id: Stoemungsschalter_an_der_Brauchwasser_Leitung
|
|
||||||
register_type: read
|
|
||||||
address: 600
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Drehzahl der Zirkulations Pumpe"
|
|
||||||
id: Drehzahl_der_Zirkulations_Pumpe
|
|
||||||
register_type: read
|
|
||||||
address: 710
|
|
||||||
unit_of_measurement: "%"
|
|
||||||
value_type: U_WORD
|
|
||||||
|
|
||||||
binary_sensor:
|
|
||||||
- platform: template
|
|
||||||
name: "Puffer 1 Pufferpumpen Ansteuerung AN AUS"
|
|
||||||
id: "Puffer_1_Pufferpumpen_Ansteuerung_AN_AUS"
|
|
||||||
lambda: |-
|
|
||||||
if (id(Puffer_1_Pufferpumpen_Ansteuerung).state > 0) {
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
- platform: template
|
|
||||||
name: "Kesselzustand Heizen"
|
|
||||||
id: "Kesselzustand_Heizen"
|
|
||||||
lambda: |-
|
|
||||||
if (id(Kesselzustand).state == "Heizen") {
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "HK1 - Pumpe AN AUS"
|
|
||||||
id: HK1_Pumpe_AN_AUS
|
|
||||||
register_type: coil
|
|
||||||
address: 999
|
|
||||||
|
|
||||||
number:
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Bei welcher RL Temperatur an der Zirkulationsleitung soll die Pumpe ausschalten"
|
|
||||||
id: Bei_welcher_RL_Temperatur_an_der_Zirkulationsleitung_soll_die_Pumpe_ausschalten
|
|
||||||
address: 600
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
multiply: 2
|
|
||||||
min_value: 20
|
|
||||||
max_value: 120
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Kessel-Solltemperatur"
|
|
||||||
id: Kessel_Solltemperatur
|
|
||||||
address: 0
|
|
||||||
unit_of_measurement: "°C"
|
|
||||||
value_type: U_WORD
|
|
||||||
multiply: 2
|
|
||||||
min_value: 70
|
|
||||||
max_value: 90
|
|
||||||
|
|
||||||
text_sensor:
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Anlagenzustand"
|
|
||||||
id: Anlagenzustand
|
|
||||||
register_type: read
|
|
||||||
address: 4000
|
|
||||||
raw_encode: HEXBYTES
|
|
||||||
lambda: |-
|
|
||||||
uint16_t value = modbus_controller::word_from_hex_str(x, 0);
|
|
||||||
switch (value) {
|
|
||||||
case 0: return std::string("Dauerlast");
|
|
||||||
case 1: return std::string("Brauchwasser");
|
|
||||||
case 2: return std::string("Automatik");
|
|
||||||
case 3: return std::string("Scheitholzbetrieb");
|
|
||||||
case 4: return std::string("Reinigen");
|
|
||||||
case 5: return std::string("Ausgeschaltet");
|
|
||||||
case 6: return std::string("Extraheizen");
|
|
||||||
case 7: return std::string("Kaminkehrer");
|
|
||||||
case 8: return std::string("Reinigen");
|
|
||||||
default: return std::string("----");
|
|
||||||
}
|
|
||||||
return x;
|
|
||||||
|
|
||||||
- platform: modbus_controller
|
|
||||||
modbus_controller_id: ${modbus_controller_id}
|
|
||||||
name: "Kesselzustand"
|
|
||||||
id: Kesselzustand
|
|
||||||
register_type: read
|
|
||||||
address: 4001
|
|
||||||
raw_encode: HEXBYTES
|
|
||||||
lambda: |-
|
|
||||||
uint16_t value = modbus_controller::word_from_hex_str(x, 0);
|
|
||||||
switch (value) {
|
|
||||||
case 0: return std::string("STÖRUNG");
|
|
||||||
case 1: return std::string("Kessel Aus");
|
|
||||||
case 2: return std::string("Anheizen");
|
|
||||||
case 3: return std::string("Heizen");
|
|
||||||
case 4: return std::string("Feuererhaltung");
|
|
||||||
case 5: return std::string("Feuer Aus");
|
|
||||||
case 6: return std::string("Tür offen");
|
|
||||||
case 7: return std::string("Vorbereitung");
|
|
||||||
case 8: return std::string("Vorwärmen");
|
|
||||||
case 9: return std::string("Zünden");
|
|
||||||
case 10: return std::string("Abstellen Warten");
|
|
||||||
case 11: return std::string("Abstellen Warten1");
|
|
||||||
case 12: return std::string("Abstellen Einschub1");
|
|
||||||
case 13: return std::string("Abstellen Warten2");
|
|
||||||
case 14: return std::string("Abstellen Einschub2");
|
|
||||||
case 15: return std::string("Abreinigen");
|
|
||||||
case 16: return std::string("2h warten");
|
|
||||||
case 17: return std::string("Saugen / Heizen");
|
|
||||||
case 18: return std::string("Fehlzündung");
|
|
||||||
case 19: return std::string("Betriebsbereit");
|
|
||||||
case 20: return std::string("Rost schließen");
|
|
||||||
case 21: return std::string("Stoker leeren");
|
|
||||||
case 22: return std::string("Vorheizen");
|
|
||||||
case 23: return std::string("Saugen");
|
|
||||||
case 24: return std::string("RSE schließen");
|
|
||||||
case 25: return std::string("RSE öffnen");
|
|
||||||
case 26: return std::string("Rost kippen");
|
|
||||||
case 27: return std::string("Vorwärmen-Zünden");
|
|
||||||
case 28: return std::string("Resteinschub");
|
|
||||||
case 29: return std::string("Stoker auffüllen");
|
|
||||||
case 30: return std::string("Lambdasonde aufheizen");
|
|
||||||
case 31: return std::string("Gebläsenachlauf I");
|
|
||||||
case 32: return std::string("Gebläsenachlauf II");
|
|
||||||
case 33: return std::string("Abgestellt");
|
|
||||||
case 34: return std::string("Nachzünden");
|
|
||||||
case 35: return std::string("Zünden Warten");
|
|
||||||
case 36: return std::string("FB: RSE schließen");
|
|
||||||
case 37: return std::string("FB: Kessel belüften");
|
|
||||||
case 38: return std::string("FB: Zünden");
|
|
||||||
case 39: return std::string("FB: min. Einschub");
|
|
||||||
case 40: return std::string("RSE schließen");
|
|
||||||
case 41: return std::string("STÖRUNG: STB/NA");
|
|
||||||
case 42: return std::string("STÖRUNG: Kipprost");
|
|
||||||
case 43: return std::string("STÖRUNG: FR-Überdr.");
|
|
||||||
case 44: return std::string("STÖRUNG: Türkont.");
|
|
||||||
case 45: return std::string("STÖRUNG: Saugzug");
|
|
||||||
case 46: return std::string("STÖRUNG: Umfeld");
|
|
||||||
case 47: return std::string("FEHLER: STB/NA");
|
|
||||||
case 48: return std::string("FEHLER: Kipprost");
|
|
||||||
case 49: return std::string("FEHLER: FR-Überdr.");
|
|
||||||
case 50: return std::string("FEHLER: Türkont.");
|
|
||||||
case 51: return std::string("FEHLER: Saugzug");
|
|
||||||
case 52: return std::string("FEHLER: Umfeld");
|
|
||||||
case 53: return std::string("FEHLER: Stoker");
|
|
||||||
case 54: return std::string("STÖRUNG: Stoker");
|
|
||||||
case 55: return std::string("FB: Stoker leeren");
|
|
||||||
case 56: return std::string("Vorbelüften");
|
|
||||||
case 57: return std::string("STÖRUNG: Hackgut");
|
|
||||||
case 58: return std::string("FEHLER: Hackgut");
|
|
||||||
case 59: return std::string("NB: Tür offen");
|
|
||||||
case 60: return std::string("NB: Anheizen");
|
|
||||||
case 61: return std::string("NB: Heizen");
|
|
||||||
case 62: return std::string("FEHLER: STB/NA");
|
|
||||||
case 63: return std::string("FEHLER: Allgemein");
|
|
||||||
case 64: return std::string("NB: Feuer Aus");
|
|
||||||
case 65: return std::string("Selbsttest aktiv");
|
|
||||||
case 66: return std::string("Fehlerbeh. 20min");
|
|
||||||
case 67: return std::string("FEHLER: Fallschacht");
|
|
||||||
case 68: return std::string("STÖRUNG: Fallschacht");
|
|
||||||
case 69: return std::string("Reinigen möglich");
|
|
||||||
case 70: return std::string("Heizen - Reinigen");
|
|
||||||
case 71: return std::string("SH Anheizen");
|
|
||||||
case 72: return std::string("SH Heizen");
|
|
||||||
case 73: return std::string("SH Heiz/Abstell");
|
|
||||||
case 74: return std::string("STÖRUNG sicher");
|
|
||||||
case 75: return std::string("AGR Nachlauf");
|
|
||||||
case 76: return std::string("AGR reinigen");
|
|
||||||
case 77: return std::string("Zündung AUS");
|
|
||||||
case 78: return std::string("Filter reinigen");
|
|
||||||
case 79: return std::string("Anheizassistent");
|
|
||||||
case 80: return std::string("SH Zünden");
|
|
||||||
case 81: return std::string("SH Störung");
|
|
||||||
case 82: return std::string("Sensorcheck");
|
|
||||||
default: return std::string("----");
|
|
||||||
}
|
|
||||||
return x;
|
|
||||||
@@ -1,46 +1,157 @@
|
|||||||
type: custom:floorplan-card
|
views:
|
||||||
full_height: false
|
- title: Kessel
|
||||||
config:
|
badges: []
|
||||||
image: /local/froeling/froeling_kessel.svg
|
cards:
|
||||||
cache: false
|
- type: horizontal-stack
|
||||||
stylesheet: /local/froeling/home.css
|
cards:
|
||||||
console_log_level: debug
|
- type: custom:floorplan-card
|
||||||
defaults:
|
full_height: false
|
||||||
hover_action: hover-info
|
config:
|
||||||
tap_action: more-info
|
image: /local/froeling/froeling_kessel.svg
|
||||||
rules:
|
cache: false
|
||||||
- entities:
|
stylesheet: /local/froeling/home.css
|
||||||
- sensor.froeling_abgastemperatur
|
defaults:
|
||||||
- sensor.froeling_kesseltemperatur
|
hover_action: hover-info
|
||||||
- sensor.froeling_restsauerstoffgehalt
|
tap_action: more-info
|
||||||
- sensor.froeling_puffer_1_pufferpumpen_ansteuerung
|
rules:
|
||||||
- sensor.froeling_saugzug_ansteuerung
|
- entities:
|
||||||
- sensor.froeling_fuellstand_im_pelletsbehaelter
|
- sensor.froeling_abgastemperatur
|
||||||
- >-
|
- sensor.froeling_kesseltemperatur
|
||||||
sensor.froeling_verbleibende_heizstunden_bis_zur_asche_entleeren_warnung
|
tap_action: false
|
||||||
tap_action: false
|
state_action:
|
||||||
state_action:
|
action: call-service
|
||||||
action: call-service
|
service: floorplan.text_set
|
||||||
service: floorplan.text_set
|
service_data: ${entity.state + "°C"}
|
||||||
service_data: ${entity.state}
|
- entities:
|
||||||
- entities:
|
- sensor.froeling_restsauerstoffgehalt
|
||||||
- binary_sensor.froeling_kesselzustand_heizen
|
- sensor.froeling_puffer_1_pufferpumpen_ansteuerung
|
||||||
tap_action: false
|
- sensor.froeling_saugzug_ansteuerung
|
||||||
state_action:
|
- sensor.froeling_fuellstand_im_pelletsbehaelter
|
||||||
action: call-service
|
tap_action: false
|
||||||
service: floorplan.class_set
|
state_action:
|
||||||
service_data:
|
action: call-service
|
||||||
class: >-
|
service: floorplan.text_set
|
||||||
${(entity.state == "on") ? "binary-sensor-kesselzustand-heizen-an" :
|
service_data: ${entity.state + "%"}
|
||||||
"binary-sensor-kesselzustand-heizen-aus"}
|
- entities:
|
||||||
- entities:
|
- >-
|
||||||
- binary_sensor.froeling_puffer_1_pufferpumpen_ansteuerung_an_aus
|
sensor.froeling_verbleibende_heizstunden_bis_zur_asche_entleeren_warnung
|
||||||
tap_action: false
|
tap_action: false
|
||||||
state_action:
|
state_action:
|
||||||
action: call-service
|
action: call-service
|
||||||
service: floorplan.class_set
|
service: floorplan.text_set
|
||||||
service_data:
|
service_data: ${entity.state + "h"}
|
||||||
class: >-
|
- entities:
|
||||||
${(entity.state == "on") ?
|
- sensor.froeling_kesselzustand
|
||||||
"binary-sensor-puffer-1-pufferpumpen-ansteuerung-an" :
|
tap_action: false
|
||||||
"binary-sensor-puffer-1-pufferpumpen-ansteuerung-aus"}
|
state_action:
|
||||||
|
action: call-service
|
||||||
|
service: floorplan.class_set
|
||||||
|
service_data:
|
||||||
|
class: '${(entity.state == "Heizen") ? "fill-red" : "fill-grey"}'
|
||||||
|
- entities:
|
||||||
|
- >-
|
||||||
|
binary_sensor.froeling_puffer_1_pufferpumpen_ansteuerung_an_aus
|
||||||
|
tap_action: false
|
||||||
|
state_action:
|
||||||
|
action: call-service
|
||||||
|
service: floorplan.class_set
|
||||||
|
service_data:
|
||||||
|
class: '${(entity.state == "on") ? "fill-green" : "fill-grey"}'
|
||||||
|
- type: entities
|
||||||
|
entities:
|
||||||
|
- entity: sensor.froeling_kesseltemperatur
|
||||||
|
name: Kesseltemperatur
|
||||||
|
- entity: sensor.froeling_abgastemperatur
|
||||||
|
name: Abgastemperatur
|
||||||
|
- entity: >-
|
||||||
|
sensor.froeling_verbleibende_heizstunden_bis_zur_asche_entleeren_warnung
|
||||||
|
name: Verbleibende Heizstunden bis zur Asche entleeren Warnung
|
||||||
|
- entity: sensor.froeling_saugzug_ansteuerung
|
||||||
|
name: Saugzug - Ansteuerung
|
||||||
|
- entity: sensor.froeling_restsauerstoffgehalt
|
||||||
|
name: Restsauerstoffgehalt
|
||||||
|
- entity: sensor.froeling_primarluft
|
||||||
|
name: Primärluft
|
||||||
|
- entity: sensor.froeling_sekundarluft
|
||||||
|
name: Sekundärluft
|
||||||
|
- entity: sensor.froeling_rucklauffuhler
|
||||||
|
name: Rücklauffühler
|
||||||
|
title: Zustand
|
||||||
|
- type: entities
|
||||||
|
entities:
|
||||||
|
- entity: number.froeling_kessel_solltemperatur
|
||||||
|
name: Kessel-Solltemperatur
|
||||||
|
title: Einstellungen
|
||||||
|
- title: Heizkörper
|
||||||
|
path: heizkorper
|
||||||
|
badges: []
|
||||||
|
cards:
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:floorplan-card
|
||||||
|
full_height: false
|
||||||
|
config:
|
||||||
|
image: /local/froeling/froeling_heizkoerper.svg
|
||||||
|
cache: false
|
||||||
|
stylesheet: /local/froeling/home.css
|
||||||
|
log_level: info
|
||||||
|
console_log_level: debug
|
||||||
|
defaults:
|
||||||
|
hover_action: hover-info
|
||||||
|
tap_action: more-info
|
||||||
|
rules:
|
||||||
|
- entities:
|
||||||
|
- sensor.froeling_aussentemperatur
|
||||||
|
- sensor.froeling_hk1_vorlauf_isttemperatur
|
||||||
|
tap_action: false
|
||||||
|
state_action:
|
||||||
|
action: call-service
|
||||||
|
service: floorplan.text_set
|
||||||
|
service_data: ${entity.state + "°C"}
|
||||||
|
- entities:
|
||||||
|
- binary_sensor.froeling_hk1_pumpe_an_aus
|
||||||
|
tap_action: false
|
||||||
|
state_action:
|
||||||
|
action: call-service
|
||||||
|
service: floorplan.class_set
|
||||||
|
service_data:
|
||||||
|
class: '${(entity.state == "on") ? "fill-green" : "fill-grey"}'
|
||||||
|
- type: entities
|
||||||
|
entities:
|
||||||
|
- entity: sensor.froeling_hk1_vorlauf_isttemperatur
|
||||||
|
name: Vorlauf-Isttempratur
|
||||||
|
- entity: sensor.froeling_hk1_vorlauf_solltemperatur
|
||||||
|
name: Vorlauf-Solltemperatur
|
||||||
|
- entity: sensor.froeling_aussentemperatur
|
||||||
|
name: Außentemperatur
|
||||||
|
title: Zustand
|
||||||
|
- type: entities
|
||||||
|
entities:
|
||||||
|
- entity: >-
|
||||||
|
number.froeling_hk1_gewunschte_vorlauf_temperatur_bei_10degc_aussentemperatur
|
||||||
|
name: Gewünschte Vorlauf-temperatur bei -10°C Außentemperatur
|
||||||
|
- entity: >-
|
||||||
|
number.froeling_hk1_gewunschte_vorlauf_temperatur_bei_10degc_aussentemperatur_2
|
||||||
|
name: Gewünschte Vorlauf-temperatur bei +10°C Außentemperatur
|
||||||
|
- entity: >-
|
||||||
|
number.froeling_hk1_heizkreispumpe_ausschalten_wenn_vorlauf_soll_kleiner_ist_als
|
||||||
|
name: Heizkreispumpe ausschalten wenn Vorlauf Soll kleiner ist als
|
||||||
|
- entity: >-
|
||||||
|
number.froeling_hk1_absenkung_der_vorlauftemperatur_im_absenkbetrieb
|
||||||
|
name: Absenkung der Vorlauftemperatur im Absenkbetrieb
|
||||||
|
- entity: >-
|
||||||
|
number.froeling_hk1_aussentemperatur_unter_der_die_heizkreispumpe_im_heizbetrieb_einschaltet
|
||||||
|
name: >-
|
||||||
|
Außentemperatur, unter der die Heizkreispumpe im Heizbetrieb
|
||||||
|
einschaltet
|
||||||
|
- entity: >-
|
||||||
|
number.froeling_hk1_aussentemperatur_unter_der_die_heizkreispumpe_im_absenkbetrieb_einschaltet
|
||||||
|
name: >-
|
||||||
|
Außentemperatur, unter der die Heizkreispumpe im Absenkbetrieb
|
||||||
|
einschaltet
|
||||||
|
- entity: number.froeling_hk1_frostschutztemperatur
|
||||||
|
name: Frostschutztemperatur
|
||||||
|
- entity: >-
|
||||||
|
number.froeling_hk1_temp_am_puffer_oben_ab_der_der_uberhitzungsschutz_aktiv_wird
|
||||||
|
name: Temp. am Puffer oben ab der der Überhitzungsschutz aktiv wird
|
||||||
|
title: Einstellungen
|
||||||
@@ -23,10 +23,10 @@
|
|||||||
inkscape:deskcolor="#d1d1d1"
|
inkscape:deskcolor="#d1d1d1"
|
||||||
inkscape:zoom="1.1351589"
|
inkscape:zoom="1.1351589"
|
||||||
inkscape:cx="218.91208"
|
inkscape:cx="218.91208"
|
||||||
inkscape:cy="222.87628"
|
inkscape:cy="222.87629"
|
||||||
inkscape:window-width="958"
|
inkscape:window-width="958"
|
||||||
inkscape:window-height="1128"
|
inkscape:window-height="1128"
|
||||||
inkscape:window-x="953"
|
inkscape:window-x="946"
|
||||||
inkscape:window-y="0"
|
inkscape:window-y="0"
|
||||||
inkscape:window-maximized="0"
|
inkscape:window-maximized="0"
|
||||||
inkscape:current-layer="Ebene_1" /> <defs
|
inkscape:current-layer="Ebene_1" /> <defs
|
||||||
@@ -63,8 +63,9 @@
|
|||||||
id="path5" /> <path
|
id="path5" /> <path
|
||||||
d="M252.9,209.1l-3.4,35.2c-0.5,5.3-8.8,4.6-8.3-0.7l3.4-35.2C245.1,203,253.4,203.8,252.9,209.1z"
|
d="M252.9,209.1l-3.4,35.2c-0.5,5.3-8.8,4.6-8.3-0.7l3.4-35.2C245.1,203,253.4,203.8,252.9,209.1z"
|
||||||
id="path6" /> </g> <g
|
id="path6" /> </g> <g
|
||||||
id="sensor.froeling_hk1_pumpe_an_aus"
|
id="binary_sensor.froeling_hk1_pumpe_an_aus"
|
||||||
class="stPumpActive"><title
|
class="stPumpActive"
|
||||||
|
inkscape:label="binary_sensor.froeling_hk1_pumpe_an_aus"><title
|
||||||
id="title6">Heizkreispumpe</title> <path
|
id="title6">Heizkreispumpe</title> <path
|
||||||
d="M71.1,212.4c0-1.9,1.5-3.4,3.4-3.4c1.9,0,3.4,1.5,3.4,3.4c0,1.9-1.5,3.4-3.4,3.4 C72.7,215.8,71.1,214.3,71.1,212.4z"
|
d="M71.1,212.4c0-1.9,1.5-3.4,3.4-3.4c1.9,0,3.4,1.5,3.4,3.4c0,1.9-1.5,3.4-3.4,3.4 C72.7,215.8,71.1,214.3,71.1,212.4z"
|
||||||
id="path7" /> <path
|
id="path7" /> <path
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
@@ -27,7 +27,7 @@
|
|||||||
inkscape:cy="169.13932"
|
inkscape:cy="169.13932"
|
||||||
inkscape:window-width="958"
|
inkscape:window-width="958"
|
||||||
inkscape:window-height="1128"
|
inkscape:window-height="1128"
|
||||||
inkscape:window-x="953"
|
inkscape:window-x="946"
|
||||||
inkscape:window-y="0"
|
inkscape:window-y="0"
|
||||||
inkscape:window-maximized="0"
|
inkscape:window-maximized="0"
|
||||||
inkscape:current-layer="Ebene_1" /> <defs
|
inkscape:current-layer="Ebene_1" /> <defs
|
||||||
@@ -2589,7 +2589,8 @@
|
|||||||
r="0.8"
|
r="0.8"
|
||||||
id="circle508" /> </g> </g> </g> <g
|
id="circle508" /> </g> </g> </g> <g
|
||||||
id="binary_sensor.froeling_puffer_1_pufferpumpen_ansteuerung_an_aus"
|
id="binary_sensor.froeling_puffer_1_pufferpumpen_ansteuerung_an_aus"
|
||||||
class="stPumpInActive"><title
|
class="stPumpInActive"
|
||||||
|
inkscape:label="binary_sensor.froeling_puffer_1_pufferpumpen_ansteuerung_an_aus"><title
|
||||||
id="title508">Aktueller Status der Pufferpumpe</title> <path
|
id="title508">Aktueller Status der Pufferpumpe</title> <path
|
||||||
d="M293.6,184.5c0-1.8-1.5-3.3-3.3-3.3c-1.8,0-3.3,1.5-3.3,3.3c0,1.8,1.5,3.3,3.3,3.3 C292.1,187.8,293.6,186.3,293.6,184.5z"
|
d="M293.6,184.5c0-1.8-1.5-3.3-3.3-3.3c-1.8,0-3.3,1.5-3.3,3.3c0,1.8,1.5,3.3,3.3,3.3 C292.1,187.8,293.6,186.3,293.6,184.5z"
|
||||||
id="path508" /> <path
|
id="path508" /> <path
|
||||||
@@ -2605,8 +2606,9 @@
|
|||||||
id="path513" /> <path
|
id="path513" /> <path
|
||||||
d="M299.9,184.5c0-5.4-4.3-9.7-9.6-9.7c-5.3,0-9.6,4.3-9.6,9.7c0,5.4,4.3,9.7,9.6,9.7 C295.6,194.2,299.9,189.9,299.9,184.5z M283.1,184.5c0-4,3.2-7.2,7.2-7.2c4,0,7.2,3.2,7.2,7.2c0,4-3.2,7.2-7.2,7.2 C286.3,191.7,283.1,188.5,283.1,184.5z"
|
d="M299.9,184.5c0-5.4-4.3-9.7-9.6-9.7c-5.3,0-9.6,4.3-9.6,9.7c0,5.4,4.3,9.7,9.6,9.7 C295.6,194.2,299.9,189.9,299.9,184.5z M283.1,184.5c0-4,3.2-7.2,7.2-7.2c4,0,7.2,3.2,7.2,7.2c0,4-3.2,7.2-7.2,7.2 C286.3,191.7,283.1,188.5,283.1,184.5z"
|
||||||
id="path514" /> </g> <g
|
id="path514" /> </g> <g
|
||||||
id="binary_sensor.froeling_kesselzustand_heizen"
|
id="sensor.froeling_kesselzustand"
|
||||||
class="stHeatingOff"><title
|
class="stHeatingOff"
|
||||||
|
inkscape:label="sensor.froeling_kesselzustand"><title
|
||||||
id="title514">Betriebszustand</title> <path
|
id="title514">Betriebszustand</title> <path
|
||||||
d="M143.6,171.7c0.4,4.9,3.7,11.8,12.3,10c-3.6-1-6.5-4.3-7.7-10.4c0.8,0.2,1.9,0.9,2.3,1.1 c-0.2-0.9,0.1-3.4,1.4-6.4c1.5,7.7,2.6,9,4.1,9.3c-1.4-3.7-1.3-6.9-0.1-9.4c0.6,2.4,1.8,4.2,2.9,5.4c1.8-2.2,2.6-5.1,1.8-11.4 c4,5.3,3.7,8.6,2.4,10.6c1.1-0.3,2.7-1.8,3.8-4.4c1,1.2,0.8,3.4-0.1,5.9c0.6-0.2,1.6-0.6,2.2-1.1c-1,7.3-5.2,8.2-9.2,10.4 c5.7,2.3,15.1-1.1,16.2-8.8c0.3-1.3-0.1-3.2-0.4-4.7c-0.6,1-0.9,2.3-1.8,2.8c-0.2-1.4,0.2-2.6,0.8-3.8c1.1-4.3,0.4-7.9-1.9-10.7 c-0.4,2.1-0.9,3.9-1.9,4.4c-1.1-6.5-3.1-11-5.5-12.2c0.2,1.9,0.1,3.5-0.6,4.9c-2-7.2-5.5-6.7-6.5-13.2c-1,0.7-1.2,2.3-1.4,3.7 c0,2.9,0.2,5.7-1,7.1c-1.1-2.1-2.1-3.8-3.9-4c1.3,2.7,0.8,7.4-1.1,12.5c-0.7-1.3-1.9-3.9-3.6-4.3c0.4,3.4-0.1,7.3-0.9,10.9 c-0.5-0.8-1.5-1.7-2.6-2.3C144.8,166.8,143.1,168.2,143.6,171.7z M159.2,149.8c0.2,2.7,0,5.5-0.8,6.9 C158.3,154.1,158,152.6,159.2,149.8z"
|
d="M143.6,171.7c0.4,4.9,3.7,11.8,12.3,10c-3.6-1-6.5-4.3-7.7-10.4c0.8,0.2,1.9,0.9,2.3,1.1 c-0.2-0.9,0.1-3.4,1.4-6.4c1.5,7.7,2.6,9,4.1,9.3c-1.4-3.7-1.3-6.9-0.1-9.4c0.6,2.4,1.8,4.2,2.9,5.4c1.8-2.2,2.6-5.1,1.8-11.4 c4,5.3,3.7,8.6,2.4,10.6c1.1-0.3,2.7-1.8,3.8-4.4c1,1.2,0.8,3.4-0.1,5.9c0.6-0.2,1.6-0.6,2.2-1.1c-1,7.3-5.2,8.2-9.2,10.4 c5.7,2.3,15.1-1.1,16.2-8.8c0.3-1.3-0.1-3.2-0.4-4.7c-0.6,1-0.9,2.3-1.8,2.8c-0.2-1.4,0.2-2.6,0.8-3.8c1.1-4.3,0.4-7.9-1.9-10.7 c-0.4,2.1-0.9,3.9-1.9,4.4c-1.1-6.5-3.1-11-5.5-12.2c0.2,1.9,0.1,3.5-0.6,4.9c-2-7.2-5.5-6.7-6.5-13.2c-1,0.7-1.2,2.3-1.4,3.7 c0,2.9,0.2,5.7-1,7.1c-1.1-2.1-2.1-3.8-3.9-4c1.3,2.7,0.8,7.4-1.1,12.5c-0.7-1.3-1.9-3.9-3.6-4.3c0.4,3.4-0.1,7.3-0.9,10.9 c-0.5-0.8-1.5-1.7-2.6-2.3C144.8,166.8,143.1,168.2,143.6,171.7z M159.2,149.8c0.2,2.7,0,5.5-0.8,6.9 C158.3,154.1,158,152.6,159.2,149.8z"
|
||||||
id="path515" /> </g> <g
|
id="path515" /> </g> <g
|
||||||
@@ -2635,7 +2637,8 @@
|
|||||||
id="polyline519" /> </g> </g> </g> <text
|
id="polyline519" /> </g> </g> </g> <text
|
||||||
id="sensor.froeling_verbleibende_heizstunden_bis_zur_asche_entleeren_warnung"
|
id="sensor.froeling_verbleibende_heizstunden_bis_zur_asche_entleeren_warnung"
|
||||||
transform="matrix(1 0 0 1 80 231.4438)"
|
transform="matrix(1 0 0 1 80 231.4438)"
|
||||||
class="st9 st10 st11">17h</text> <g
|
class="st9 st10 st11"
|
||||||
|
inkscape:label="sensor.froeling_verbleibende_heizstunden_bis_zur_asche_entleeren_warnung">17h</text> <g
|
||||||
id="label_fuel-level"><title
|
id="label_fuel-level"><title
|
||||||
id="title519">Restbestand im Brennstofflagerraum</title> <path
|
id="title519">Restbestand im Brennstofflagerraum</title> <path
|
||||||
id="frame_1_"
|
id="frame_1_"
|
||||||
@@ -2660,7 +2663,8 @@
|
|||||||
id="path522" /> </g> </g> </g> <text
|
id="path522" /> </g> </g> </g> <text
|
||||||
id="sensor.froeling_fuellstand_im_pelletsbehaelter"
|
id="sensor.froeling_fuellstand_im_pelletsbehaelter"
|
||||||
transform="matrix(1 0 0 1 80 47.6704)"
|
transform="matrix(1 0 0 1 80 47.6704)"
|
||||||
class="st9 st10 st11">32%</text> <g
|
class="st9 st10 st11"
|
||||||
|
inkscape:label="sensor.froeling_fuellstand_im_pelletsbehaelter">32%</text> <g
|
||||||
id="Saugzug_Ansteuerung"><title
|
id="Saugzug_Ansteuerung"><title
|
||||||
id="title522">Drehzahl des Saugzuggebläses</title> <path
|
id="title522">Drehzahl des Saugzuggebläses</title> <path
|
||||||
id="frame_2_"
|
id="frame_2_"
|
||||||
@@ -2745,7 +2749,8 @@
|
|||||||
id="rect530" /> </g> </g> </g> <text
|
id="rect530" /> </g> </g> </g> <text
|
||||||
id="sensor.froeling_abgastemperatur"
|
id="sensor.froeling_abgastemperatur"
|
||||||
transform="matrix(1 0 0 1 207.5 47.2747)"
|
transform="matrix(1 0 0 1 207.5 47.2747)"
|
||||||
class="st9 st10 st11">57°C</text> <g
|
class="st9 st10 st11"
|
||||||
|
inkscape:label="sensor.froeling_abgastemperatur">57°C</text> <g
|
||||||
id="label_lambda"><title
|
id="label_lambda"><title
|
||||||
id="title530">Restsauerstoffgehalt</title> <path
|
id="title530">Restsauerstoffgehalt</title> <path
|
||||||
id="frame_3_"
|
id="frame_3_"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
@@ -59,25 +59,21 @@ g.floorplan-long-click > :not(text):hover,
|
|||||||
transition: fill 5s ease;
|
transition: fill 5s ease;
|
||||||
}
|
}
|
||||||
|
|
||||||
.binary-sensor-kesselzustand-heizen-an {
|
.fill-red {
|
||||||
fill: #ff0000 !important;
|
fill: #ff0000 !important;
|
||||||
fill-opacity: 1 !important;
|
fill-opacity: 1 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.binary-sensor-kesselzustand-heizen-aus {
|
.fill-grey {
|
||||||
fill: #9e9e9e !important;
|
fill: #9e9e9e !important;
|
||||||
transition: fill 5s ease;
|
transition: fill 5s ease;
|
||||||
}
|
}
|
||||||
|
|
||||||
.binary-sensor-puffer-1-pufferpumpen-ansteuerung-an {
|
.fill-green {
|
||||||
fill: #00c800 !important;
|
fill: #00c800 !important;
|
||||||
fill-opacity: 1 !important;
|
fill-opacity: 1 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.binary-sensor-puffer-1-pufferpumpen-ansteuerung-aus {
|
|
||||||
fill: #9e9e9e !important;
|
|
||||||
transition: fill 5s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* Buttons */
|
/* Buttons */
|
||||||
|
|||||||
Reference in New Issue
Block a user