khenderick / esphome-opentherm

OpenTherm support for ESPHome
MIT License
14 stars 4 forks source link

add enable OTC #9

Closed ananyevgv closed 11 months ago

ananyevgv commented 1 year ago

MessageID::Status enableOutsideTemperatureCompensation << 3

ananyevgv commented 11 months ago

HB: Slave configuration flag8 bit: description [ clear/0, set/1] 0: DHW present [ dhw not present, dhw is present ] 1: Control type [ modulating, on/off ] 2: Cooling config [ cooling not supported, cooling supported] 3: DHW config [instantaneous or not-specified, storage tank] 4: Master low-off&pump control function [allowed, not allowed] 5: CH2 present [CH2 not present, CH2 present]

ananyevgv commented 11 months ago

image

khenderick commented 11 months ago

MessageID::Status enableOutsideTemperatureCompensation << 3

Implementation on its way :+1:

HB: Slave configuration flag8 bit

Would this make sense if implemented using binary sensors? Especially DHW config is a tricky one, since I'd have to name this differently like dhw_storage_tank so true means that there is a storage tank and false means it's instantaneous or not-specified.

(screenshot)

Implementation on its way :+1:

khenderick commented 11 months ago

I've pushed a branch with the new sensors. Can you give them a try and keep me posted if they work as expected?

...

external_components:
  source: github://khenderick/esphome-opentherm@extra
  components: [opentherm]
  refresh: 0s

...

sensor:
  - platform: opentherm
    ...
    dhw_2_temperature:
      name: "DHW 2 temperature"
    exhaust_temperature:
      name: "exhaust temperature"
    burner_starts:
      name: "burner starts"
    burner_ops_hours:
      name: "burner operation hours"
    ch_pump_starts:
      name: "CH pump starts"
    ch_pump_ops_hours:
      name: "CH pump operation hours"
    dhw_pump_valve_starts:
      name: "DHW pump/valve starts"
    dhw_pump_valve_ops_hours:
      name: "DHW pump/valve operation hours"
    dhw_burner_starts:
      name: "DHW burner starts"
    dhw_burner_ops_hours:
      name: "DHW burner operation hours"
    ...

...

switch:
  - platform: opentherm
    ...
    otc_active:
      name: "OTC active"
    ...

...
ananyevgv commented 11 months ago

I will try to try as soon as possible, could you add output (for PID ESPHOME), unfortunately I can't add it.

khenderick commented 11 months ago

If another component controls outputs, you can use a Template Output and use that to translate writes to that output into calls to the OpenTherm component.

ananyevgv commented 11 months ago

works otc_active.

unfortunately my boiler does not support: dhw_2_temperature: name: "DHW 2 temperature" exhaust_temperature: name: "exhaust temperature" burner_starts: name: "burner starts" burner_ops_hours: name: "burner operation hours" ch_pump_starts: name: "CH pump starts" ch_pump_ops_hours: name: "CH pump operation hours" dhw_pump_valve_starts: name: "DHW pump/valve starts" dhw_pump_valve_ops_hours: name: "DHW pump/valve operation hours" dhw_burner_starts: name: "DHW burner starts" dhw_burner_ops_hours: name: "DHW burner operation hours"

khenderick commented 11 months ago

Thanks for the update. I'll assume the other ones will work as well :+1:. I hope to implement the slave configuration bits somewhere today.

khenderick commented 11 months ago

Binary sensors to read out the slave/boiler configuration are also added and everything is merged to main. I'm going to close this ticket, as all requested sensors have been implemented.